proposition: Lemma BZpsS_gcd x y: inc x BZps -> inc y BZps -> inc (BZgcd x y) BZps.
proof: Proof. move => xs ys. move /BZps_iP: (xs) => [pa xnz]; move: (BZp_sBZ pa) => xz. move /BZps_iP: (ys) => [pb ynz]; move: (BZp_sBZ pb) => yz. have h: (x <> \0z \/ y <> \0z) by left. apply /BZps_iP; split;[ by apply: ZpS_gcd | exact (BZgcd_nz1 xz yz h)]. Qed.
imports: mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat)