equal
deleted
inserted
replaced
232 proof - |
232 proof - |
233 interpret normal ["H" "\<lparr>carrier = carrier G, mult = add G, one = zero G\<rparr>"] |
233 interpret normal ["H" "\<lparr>carrier = carrier G, mult = add G, one = zero G\<rparr>"] |
234 by (rule a_normal) |
234 by (rule a_normal) |
235 |
235 |
236 show "abelian_subgroup H G" |
236 show "abelian_subgroup H G" |
237 by (unfold_locales, simp add: a_comm) |
237 proof qed (simp add: a_comm) |
238 qed |
238 qed |
239 |
239 |
240 lemma abelian_subgroupI2: |
240 lemma abelian_subgroupI2: |
241 fixes G (structure) |
241 fixes G (structure) |
242 assumes a_comm_group: "comm_group \<lparr>carrier = carrier G, mult = add G, one = zero G\<rparr>" |
242 assumes a_comm_group: "comm_group \<lparr>carrier = carrier G, mult = add G, one = zero G\<rparr>" |
547 done |
547 done |
548 qed |
548 qed |
549 |
549 |
550 lemma (in abelian_group_hom) is_abelian_group_hom: |
550 lemma (in abelian_group_hom) is_abelian_group_hom: |
551 "abelian_group_hom G H h" |
551 "abelian_group_hom G H h" |
552 by (unfold_locales) |
552 .. |
553 |
553 |
554 lemma (in abelian_group_hom) hom_add [simp]: |
554 lemma (in abelian_group_hom) hom_add [simp]: |
555 "[| x : carrier G; y : carrier G |] |
555 "[| x : carrier G; y : carrier G |] |
556 ==> h (x \<oplus>\<^bsub>G\<^esub> y) = h x \<oplus>\<^bsub>H\<^esub> h y" |
556 ==> h (x \<oplus>\<^bsub>G\<^esub> y) = h x \<oplus>\<^bsub>H\<^esub> h y" |
557 by (rule group_hom.hom_mult[OF a_group_hom, |
557 by (rule group_hom.hom_mult[OF a_group_hom, |