This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Property of being a homomorphism of groups. (Contributed by Stefan O'Rear, 31-Dec-2014) (Proof shortened by SN, 5-Jun-2025)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | isghm.w | ⊢ 𝑋 = ( Base ‘ 𝑆 ) | |
| isghm.x | ⊢ 𝑌 = ( Base ‘ 𝑇 ) | ||
| isghm.a | ⊢ + = ( +g ‘ 𝑆 ) | ||
| isghm.b | ⊢ ⨣ = ( +g ‘ 𝑇 ) | ||
| Assertion | isghm | ⊢ ( 𝐹 ∈ ( 𝑆 GrpHom 𝑇 ) ↔ ( ( 𝑆 ∈ Grp ∧ 𝑇 ∈ Grp ) ∧ ( 𝐹 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | isghm.w | ⊢ 𝑋 = ( Base ‘ 𝑆 ) | |
| 2 | isghm.x | ⊢ 𝑌 = ( Base ‘ 𝑇 ) | |
| 3 | isghm.a | ⊢ + = ( +g ‘ 𝑆 ) | |
| 4 | isghm.b | ⊢ ⨣ = ( +g ‘ 𝑇 ) | |
| 5 | df-ghm | ⊢ GrpHom = ( 𝑠 ∈ Grp , 𝑡 ∈ Grp ↦ { 𝑓 ∣ [ ( Base ‘ 𝑠 ) / 𝑤 ] ( 𝑓 : 𝑤 ⟶ ( Base ‘ 𝑡 ) ∧ ∀ 𝑢 ∈ 𝑤 ∀ 𝑣 ∈ 𝑤 ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) } ) | |
| 6 | 5 | elmpocl | ⊢ ( 𝐹 ∈ ( 𝑆 GrpHom 𝑇 ) → ( 𝑆 ∈ Grp ∧ 𝑇 ∈ Grp ) ) |
| 7 | fvex | ⊢ ( Base ‘ 𝑠 ) ∈ V | |
| 8 | feq2 | ⊢ ( 𝑤 = ( Base ‘ 𝑠 ) → ( 𝑓 : 𝑤 ⟶ ( Base ‘ 𝑡 ) ↔ 𝑓 : ( Base ‘ 𝑠 ) ⟶ ( Base ‘ 𝑡 ) ) ) | |
| 9 | raleq | ⊢ ( 𝑤 = ( Base ‘ 𝑠 ) → ( ∀ 𝑣 ∈ 𝑤 ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ↔ ∀ 𝑣 ∈ ( Base ‘ 𝑠 ) ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) ) | |
| 10 | 9 | raleqbi1dv | ⊢ ( 𝑤 = ( Base ‘ 𝑠 ) → ( ∀ 𝑢 ∈ 𝑤 ∀ 𝑣 ∈ 𝑤 ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ↔ ∀ 𝑢 ∈ ( Base ‘ 𝑠 ) ∀ 𝑣 ∈ ( Base ‘ 𝑠 ) ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) ) |
| 11 | 8 10 | anbi12d | ⊢ ( 𝑤 = ( Base ‘ 𝑠 ) → ( ( 𝑓 : 𝑤 ⟶ ( Base ‘ 𝑡 ) ∧ ∀ 𝑢 ∈ 𝑤 ∀ 𝑣 ∈ 𝑤 ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) ↔ ( 𝑓 : ( Base ‘ 𝑠 ) ⟶ ( Base ‘ 𝑡 ) ∧ ∀ 𝑢 ∈ ( Base ‘ 𝑠 ) ∀ 𝑣 ∈ ( Base ‘ 𝑠 ) ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) ) ) |
| 12 | 7 11 | sbcie | ⊢ ( [ ( Base ‘ 𝑠 ) / 𝑤 ] ( 𝑓 : 𝑤 ⟶ ( Base ‘ 𝑡 ) ∧ ∀ 𝑢 ∈ 𝑤 ∀ 𝑣 ∈ 𝑤 ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) ↔ ( 𝑓 : ( Base ‘ 𝑠 ) ⟶ ( Base ‘ 𝑡 ) ∧ ∀ 𝑢 ∈ ( Base ‘ 𝑠 ) ∀ 𝑣 ∈ ( Base ‘ 𝑠 ) ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) ) |
| 13 | fveq2 | ⊢ ( 𝑠 = 𝑆 → ( Base ‘ 𝑠 ) = ( Base ‘ 𝑆 ) ) | |
| 14 | 13 1 | eqtr4di | ⊢ ( 𝑠 = 𝑆 → ( Base ‘ 𝑠 ) = 𝑋 ) |
| 15 | 14 | adantr | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → ( Base ‘ 𝑠 ) = 𝑋 ) |
| 16 | fveq2 | ⊢ ( 𝑡 = 𝑇 → ( Base ‘ 𝑡 ) = ( Base ‘ 𝑇 ) ) | |
| 17 | 16 2 | eqtr4di | ⊢ ( 𝑡 = 𝑇 → ( Base ‘ 𝑡 ) = 𝑌 ) |
| 18 | 17 | adantl | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → ( Base ‘ 𝑡 ) = 𝑌 ) |
| 19 | 15 18 | feq23d | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → ( 𝑓 : ( Base ‘ 𝑠 ) ⟶ ( Base ‘ 𝑡 ) ↔ 𝑓 : 𝑋 ⟶ 𝑌 ) ) |
| 20 | fveq2 | ⊢ ( 𝑠 = 𝑆 → ( +g ‘ 𝑠 ) = ( +g ‘ 𝑆 ) ) | |
| 21 | 20 3 | eqtr4di | ⊢ ( 𝑠 = 𝑆 → ( +g ‘ 𝑠 ) = + ) |
| 22 | 21 | oveqd | ⊢ ( 𝑠 = 𝑆 → ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) = ( 𝑢 + 𝑣 ) ) |
| 23 | 22 | fveq2d | ⊢ ( 𝑠 = 𝑆 → ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) ) |
| 24 | fveq2 | ⊢ ( 𝑡 = 𝑇 → ( +g ‘ 𝑡 ) = ( +g ‘ 𝑇 ) ) | |
| 25 | 24 4 | eqtr4di | ⊢ ( 𝑡 = 𝑇 → ( +g ‘ 𝑡 ) = ⨣ ) |
| 26 | 25 | oveqd | ⊢ ( 𝑡 = 𝑇 → ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) |
| 27 | 23 26 | eqeqan12d | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → ( ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ↔ ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) ) |
| 28 | 15 27 | raleqbidv | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → ( ∀ 𝑣 ∈ ( Base ‘ 𝑠 ) ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ↔ ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) ) |
| 29 | 15 28 | raleqbidv | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → ( ∀ 𝑢 ∈ ( Base ‘ 𝑠 ) ∀ 𝑣 ∈ ( Base ‘ 𝑠 ) ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ↔ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) ) |
| 30 | 19 29 | anbi12d | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → ( ( 𝑓 : ( Base ‘ 𝑠 ) ⟶ ( Base ‘ 𝑡 ) ∧ ∀ 𝑢 ∈ ( Base ‘ 𝑠 ) ∀ 𝑣 ∈ ( Base ‘ 𝑠 ) ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) ↔ ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) ) ) |
| 31 | 12 30 | bitrid | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → ( [ ( Base ‘ 𝑠 ) / 𝑤 ] ( 𝑓 : 𝑤 ⟶ ( Base ‘ 𝑡 ) ∧ ∀ 𝑢 ∈ 𝑤 ∀ 𝑣 ∈ 𝑤 ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) ↔ ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) ) ) |
| 32 | 31 | abbidv | ⊢ ( ( 𝑠 = 𝑆 ∧ 𝑡 = 𝑇 ) → { 𝑓 ∣ [ ( Base ‘ 𝑠 ) / 𝑤 ] ( 𝑓 : 𝑤 ⟶ ( Base ‘ 𝑡 ) ∧ ∀ 𝑢 ∈ 𝑤 ∀ 𝑣 ∈ 𝑤 ( 𝑓 ‘ ( 𝑢 ( +g ‘ 𝑠 ) 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ( +g ‘ 𝑡 ) ( 𝑓 ‘ 𝑣 ) ) ) } = { 𝑓 ∣ ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) } ) |
| 33 | 2 | fvexi | ⊢ 𝑌 ∈ V |
| 34 | fsetex | ⊢ ( 𝑌 ∈ V → { 𝑓 ∣ 𝑓 : 𝑋 ⟶ 𝑌 } ∈ V ) | |
| 35 | 33 34 | ax-mp | ⊢ { 𝑓 ∣ 𝑓 : 𝑋 ⟶ 𝑌 } ∈ V |
| 36 | abanssl | ⊢ { 𝑓 ∣ ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) } ⊆ { 𝑓 ∣ 𝑓 : 𝑋 ⟶ 𝑌 } | |
| 37 | 35 36 | ssexi | ⊢ { 𝑓 ∣ ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) } ∈ V |
| 38 | 32 5 37 | ovmpoa | ⊢ ( ( 𝑆 ∈ Grp ∧ 𝑇 ∈ Grp ) → ( 𝑆 GrpHom 𝑇 ) = { 𝑓 ∣ ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) } ) |
| 39 | 38 | eleq2d | ⊢ ( ( 𝑆 ∈ Grp ∧ 𝑇 ∈ Grp ) → ( 𝐹 ∈ ( 𝑆 GrpHom 𝑇 ) ↔ 𝐹 ∈ { 𝑓 ∣ ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) } ) ) |
| 40 | 1 | fvexi | ⊢ 𝑋 ∈ V |
| 41 | fex2 | ⊢ ( ( 𝐹 : 𝑋 ⟶ 𝑌 ∧ 𝑋 ∈ V ∧ 𝑌 ∈ V ) → 𝐹 ∈ V ) | |
| 42 | 40 33 41 | mp3an23 | ⊢ ( 𝐹 : 𝑋 ⟶ 𝑌 → 𝐹 ∈ V ) |
| 43 | 42 | adantr | ⊢ ( ( 𝐹 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) → 𝐹 ∈ V ) |
| 44 | feq1 | ⊢ ( 𝑓 = 𝐹 → ( 𝑓 : 𝑋 ⟶ 𝑌 ↔ 𝐹 : 𝑋 ⟶ 𝑌 ) ) | |
| 45 | fveq1 | ⊢ ( 𝑓 = 𝐹 → ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) ) | |
| 46 | fveq1 | ⊢ ( 𝑓 = 𝐹 → ( 𝑓 ‘ 𝑢 ) = ( 𝐹 ‘ 𝑢 ) ) | |
| 47 | fveq1 | ⊢ ( 𝑓 = 𝐹 → ( 𝑓 ‘ 𝑣 ) = ( 𝐹 ‘ 𝑣 ) ) | |
| 48 | 46 47 | oveq12d | ⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) |
| 49 | 45 48 | eqeq12d | ⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ↔ ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) ) |
| 50 | 49 | 2ralbidv | ⊢ ( 𝑓 = 𝐹 → ( ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ↔ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) ) |
| 51 | 44 50 | anbi12d | ⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) ↔ ( 𝐹 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) ) ) |
| 52 | 43 51 | elab3 | ⊢ ( 𝐹 ∈ { 𝑓 ∣ ( 𝑓 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝑓 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝑓 ‘ 𝑢 ) ⨣ ( 𝑓 ‘ 𝑣 ) ) ) } ↔ ( 𝐹 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) ) |
| 53 | 39 52 | bitrdi | ⊢ ( ( 𝑆 ∈ Grp ∧ 𝑇 ∈ Grp ) → ( 𝐹 ∈ ( 𝑆 GrpHom 𝑇 ) ↔ ( 𝐹 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) ) ) |
| 54 | 6 53 | biadanii | ⊢ ( 𝐹 ∈ ( 𝑆 GrpHom 𝑇 ) ↔ ( ( 𝑆 ∈ Grp ∧ 𝑇 ∈ Grp ) ∧ ( 𝐹 : 𝑋 ⟶ 𝑌 ∧ ∀ 𝑢 ∈ 𝑋 ∀ 𝑣 ∈ 𝑋 ( 𝐹 ‘ ( 𝑢 + 𝑣 ) ) = ( ( 𝐹 ‘ 𝑢 ) ⨣ ( 𝐹 ‘ 𝑣 ) ) ) ) ) |