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

Theorem frgpuptinv 18499
Description: Any assignment of the generators to target elements can be extended (uniquely) to a homomorphism from a free monoid to an arbitrary other monoid. (Contributed by Mario Carneiro, 2-Oct-2015.)
Hypotheses
Ref Expression
frgpup.b 𝐵 = (Base‘𝐻)
frgpup.n 𝑁 = (invg𝐻)
frgpup.t 𝑇 = (𝑦𝐼, 𝑧 ∈ 2𝑜 ↦ if(𝑧 = ∅, (𝐹𝑦), (𝑁‘(𝐹𝑦))))
frgpup.h (𝜑𝐻 ∈ Grp)
frgpup.i (𝜑𝐼𝑉)
frgpup.a (𝜑𝐹:𝐼𝐵)
frgpuptinv.m 𝑀 = (𝑦𝐼, 𝑧 ∈ 2𝑜 ↦ ⟨𝑦, (1𝑜𝑧)⟩)
Assertion
Ref Expression
frgpuptinv ((𝜑𝐴 ∈ (𝐼 × 2𝑜)) → (𝑇‘(𝑀𝐴)) = (𝑁‘(𝑇𝐴)))
Distinct variable groups:   𝑦,𝑧,𝐴   𝑦,𝐹,𝑧   𝑦,𝑁,𝑧   𝑦,𝐵,𝑧   𝜑,𝑦,𝑧   𝑦,𝐼,𝑧
Allowed substitution hints:   𝑇(𝑦,𝑧)   𝐻(𝑦,𝑧)   𝑀(𝑦,𝑧)   𝑉(𝑦,𝑧)

