proposition: Lemma freeg_eqP D1 D2 : reflect (coeff^~ D1 =1 coeff^~ D2) (D1 == D2).
proof: Proof. apply: (iffP idP) => [/eqP -> //|]. elim/quotW: D1 => D1; elim/quotW: D2 => D2. move=> eqc; rewrite eqmodE; apply/fgequivP=> k. by move: (eqc k); rewrite /coeff !piE !precoeffE. Qed.
imports: HB(structures) mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat seq choice) mathcomp(fintype bigop order generic_quotient) mathcomp(ssralg ssrnum ssrint)