src/HOL/Groups_Big.thy
changeset 59867 58043346ca64
parent 59833 ab828c2c5d67
child 60353 838025c6e278
equal deleted inserted replaced
59866:eebe69f31474 59867:58043346ca64
  1156 lemma (in field) setprod_diff1:
  1156 lemma (in field) setprod_diff1:
  1157   "finite A \<Longrightarrow> f a \<noteq> 0 \<Longrightarrow>
  1157   "finite A \<Longrightarrow> f a \<noteq> 0 \<Longrightarrow>
  1158     (setprod f (A - {a})) = (if a \<in> A then setprod f A / f a else setprod f A)"
  1158     (setprod f (A - {a})) = (if a \<in> A then setprod f A / f a else setprod f A)"
  1159   by (induct A rule: finite_induct) (auto simp add: insert_Diff_if)
  1159   by (induct A rule: finite_induct) (auto simp add: insert_Diff_if)
  1160 
  1160 
  1161 lemma (in field_inverse_zero) setprod_inversef: 
  1161 lemma (in field) setprod_inversef: 
  1162   "finite A \<Longrightarrow> setprod (inverse \<circ> f) A = inverse (setprod f A)"
  1162   "finite A \<Longrightarrow> setprod (inverse \<circ> f) A = inverse (setprod f A)"
  1163   by (induct A rule: finite_induct) simp_all
  1163   by (induct A rule: finite_induct) simp_all
  1164 
  1164 
  1165 lemma (in field_inverse_zero) setprod_dividef:
  1165 lemma (in field) setprod_dividef:
  1166   "finite A \<Longrightarrow> (\<Prod>x\<in>A. f x / g x) = setprod f A / setprod g A"
  1166   "finite A \<Longrightarrow> (\<Prod>x\<in>A. f x / g x) = setprod f A / setprod g A"
  1167   using setprod_inversef [of A g] by (simp add: divide_inverse setprod.distrib)
  1167   using setprod_inversef [of A g] by (simp add: divide_inverse setprod.distrib)
  1168 
  1168 
  1169 lemma setprod_Un:
  1169 lemma setprod_Un:
  1170   fixes f :: "'b \<Rightarrow> 'a :: field"
  1170   fixes f :: "'b \<Rightarrow> 'a :: field"