proposition: Lemma BZdvds_trans a b a': a %|z a'-> b %|z a -> b %|z a'.
proof: Proof. move => pa pb. rewrite (BZdvds_pr pa) {1} (BZdvds_pr pb). move: pa pb => [a'z az _] [_ bz _]. move: (ZS_quo az bz)(ZS_quo a'z az) => qa qb. rewrite - (BZprodA bz qa qb) BZprodC. by apply: (BZdvds_pr1 (ZSp qa qb) bz). Qed.
imports: mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat)