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

Theorem isghm 19480
Description: Property of being a homomorphism of groups. (Contributed by Stefan O'Rear, 31-Dec-2014.) (Proof shortened by SN, 5-Jun-2025.)
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 19478 . . 3 GrpHom = (𝑠 ∈ Grp, 𝑡 ∈ Grp ↦ {𝑓 ∣ [(Base‘𝑠) / 𝑤](𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢 ∈ 𝑤 ∀𝑣 ∈ 𝑤 (𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)))})
21elmpocl 7694 . 2 (𝐹 ∈ (𝑆 GrpHom 𝑇) → (𝑆 ∈ Grp ∧ 𝑇 ∈ Grp))
3 fvex 6929 . . . . . . . 8 (Base‘𝑠) ∈ V
4 feq2 6718 . . . . . . . . 9 (𝑤 = (Base‘𝑠) → (𝑓:𝑤⟶(Base‘𝑡) ↔ 𝑓:(Base‘𝑠)⟶(Base‘𝑡)))
5 raleq 3320 . . . . . . . . . 10 (𝑤 = (Base‘𝑠) → (∀𝑣 ∈ 𝑤 (𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)) ↔ ∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣))))
65raleqbi1dv 3333 . . . . . . . . 9 (𝑤 = (Base‘𝑠) → (∀𝑢 ∈ 𝑤 ∀𝑣 ∈ 𝑤 (𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)) ↔ ∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣))))
74, 6anbi12d 644 . . . . . . . 8 (𝑤 = (Base‘𝑠) → ((𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢 ∈ 𝑤 ∀𝑣 ∈ 𝑤 (𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣))) ↔ (𝑓:(Base‘𝑠)⟶(Base‘𝑡) ∧ ∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)))))
83, 7sbcie 3783 . . . . . . 7 ([(Base‘𝑠) / 𝑤](𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢 ∈ 𝑤 ∀𝑣 ∈ 𝑤 (𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣))) ↔ (𝑓:(Base‘𝑠)⟶(Base‘𝑡) ∧ ∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣))))
9 fveq2 6916 . . . . . . . . . . 11 (𝑠 = 𝑆 → (Base‘𝑠) = (Base‘𝑆))
10 isghm.w . . . . . . . . . . 11 𝑋 = (Base‘𝑆)
119, 10eqtr4di 2816 . . . . . . . . . 10 (𝑠 = 𝑆 → (Base‘𝑠) = 𝑋)
1211adantr 486 . . . . . . . . 9 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (Base‘𝑠) = 𝑋)
13 fveq2 6916 . . . . . . . . . . 11 (𝑡 = 𝑇 → (Base‘𝑡) = (Base‘𝑇))
14 isghm.x . . . . . . . . . . 11 𝑌 = (Base‘𝑇)
1513, 14eqtr4di 2816 . . . . . . . . . 10 (𝑡 = 𝑇 → (Base‘𝑡) = 𝑌)
1615adantl 487 . . . . . . . . 9 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (Base‘𝑡) = 𝑌)
1712, 16feq23d 6734 . . . . . . . 8 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (𝑓:(Base‘𝑠)⟶(Base‘𝑡) ↔ 𝑓:𝑋⟶𝑌))
18 fveq2 6916 . . . . . . . . . . . . . 14 (𝑠 = 𝑆 → (+g‘𝑠) = (+g‘𝑆))
19 isghm.a . . . . . . . . . . . . . 14 + = (+g‘𝑆)
2018, 19eqtr4di 2816 . . . . . . . . . . . . 13 (𝑠 = 𝑆 → (+g‘𝑠) = + )
2120oveqd 7468 . . . . . . . . . . . 12 (𝑠 = 𝑆 → (𝑢(+g‘𝑠)𝑣) = (𝑢 + 𝑣))
2221fveq2d 6920 . . . . . . . . . . 11 (𝑠 = 𝑆 → (𝑓‘(𝑢(+g‘𝑠)𝑣)) = (𝑓‘(𝑢 + 𝑣)))
23 fveq2 6916 . . . . . . . . . . . . 13 (𝑡 = 𝑇 → (+g‘𝑡) = (+g‘𝑇))
24 isghm.b . . . . . . . . . . . . 13 ⨣ = (+g‘𝑇)
2523, 24eqtr4di 2816 . . . . . . . . . . . 12 (𝑡 = 𝑇 → (+g‘𝑡) = ⨣ )
2625oveqd 7468 . . . . . . . . . . 11 (𝑡 = 𝑇 → ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))
2722, 26eqeqan12d 2777 . . . . . . . . . 10 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → ((𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)) ↔ (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣))))
2812, 27raleqbidv 3338 . . . . . . . . 9 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)) ↔ ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣))))
2912, 28raleqbidv 3338 . . . . . . . 8 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)) ↔ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣))))
3017, 29anbi12d 644 . . . . . . 7 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → ((𝑓:(Base‘𝑠)⟶(Base‘𝑡) ∧ ∀𝑢 ∈ (Base‘𝑠)∀𝑣 ∈ (Base‘𝑠)(𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣))) ↔ (𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))))
318, 30bitrid 286 . . . . . 6 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → ([(Base‘𝑠) / 𝑤](𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢 ∈ 𝑤 ∀𝑣 ∈ 𝑤 (𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣))) ↔ (𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))))
3231abbidv 2829 . . . . 5 ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → {𝑓 ∣ [(Base‘𝑠) / 𝑤](𝑓:𝑤⟶(Base‘𝑡) ∧ ∀𝑢 ∈ 𝑤 ∀𝑣 ∈ 𝑤 (𝑓‘(𝑢(+g‘𝑠)𝑣)) = ((𝑓‘𝑢)(+g‘𝑡)(𝑓‘𝑣)))} = {𝑓 ∣ (𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))})
3314fvexi 6930 . . . . . . 7 𝑌 ∈ V
34 fsetex 8916 . . . . . . 7 (𝑌 ∈ V → {𝑓 ∣ 𝑓:𝑋⟶𝑌} ∈ V)
3533, 34ax-mp 5 . . . . . 6 {𝑓 ∣ 𝑓:𝑋⟶𝑌} ∈ V
36 abanssl 4259 . . . . . 6 {𝑓 ∣ (𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))} ⊆ {𝑓 ∣ 𝑓:𝑋⟶𝑌}
3735, 36ssexi 5291 . . . . 5 {𝑓 ∣ (𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))} ∈ V
3832, 1, 37ovmpoa 7607 . . . 4 ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) → (𝑆 GrpHom 𝑇) = {𝑓 ∣ (𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))})
3938eleq2d 2850 . . 3 ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) → (𝐹 ∈ (𝑆 GrpHom 𝑇) ↔ 𝐹 ∈ {𝑓 ∣ (𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))}))
4010fvexi 6930 . . . . . 6 𝑋 ∈ V
41 fex2 7982 . . . . . 6 ((𝐹:𝑋⟶𝑌 ∧ 𝑋 ∈ V ∧ 𝑌 ∈ V) → 𝐹 ∈ V)
4240, 33, 41mp3an23 1483 . . . . 5 (𝐹:𝑋⟶𝑌 → 𝐹 ∈ V)
4342adantr 486 . . . 4 ((𝐹:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹‘𝑢) ⨣ (𝐹‘𝑣))) → 𝐹 ∈ V)
44 feq1 6717 . . . . 5 (𝑓 = 𝐹 → (𝑓:𝑋⟶𝑌 ↔ 𝐹:𝑋⟶𝑌))
45 fveq1 6915 . . . . . . 7 (𝑓 = 𝐹 → (𝑓‘(𝑢 + 𝑣)) = (𝐹‘(𝑢 + 𝑣)))
46 fveq1 6915 . . . . . . . 8 (𝑓 = 𝐹 → (𝑓‘𝑢) = (𝐹‘𝑢))
47 fveq1 6915 . . . . . . . 8 (𝑓 = 𝐹 → (𝑓‘𝑣) = (𝐹‘𝑣))
4846, 47oveq12d 7469 . . . . . . 7 (𝑓 = 𝐹 → ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)) = ((𝐹‘𝑢) ⨣ (𝐹‘𝑣)))
4945, 48eqeq12d 2779 . . . . . 6 (𝑓 = 𝐹 → ((𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)) ↔ (𝐹‘(𝑢 + 𝑣)) = ((𝐹‘𝑢) ⨣ (𝐹‘𝑣))))
50492ralbidv 3230 . . . . 5 (𝑓 = 𝐹 → (∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)) ↔ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹‘𝑢) ⨣ (𝐹‘𝑣))))
5144, 50anbi12d 644 . . . 4 (𝑓 = 𝐹 → ((𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣))) ↔ (𝐹:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹‘𝑢) ⨣ (𝐹‘𝑣)))))
5243, 51elab3 3643 . . 3 (𝐹 ∈ {𝑓 ∣ (𝑓:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝑓‘(𝑢 + 𝑣)) = ((𝑓‘𝑢) ⨣ (𝑓‘𝑣)))} ↔ (𝐹:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹‘𝑢) ⨣ (𝐹‘𝑣))))
5339, 52bitrdi 290 . 2 ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) → (𝐹 ∈ (𝑆 GrpHom 𝑇) ↔ (𝐹:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹‘𝑢) ⨣ (𝐹‘𝑣)))))
542, 53biadanii 834 1 (𝐹 ∈ (𝑆 GrpHom 𝑇) ↔ ((𝑆 ∈ Grp ∧ 𝑇 ∈ Grp) ∧ (𝐹:𝑋⟶𝑌 ∧ ∀𝑢 ∈ 𝑋 ∀𝑣 ∈ 𝑋 (𝐹‘(𝑢 + 𝑣)) = ((𝐹‘𝑢) ⨣ (𝐹‘𝑣)))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   ↔ wb 209   ∧ wa 401   = wceq 1570   ∈ wcel 2147  {cab 2741  ∀wral 3080  Vcvv 3454  [wsbc 3742  ⟶wf 6562  ‘cfv 6566  (class class class)co 7451  Basecbs 17431  +gcplusg 17472  Grpcgrp 19194   GrpHom cghm 19477
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398  ax-un 7783
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-iun 4958  df-br 5109  df-opab 5174  df-mpt 5193  df-id 5553  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-fv 6574  df-ov 7454  df-oprab 7455  df-mpo 7456  df-1st 8035  df-2nd 8036  df-map 8887  df-ghm 19478
This theorem is used by:  isghm3  19481  ghmgrp1  19482  ghmgrp2  19483  ghmf  19484  ghmlin  19485  isghmd  19489  idghm  19495  ghmf1o  19512  isrnghm  20722  rhmopp  20810  islmhm2  21364  expghm  21836  mulgghm2  21837  pi1xfr  25431  pi1coghm  25437  zringfrac  34189
  Copyright terms: Public domain W3C validator