Proof of Theorem frgpuptinv
Dummy variables 𝑎 𝑏 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 elxp2 5336 . . 3 (𝐴 ∈ (𝐼 × 2𝑜) ↔ ∃𝑎𝐼𝑏 ∈ 2𝑜 𝐴 = ⟨𝑎, 𝑏⟩)
2 frgpuptinv.m . . . . . . . . . 10 𝑀 = (𝑦𝐼, 𝑧 ∈ 2𝑜 ↦ ⟨𝑦, (1𝑜𝑧)⟩)
32efgmval 18438 . . . . . . . . 9 ((𝑎𝐼𝑏 ∈ 2𝑜) → (𝑎𝑀𝑏) = ⟨𝑎, (1𝑜𝑏)⟩)
43adantl 474 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐼𝑏 ∈ 2𝑜)) → (𝑎𝑀𝑏) = ⟨𝑎, (1𝑜𝑏)⟩)
54fveq2d 6415 . . . . . . 7 ((𝜑 ∧ (𝑎𝐼𝑏 ∈ 2𝑜)) → (𝑇‘(𝑎𝑀𝑏)) = (𝑇‘⟨𝑎, (1𝑜𝑏)⟩))
6 df-ov 6881 . . . . . . 7 (𝑎𝑇(1𝑜𝑏)) = (𝑇‘⟨𝑎, (1𝑜𝑏)⟩)
75, 6syl6eqr 2851 . . . . . 6 ((𝜑 ∧ (𝑎𝐼𝑏 ∈ 2𝑜)) → (𝑇‘(𝑎𝑀𝑏)) = (𝑎𝑇(1𝑜𝑏)))
8 elpri 4390 . . . . . . . . 9 (𝑏 ∈ {∅, 1𝑜} → (𝑏 = ∅ ∨ 𝑏 = 1𝑜))
9 df2o3 7813 . . . . . . . . 9 2𝑜 = {∅, 1𝑜}
108, 9eleq2s 2896 . . . . . . . 8 (𝑏 ∈ 2𝑜 → (𝑏 = ∅ ∨ 𝑏 = 1𝑜))
11 simpr 478 . . . . . . . . . . . 12 ((𝜑𝑎𝐼) → 𝑎𝐼)
12 1oex 7807 . . . . . . . . . . . . . 14 1𝑜 ∈ V
1312prid2 4487 . . . . . . . . . . . . 13 1𝑜 ∈ {∅, 1𝑜}
1413, 9eleqtrri 2877 . . . . . . . . . . . 12 1𝑜 ∈ 2𝑜
15 1n0 7815 . . . . . . . . . . . . . . . 16 1𝑜 ≠ ∅
16 neeq1 3033 . . . . . . . . . . . . . . . 16 (𝑧 = 1𝑜 → (𝑧 ≠ ∅ ↔ 1𝑜 ≠ ∅))
1715, 16mpbiri 250 . . . . . . . . . . . . . . 15 (𝑧 = 1𝑜𝑧 ≠ ∅)
18 ifnefalse 4289 . . . . . . . . . . . . . . 15 (𝑧 ≠ ∅ → if(𝑧 = ∅, (𝐹𝑦), (𝑁‘(𝐹𝑦))) = (𝑁‘(𝐹𝑦)))
1917, 18syl 17 . . . . . . . . . . . . . 14 (𝑧 = 1𝑜 → if(𝑧 = ∅, (𝐹𝑦), (𝑁‘(𝐹𝑦))) = (𝑁‘(𝐹𝑦)))
20 fveq2 6411 . . . . . . . . . . . . . . 15 (𝑦 = 𝑎 → (𝐹𝑦) = (𝐹𝑎))
2120fveq2d 6415 . . . . . . . . . . . . . 14 (𝑦 = 𝑎 → (𝑁‘(𝐹𝑦)) = (𝑁‘(𝐹𝑎)))
2219, 21sylan9eqr 2855 . . . . . . . . . . . . 13 ((𝑦 = 𝑎𝑧 = 1𝑜) → if(𝑧 = ∅, (𝐹𝑦), (𝑁‘(𝐹𝑦))) = (𝑁‘(𝐹𝑎)))
23 frgpup.t . . . . . . . . . . . . 13 𝑇 = (𝑦𝐼, 𝑧 ∈ 2𝑜 ↦ if(𝑧 = ∅, (𝐹𝑦), (𝑁‘(𝐹𝑦))))
24 fvex 6424 . . . . . . . . . . . . 13 (𝑁‘(𝐹𝑎)) ∈ V
2522, 23, 24ovmpt2a 7025 . . . . . . . . . . . 12 ((𝑎𝐼 ∧ 1𝑜 ∈ 2𝑜) → (𝑎𝑇1𝑜) = (𝑁‘(𝐹𝑎)))
2611, 14, 25sylancl 581 . . . . . . . . . . 11 ((𝜑𝑎𝐼) → (𝑎𝑇1𝑜) = (𝑁‘(𝐹𝑎)))
27 0ex 4984 . . . . . . . . . . . . . . 15 ∅ ∈ V
2827prid1 4486 . . . . . . . . . . . . . 14 ∅ ∈ {∅, 1𝑜}
2928, 9eleqtrri 2877 . . . . . . . . . . . . 13 ∅ ∈ 2𝑜
30 iftrue 4283 . . . . . . . . . . . . . . 15 (𝑧 = ∅ → if(𝑧 = ∅, (𝐹𝑦), (𝑁‘(𝐹𝑦))) = (𝐹𝑦))
3130, 20sylan9eqr 2855 . . . . . . . . . . . . . 14 ((𝑦 = 𝑎𝑧 = ∅) → if(𝑧 = ∅, (𝐹𝑦), (𝑁‘(𝐹𝑦))) = (𝐹𝑎))
32 fvex 6424 . . . . . . . . . . . . . 14 (𝐹𝑎) ∈ V
3331, 23, 32ovmpt2a 7025 . . . . . . . . . . . . 13 ((𝑎𝐼 ∧ ∅ ∈ 2𝑜) → (𝑎𝑇∅) = (𝐹𝑎))
3411, 29, 33sylancl 581 . . . . . . . . . . . 12 ((𝜑𝑎𝐼) → (𝑎𝑇∅) = (𝐹𝑎))
3534fveq2d 6415 . . . . . . . . . . 11 ((𝜑𝑎𝐼) → (𝑁‘(𝑎𝑇∅)) = (𝑁‘(𝐹𝑎)))
3626, 35eqtr4d 2836 . . . . . . . . . 10 ((𝜑𝑎𝐼) → (𝑎𝑇1𝑜) = (𝑁‘(𝑎𝑇∅)))
37 difeq2 3920 . . . . . . . . . . . . 13 (𝑏 = ∅ → (1𝑜𝑏) = (1𝑜 ∖ ∅))
38 dif0 4151 . . . . . . . . . . . . 13 (1𝑜 ∖ ∅) = 1𝑜
3937, 38syl6eq 2849 . . . . . . . . . . . 12 (𝑏 = ∅ → (1𝑜𝑏) = 1𝑜)
4039oveq2d 6894 . . . . . . . . . . 11 (𝑏 = ∅ → (𝑎𝑇(1𝑜𝑏)) = (𝑎𝑇1𝑜))
41 oveq2 6886 . . . . . . . . . . . 12 (𝑏 = ∅ → (𝑎𝑇𝑏) = (𝑎𝑇∅))
4241fveq2d 6415 . . . . . . . . . . 11 (𝑏 = ∅ → (𝑁‘(𝑎𝑇𝑏)) = (𝑁‘(𝑎𝑇∅)))
4340, 42eqeq12d 2814 . . . . . . . . . 10 (𝑏 = ∅ → ((𝑎𝑇(1𝑜𝑏)) = (𝑁‘(𝑎𝑇𝑏)) ↔ (𝑎𝑇1𝑜) = (𝑁‘(𝑎𝑇∅))))
4436, 43syl5ibrcom 239 . . . . . . . . 9 ((𝜑𝑎𝐼) → (𝑏 = ∅ → (𝑎𝑇(1𝑜𝑏)) = (𝑁‘(𝑎𝑇𝑏))))
4536fveq2d 6415 . . . . . . . . . . 11 ((𝜑𝑎𝐼) → (𝑁‘(𝑎𝑇1𝑜)) = (𝑁‘(𝑁‘(𝑎𝑇∅))))
46 frgpup.h . . . . . . . . . . . . 13 (𝜑𝐻 ∈ Grp)
4746adantr 473 . . . . . . . . . . . 12 ((𝜑𝑎𝐼) → 𝐻 ∈ Grp)
48 frgpup.a . . . . . . . . . . . . . 14 (𝜑𝐹:𝐼𝐵)
4948ffvelrnda 6585 . . . . . . . . . . . . 13 ((𝜑𝑎𝐼) → (𝐹𝑎) ∈ 𝐵)
5034, 49eqeltrd 2878 . . . . . . . . . . . 12 ((𝜑𝑎𝐼) → (𝑎𝑇∅) ∈ 𝐵)
51 frgpup.b . . . . . . . . . . . . 13 𝐵 = (Base‘𝐻)
52 frgpup.n . . . . . . . . . . . . 13 𝑁 = (invg𝐻)
5351, 52grpinvinv 17798 . . . . . . . . . . . 12 ((𝐻 ∈ Grp ∧ (𝑎𝑇∅) ∈ 𝐵) → (𝑁‘(𝑁‘(𝑎𝑇∅))) = (𝑎𝑇∅))
5447, 50, 53syl2anc 580 . . . . . . . . . . 11 ((𝜑𝑎𝐼) → (𝑁‘(𝑁‘(𝑎𝑇∅))) = (𝑎𝑇∅))
5545, 54eqtr2d 2834 . . . . . . . . . 10 ((𝜑𝑎𝐼) → (𝑎𝑇∅) = (𝑁‘(𝑎𝑇1𝑜)))
56 difeq2 3920 . . . . . . . . . . . . 13 (𝑏 = 1𝑜 → (1𝑜𝑏) = (1𝑜 ∖ 1𝑜))
57 difid 4149 . . . . . . . . . . . . 13 (1𝑜 ∖ 1𝑜) = ∅
5856, 57syl6eq 2849 . . . . . . . . . . . 12 (𝑏 = 1𝑜 → (1𝑜𝑏) = ∅)
5958oveq2d 6894 . . . . . . . . . . 11 (𝑏 = 1𝑜 → (𝑎𝑇(1𝑜𝑏)) = (𝑎𝑇∅))
60 oveq2 6886 . . . . . . . . . . . 12 (𝑏 = 1𝑜 → (𝑎𝑇𝑏) = (𝑎𝑇1𝑜))
6160fveq2d 6415 . . . . . . . . . . 11 (𝑏 = 1𝑜 → (𝑁‘(𝑎𝑇𝑏)) = (𝑁‘(𝑎𝑇1𝑜)))
6259, 61eqeq12d 2814 . . . . . . . . . 10 (𝑏 = 1𝑜 → ((𝑎𝑇(1𝑜𝑏)) = (𝑁‘(𝑎𝑇𝑏)) ↔ (𝑎𝑇∅) = (𝑁‘(𝑎𝑇1𝑜))))
6355, 62syl5ibrcom 239 . . . . . . . . 9 ((𝜑𝑎𝐼) → (𝑏 = 1𝑜 → (𝑎𝑇(1𝑜𝑏)) = (𝑁‘(𝑎𝑇𝑏))))
6444, 63jaod 886 . . . . . . . 8 ((𝜑𝑎𝐼) → ((𝑏 = ∅ ∨ 𝑏 = 1𝑜) → (𝑎𝑇(1𝑜𝑏)) = (𝑁‘(𝑎𝑇𝑏))))
6510, 64syl5 34 . . . . . . 7 ((𝜑𝑎𝐼) → (𝑏 ∈ 2𝑜 → (𝑎𝑇(1𝑜𝑏)) = (𝑁‘(𝑎𝑇𝑏))))
6665impr 447 . . . . . 6 ((𝜑 ∧ (𝑎𝐼𝑏 ∈ 2𝑜)) → (𝑎𝑇(1𝑜𝑏)) = (𝑁‘(𝑎𝑇𝑏)))
677, 66eqtrd 2833 . . . . 5 ((𝜑 ∧ (𝑎𝐼𝑏 ∈ 2𝑜)) → (𝑇‘(𝑎𝑀𝑏)) = (𝑁‘(𝑎𝑇𝑏)))
68 fveq2 6411 . . . . . . . 8 (𝐴 = ⟨𝑎, 𝑏⟩ → (𝑀𝐴) = (𝑀‘⟨𝑎, 𝑏⟩))
69 df-ov 6881 . . . . . . . 8 (𝑎𝑀𝑏) = (𝑀‘⟨𝑎, 𝑏⟩)
7068, 69syl6eqr 2851 . . . . . . 7 (𝐴 = ⟨𝑎, 𝑏⟩ → (𝑀𝐴) = (𝑎𝑀𝑏))
7170fveq2d 6415 . . . . . 6 (𝐴 = ⟨𝑎, 𝑏⟩ → (𝑇‘(𝑀𝐴)) = (𝑇‘(𝑎𝑀𝑏)))
72 fveq2 6411 . . . . . . . 8 (𝐴 = ⟨𝑎, 𝑏⟩ → (𝑇𝐴) = (𝑇‘⟨𝑎, 𝑏⟩))
73 df-ov 6881 . . . . . . . 8 (𝑎𝑇𝑏) = (𝑇‘⟨𝑎, 𝑏⟩)
7472, 73syl6eqr 2851 . . . . . . 7 (𝐴 = ⟨𝑎, 𝑏⟩ → (𝑇𝐴) = (𝑎𝑇𝑏))
7574fveq2d 6415 . . . . . 6 (𝐴 = ⟨𝑎, 𝑏⟩ → (𝑁‘(𝑇𝐴)) = (𝑁‘(𝑎𝑇𝑏)))
7671, 75eqeq12d 2814 . . . . 5 (𝐴 = ⟨𝑎, 𝑏⟩ → ((𝑇‘(𝑀𝐴)) = (𝑁‘(𝑇𝐴)) ↔ (𝑇‘(𝑎𝑀𝑏)) = (𝑁‘(𝑎𝑇𝑏))))
7767, 76syl5ibrcom 239 . . . 4 ((𝜑 ∧ (𝑎𝐼𝑏 ∈ 2𝑜)) → (𝐴 = ⟨𝑎, 𝑏⟩ → (𝑇‘(𝑀𝐴)) = (𝑁‘(𝑇𝐴))))
7877rexlimdvva 3219 . . 3 (𝜑 → (∃𝑎𝐼𝑏 ∈ 2𝑜 𝐴 = ⟨𝑎, 𝑏⟩ → (𝑇‘(𝑀𝐴)) = (𝑁‘(𝑇𝐴))))
791, 78syl5bi 234 . 2 (𝜑 → (𝐴 ∈ (𝐼 × 2𝑜) → (𝑇‘(𝑀𝐴)) = (𝑁‘(𝑇𝐴))))
8079imp 396 1 ((𝜑𝐴 ∈ (𝐼 × 2𝑜)) → (𝑇‘(𝑀𝐴)) = (𝑁‘(𝑇𝐴)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 385  wo 874   = wceq 1653  wcel 2157  wne 2971  wrex 3090  cdif 3766  c0 4115  ifcif 4277  {cpr 4370  cop 4374   × cxp 5310  wf 6097  cfv 6101  (class class class)co 6878  cmpt2 6880  1𝑜c1o 7792  2𝑜c2o 7793  Basecbs 16184  Grpcgrp 17738  invgcminusg 17739
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1891  ax-4 1905  ax-5 2006  ax-6 2072  ax-7 2107  ax-8 2159  ax-9 2166  ax-10 2185  ax-11 2200  ax-12 2213  ax-13 2377  ax-ext 2777  ax-rep 4964  ax-sep 4975  ax-nul 4983  ax-pow 5035  ax-pr 5097  ax-un 7183
This theorem depends on definitions:  df-bi 199  df-an 386  df-or 875  df-3or 1109  df-3an 1110  df-tru 1657  df-ex 1876  df-nf 1880  df-sb 2065  df-mo 2591  df-eu 2609  df-clab 2786  df-cleq 2792  df-clel 2795  df-nfc 2930  df-ne 2972  df-ral 3094  df-rex 3095  df-reu 3096  df-rmo 3097  df-rab 3098  df-v 3387  df-sbc 3634  df-csb 3729  df-dif 3772  df-un 3774  df-in 3776  df-ss 3783  df-pss 3785  df-nul 4116  df-if 4278  df-pw 4351  df-sn 4369  df-pr 4371  df-tp 4373  df-op 4375  df-uni 4629  df-iun 4712  df-br 4844  df-opab 4906  df-mpt 4923  df-tr 4946  df-id 5220  df-eprel 5225  df-po 5233  df-so 5234  df-fr 5271  df-we 5273  df-xp 5318  df-rel 5319  df-cnv 5320  df-co 5321  df-dm 5322  df-rn 5323  df-res 5324  df-ima 5325  df-ord 5944  df-on 5945  df-suc 5947  df-iota 6064  df-fun 6103  df-fn 6104  df-f 6105  df-f1 6106  df-fo 6107  df-f1o 6108  df-fv 6109  df-riota 6839  df-ov 6881  df-oprab 6882  df-mpt2 6883  df-1o 7799  df-2o 7800  df-0g 16417  df-mgm 17557  df-sgrp 17599  df-mnd 17610  df-grp 17741  df-minusg 17742
This theorem is referenced by:  frgpuplem  18500
  Copyright terms: Public domain W3C validator