src/HOL/Algebra/Product_Groups.thy
changeset 73932 fd21b4a93043
parent 70040 6a9e2a82ea15
equal deleted inserted replaced
73866:66bff50bc5f1 73932:fd21b4a93043
   466           have "finite {i \<in> I. inv_into (carrier (G i)) (f i) (x i) \<noteq> \<one>\<^bsub>G i\<^esub>}"
   466           have "finite {i \<in> I. inv_into (carrier (G i)) (f i) (x i) \<noteq> \<one>\<^bsub>G i\<^esub>}"
   467             apply (rule finite_subset [OF _ fin])
   467             apply (rule finite_subset [OF _ fin])
   468             using G H group.subgroup_self hom_one homf injf inv_into_f_eq subgroup.one_closed by fastforce
   468             using G H group.subgroup_self hom_one homf injf inv_into_f_eq subgroup.one_closed by fastforce
   469           with x show "?g \<in> {x \<in> \<Pi>\<^sub>E i\<in>I. carrier (G i). finite {i \<in> I. x i \<noteq> \<one>\<^bsub>G i\<^esub>}}"
   469           with x show "?g \<in> {x \<in> \<Pi>\<^sub>E i\<in>I. carrier (G i). finite {i \<in> I. x i \<noteq> \<one>\<^bsub>G i\<^esub>}}"
   470             apply (auto simp: PiE_iff inv_into_into conj_commute cong: conj_cong)
   470             apply (auto simp: PiE_iff inv_into_into conj_commute cong: conj_cong)
   471             by (metis (no_types, hide_lams) iso_iff f inv_into_into)
   471             by (metis (no_types, opaque_lifting) iso_iff f inv_into_into)
   472         qed
   472         qed
   473       qed
   473       qed
   474     qed
   474     qed
   475   qed
   475   qed
   476   then show ?thesis
   476   then show ?thesis