proposition: Lemma egcdP : forall a b, bezout_spec a b (egcd a b).
proof: Proof. rewrite /egcd=> a b. case H: egcd_rec=> [x y]; constructor. by move: (@egcd_recP _ a b (leqnn _)); rewrite H. Qed.
imports: HB(structures) Coq(ssreflect ssrfun ssrbool Arith.Wf_nat) mathcomp(eqtype ssrnat div seq path) mathcomp(ssralg fintype perm tuple choice generic_quotient) mathcomp(matrix bigop zmodp mxalgebra poly) stronglydiscrete