fact: Definition irred n d := let gcd := NN.gcd (Zabs_N n) d in match NN.compare gcd NN.one with | Gt => (ZZ.div n (Z_of_N gcd), NN.div d gcd) | _ => (n, d) end.
imports: BigNumPrelude Lia QArith Qcanon Qpower Qminmax NSig ZSig QSig