proposition: Fact is_rel_prime_expo p q l : is_gcd p q 1 -> is_gcd p (mscal mult 1 l q) 1.
proof: Proof. intros H. induction l as [ | l IHl ]. + rewrite mscal_0; apply is_gcd_1r. + rewrite mscal_S; apply is_rel_prime_mult; auto. Qed.
imports: List Arith Lia Bool Permutation Undecidability.Shared.Libs.DLW.Utils(utils_tac utils_list utils_nat gcd sums)