src/HOL/Library/Pocklington.thy
changeset 31021 53642251a04f
parent 30738 0842e906300c
child 31197 c1c163ec6c44
equal deleted inserted replaced
31020:9999a77590c3 31021:53642251a04f
   566   from fold_image_related[where h="(\<lambda>m. a(m) mod n)" and g=a, OF th1 th3 fS, OF th4] show ?thesis unfolding setprod_def by (simp add: fS)
   566   from fold_image_related[where h="(\<lambda>m. a(m) mod n)" and g=a, OF th1 th3 fS, OF th4] show ?thesis unfolding setprod_def by (simp add: fS)
   567 qed
   567 qed
   568 
   568 
   569 lemma nproduct_cmul:
   569 lemma nproduct_cmul:
   570   assumes fS:"finite S"
   570   assumes fS:"finite S"
   571   shows "setprod (\<lambda>m. (c::'a::{comm_monoid_mult,recpower})* a(m)) S = c ^ (card S) * setprod a S"
   571   shows "setprod (\<lambda>m. (c::'a::{comm_monoid_mult})* a(m)) S = c ^ (card S) * setprod a S"
   572 unfolding setprod_timesf setprod_constant[OF fS, of c] ..
   572 unfolding setprod_timesf setprod_constant[OF fS, of c] ..
   573 
   573 
   574 lemma coprime_nproduct:
   574 lemma coprime_nproduct:
   575   assumes fS: "finite S" and Sn: "\<forall>x\<in>S. coprime n (a x)"
   575   assumes fS: "finite S" and Sn: "\<forall>x\<in>S. coprime n (a x)"
   576   shows "coprime n (setprod a S)"
   576   shows "coprime n (setprod a S)"