proposition: Lemma gcdsr_inj_dvdr : forall p q, p %| q -> gcdsr p %| gcdsr q.
proof: Proof. move=> p q; case/dvdrP=> x ->. move: (gauss_lemma x p). case/andP=> _ H. by rewrite (dvdr_trans _ H) ?dvdr_mull //. Qed.
imports: HB(structures) mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat div seq) mathcomp(path choice fintype tuple finset ssralg) mathcomp(matrix poly) mathcomp(bigop polydiv) CoqEAL(stronglydiscrete dvdring)