Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  isghm Structured version   Visualization version   GIF version

Theorem isghm 17707
 Description: Property of being a homomorphism of groups. (Contributed by Stefan O'Rear, 31-Dec-2014.)
Hypotheses
Ref Expression
isghm.w 𝑋 = (Base‘𝑆)
isghm.x 𝑌 = (Base‘𝑇)
isghm.a + = (+g𝑆)
isghm.b = (+g𝑇)
Assertion
Ref Expression
isghm (𝐹 ∈ (𝑆 GrpHom 𝑇) ↔ ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) ∧ (𝐹:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹𝑢) (𝐹𝑣)))))
Distinct variable groups:   𝑣,𝑢,𝑆   𝑢,𝑇,𝑣   𝑢,𝑋,𝑣   𝑢, + ,𝑣   𝑢,𝑌,𝑣   𝑢, ,𝑣   𝑢,𝐹,𝑣

Proof of Theorem isghm
Dummy variables 𝑡 𝑠 𝑤 𝑓 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-ghm 17705 . . 3 GrpHom = (𝑠 ∈ Grp, 𝑡 ∈ Grp ↦ {𝑓[(Base‘𝑠) / 𝑤](𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢𝑤𝑣𝑤 (𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)))})
21elmpt2cl 6918 . 2 (𝐹 ∈ (𝑆 GrpHom 𝑇) → (𝑆 ∈ Grp ∧ 𝑇 ∈ Grp))
3 fvex 6239 . . . . . . . 8 (Base‘𝑠) ∈ V
4 feq2 6065 . . . . . . . . 9 (𝑤 = (Base‘𝑠) → (𝑓:𝑤⟶(Base‘𝑡) ↔ 𝑓:(Base‘𝑠)⟶(Base‘𝑡)))
5 raleq 3168 . . . . . . . . . 10 (𝑤 = (Base‘𝑠) → (∀𝑣𝑤 (𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)) ↔ ∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))))
65raleqbi1dv 3176 . . . . . . . . 9 (𝑤 = (Base‘𝑠) → (∀𝑢𝑤𝑣𝑤 (𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)) ↔ ∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))))
74, 6anbi12d 747 . . . . . . . 8 (𝑤 = (Base‘𝑠) → ((𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢𝑤𝑣𝑤 (𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))) ↔ (𝑓:(Base‘𝑠)⟶(Base‘𝑡) ∧ ∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)))))
83, 7sbcie 3503 . . . . . . 7 ([(Base‘𝑠) / 𝑤](𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢𝑤𝑣𝑤 (𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))) ↔ (𝑓:(Base‘𝑠)⟶(Base‘𝑡) ∧ ∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))))
9 fveq2 6229 . . . . . . . . . 10 (𝑠 = 𝑆 → (Base‘𝑠) = (Base‘𝑆))
10 isghm.w . . . . . . . . . 10 𝑋 = (Base‘𝑆)
119, 10syl6eqr 2703 . . . . . . . . 9 (𝑠 = 𝑆 → (Base‘𝑠) = 𝑋)
1211feq2d 6069 . . . . . . . 8 (𝑠 = 𝑆 → (𝑓:(Base‘𝑠)⟶(Base‘𝑡) ↔ 𝑓:𝑋⟶(Base‘𝑡)))
13 fveq2 6229 . . . . . . . . . . . . . 14 (𝑠 = 𝑆 → (+g𝑠) = (+g𝑆))
14 isghm.a . . . . . . . . . . . . . 14 + = (+g𝑆)
1513, 14syl6eqr 2703 . . . . . . . . . . . . 13 (𝑠 = 𝑆 → (+g𝑠) = + )
1615oveqd 6707 . . . . . . . . . . . 12 (𝑠 = 𝑆 → (𝑢(+g𝑠)𝑣) = (𝑢 + 𝑣))
1716fveq2d 6233 . . . . . . . . . . 11 (𝑠 = 𝑆 → (𝑓‘(𝑢(+g𝑠)𝑣)) = (𝑓‘(𝑢 + 𝑣)))
1817eqeq1d 2653 . . . . . . . . . 10 (𝑠 = 𝑆 → ((𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)) ↔ (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))))
1911, 18raleqbidv 3182 . . . . . . . . 9 (𝑠 = 𝑆 → (∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)) ↔ ∀𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))))
2011, 19raleqbidv 3182 . . . . . . . 8 (𝑠 = 𝑆 → (∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)) ↔ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))))
2112, 20anbi12d 747 . . . . . . 7 (𝑠 = 𝑆 → ((𝑓:(Base‘𝑠)⟶(Base‘𝑡) ∧ ∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))) ↔ (𝑓:𝑋⟶(Base‘𝑡) ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)))))
228, 21syl5bb 272 . . . . . 6 (𝑠 = 𝑆 → ([(Base‘𝑠) / 𝑤](𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢𝑤𝑣𝑤 (𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))) ↔ (𝑓:𝑋⟶(Base‘𝑡) ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)))))
2322abbidv 2770 . . . . 5 (𝑠 = 𝑆 → {𝑓[(Base‘𝑠) / 𝑤](𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢𝑤𝑣𝑤 (𝑓‘(𝑢(+g𝑠)𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)))} = {𝑓 ∣ (𝑓:𝑋⟶(Base‘𝑡) ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)))})
24 fveq2 6229 . . . . . . . . 9 (𝑡 = 𝑇 → (Base‘𝑡) = (Base‘𝑇))
25 isghm.x . . . . . . . . 9 𝑌 = (Base‘𝑇)
2624, 25syl6eqr 2703 . . . . . . . 8 (𝑡 = 𝑇 → (Base‘𝑡) = 𝑌)
2726feq3d 6070 . . . . . . 7 (𝑡 = 𝑇 → (𝑓:𝑋⟶(Base‘𝑡) ↔ 𝑓:𝑋𝑌))
28 fveq2 6229 . . . . . . . . . . 11 (𝑡 = 𝑇 → (+g𝑡) = (+g𝑇))
29 isghm.b . . . . . . . . . . 11 = (+g𝑇)
3028, 29syl6eqr 2703 . . . . . . . . . 10 (𝑡 = 𝑇 → (+g𝑡) = )
3130oveqd 6707 . . . . . . . . 9 (𝑡 = 𝑇 → ((𝑓𝑢)(+g𝑡)(𝑓𝑣)) = ((𝑓𝑢) (𝑓𝑣)))
3231eqeq2d 2661 . . . . . . . 8 (𝑡 = 𝑇 → ((𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)) ↔ (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣))))
33322ralbidv 3018 . . . . . . 7 (𝑡 = 𝑇 → (∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)) ↔ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣))))
3427, 33anbi12d 747 . . . . . 6 (𝑡 = 𝑇 → ((𝑓:𝑋⟶(Base‘𝑡) ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣))) ↔ (𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)))))
3534abbidv 2770 . . . . 5 (𝑡 = 𝑇 → {𝑓 ∣ (𝑓:𝑋⟶(Base‘𝑡) ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢)(+g𝑡)(𝑓𝑣)))} = {𝑓 ∣ (𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)))})
36 fvex 6239 . . . . . . . 8 (Base‘𝑆) ∈ V
3710, 36eqeltri 2726 . . . . . . 7 𝑋 ∈ V
38 fvex 6239 . . . . . . . 8 (Base‘𝑇) ∈ V
3925, 38eqeltri 2726 . . . . . . 7 𝑌 ∈ V
40 mapex 7905 . . . . . . 7 ((𝑋 ∈ V ∧ 𝑌 ∈ V) → {𝑓𝑓:𝑋𝑌} ∈ V)
4137, 39, 40mp2an 708 . . . . . 6 {𝑓𝑓:𝑋𝑌} ∈ V
42 simpl 472 . . . . . . 7 ((𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣))) → 𝑓:𝑋𝑌)
4342ss2abi 3707 . . . . . 6 {𝑓 ∣ (𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)))} ⊆ {𝑓𝑓:𝑋𝑌}
4441, 43ssexi 4836 . . . . 5 {𝑓 ∣ (𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)))} ∈ V
4523, 35, 1, 44ovmpt2 6838 . . . 4 ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) → (𝑆 GrpHom 𝑇) = {𝑓 ∣ (𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)))})
4645eleq2d 2716 . . 3 ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) → (𝐹 ∈ (𝑆 GrpHom 𝑇) ↔ 𝐹 ∈ {𝑓 ∣ (𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)))}))
47 fex 6530 . . . . . 6 ((𝐹:𝑋𝑌𝑋 ∈ V) → 𝐹 ∈ V)
4837, 47mpan2 707 . . . . 5 (𝐹:𝑋𝑌𝐹 ∈ V)
4948adantr 480 . . . 4 ((𝐹:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹𝑢) (𝐹𝑣))) → 𝐹 ∈ V)
50 feq1 6064 . . . . 5 (𝑓 = 𝐹 → (𝑓:𝑋𝑌𝐹:𝑋𝑌))
51 fveq1 6228 . . . . . . 7 (𝑓 = 𝐹 → (𝑓‘(𝑢 + 𝑣)) = (𝐹‘(𝑢 + 𝑣)))
52 fveq1 6228 . . . . . . . 8 (𝑓 = 𝐹 → (𝑓𝑢) = (𝐹𝑢))
53 fveq1 6228 . . . . . . . 8 (𝑓 = 𝐹 → (𝑓𝑣) = (𝐹𝑣))
5452, 53oveq12d 6708 . . . . . . 7 (𝑓 = 𝐹 → ((𝑓𝑢) (𝑓𝑣)) = ((𝐹𝑢) (𝐹𝑣)))
5551, 54eqeq12d 2666 . . . . . 6 (𝑓 = 𝐹 → ((𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)) ↔ (𝐹‘(𝑢 + 𝑣)) = ((𝐹𝑢) (𝐹𝑣))))
56552ralbidv 3018 . . . . 5 (𝑓 = 𝐹 → (∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)) ↔ ∀𝑢𝑋𝑣𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹𝑢) (𝐹𝑣))))
5750, 56anbi12d 747 . . . 4 (𝑓 = 𝐹 → ((𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣))) ↔ (𝐹:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹𝑢) (𝐹𝑣)))))
5849, 57elab3 3390 . . 3 (𝐹 ∈ {𝑓 ∣ (𝑓:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓𝑢) (𝑓𝑣)))} ↔ (𝐹:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹𝑢) (𝐹𝑣))))
5946, 58syl6bb 276 . 2 ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) → (𝐹 ∈ (𝑆 GrpHom 𝑇) ↔ (𝐹:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹𝑢) (𝐹𝑣)))))
602, 59biadan2 675 1 (𝐹 ∈ (𝑆 GrpHom 𝑇) ↔ ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) ∧ (𝐹:𝑋𝑌 ∧ ∀𝑢𝑋𝑣𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹𝑢) (𝐹𝑣)))))
 Colors of variables: wff setvar class Syntax hints:   ↔ wb 196   ∧ wa 383   = wceq 1523   ∈ wcel 2030  {cab 2637  ∀wral 2941  Vcvv 3231  [wsbc 3468  ⟶wf 5922  ‘cfv 5926  (class class class)co 6690  Basecbs 15904  +gcplusg 15988  Grpcgrp 17469   GrpHom cghm 17704 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-rep 4804  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991 This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ne 2824  df-ral 2946  df-rex 2947  df-reu 2948  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-op 4217  df-uni 4469  df-iun 4554  df-br 4686  df-opab 4746  df-mpt 4763  df-id 5053  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-iota 5889  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-fv 5934  df-ov 6693  df-oprab 6694  df-mpt2 6695  df-ghm 17705 This theorem is referenced by:  isghm3  17708  ghmgrp1  17709  ghmgrp2  17710  ghmf  17711  ghmlin  17712  isghmd  17716  idghm  17722  ghmf1o  17737  islmhm2  19086  expghm  19892  mulgghm2  19893  pi1xfr  22901  pi1coghm  22907  rhmopp  29947  isrnghm  42217
 Copyright terms: Public domain W3C validator