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

Theorem efgtf 18575
Description: Value of the free group construction. (Contributed by Mario Carneiro, 27-Sep-2015.)
Hypotheses
Ref Expression
efgval.w 𝑊 = ( I ‘Word (𝐼 × 2o))
efgval.r = ( ~FG𝐼)
efgval2.m 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
efgval2.t 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
Assertion
Ref Expression
efgtf (𝑋𝑊 → ((𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∧ (𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊))
Distinct variable groups:   𝑎,𝑏,𝑦,𝑧   𝑣,𝑛,𝑤,𝑦,𝑧,𝑎   𝑀,𝑎   𝑛,𝑏,𝑣,𝑤,𝑀   𝑇,𝑎,𝑏   𝑋,𝑎,𝑏   𝑊,𝑎,𝑏,𝑛,𝑣,𝑤,𝑦,𝑧   ,𝑎,𝑏,𝑦,𝑧   𝐼,𝑎,𝑏,𝑛,𝑣,𝑤,𝑦,𝑧
Allowed substitution hints:   (𝑤,𝑣,𝑛)   𝑇(𝑦,𝑧,𝑤,𝑣,𝑛)   𝑀(𝑦,𝑧)   𝑋(𝑦,𝑧,𝑤,𝑣,𝑛)

Proof of Theorem efgtf
Dummy variable 𝑢 is distinct from all other variables.
StepHypRef Expression
1 efgval.w . . . . . . . . . 10 𝑊 = ( I ‘Word (𝐼 × 2o))
2 fviss 6608 . . . . . . . . . 10 ( I ‘Word (𝐼 × 2o)) ⊆ Word (𝐼 × 2o)
31, 2eqsstri 3922 . . . . . . . . 9 𝑊 ⊆ Word (𝐼 × 2o)
4 simpl 483 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑋𝑊)
53, 4sseldi 3887 . . . . . . . 8 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑋 ∈ Word (𝐼 × 2o))
6 simprr 769 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑏 ∈ (𝐼 × 2o))
7 efgval2.m . . . . . . . . . . . 12 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
87efgmf 18566 . . . . . . . . . . 11 𝑀:(𝐼 × 2o)⟶(𝐼 × 2o)
98ffvelrni 6715 . . . . . . . . . 10 (𝑏 ∈ (𝐼 × 2o) → (𝑀𝑏) ∈ (𝐼 × 2o))
109ad2antll 725 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑀𝑏) ∈ (𝐼 × 2o))
116, 10s2cld 14069 . . . . . . . 8 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → ⟨“𝑏(𝑀𝑏)”⟩ ∈ Word (𝐼 × 2o))
12 splcl 13950 . . . . . . . 8 ((𝑋 ∈ Word (𝐼 × 2o) ∧ ⟨“𝑏(𝑀𝑏)”⟩ ∈ Word (𝐼 × 2o)) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ Word (𝐼 × 2o))
135, 11, 12syl2anc 584 . . . . . . 7 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ Word (𝐼 × 2o))
141efgrcl 18568 . . . . . . . . 9 (𝑋𝑊 → (𝐼 ∈ V ∧ 𝑊 = Word (𝐼 × 2o)))
1514simprd 496 . . . . . . . 8 (𝑋𝑊𝑊 = Word (𝐼 × 2o))
1615adantr 481 . . . . . . 7 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑊 = Word (𝐼 × 2o))
1713, 16eleqtrrd 2886 . . . . . 6 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊)
1817ralrimivva 3158 . . . . 5 (𝑋𝑊 → ∀𝑎 ∈ (0...(♯‘𝑋))∀𝑏 ∈ (𝐼 × 2o)(𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊)
19 eqid 2795 . . . . . 6 (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
2019fmpo 7622 . . . . 5 (∀𝑎 ∈ (0...(♯‘𝑋))∀𝑏 ∈ (𝐼 × 2o)(𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊 ↔ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
2118, 20sylib 219 . . . 4 (𝑋𝑊 → (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
22 ovex 7048 . . . . 5 (0...(♯‘𝑋)) ∈ V
2314simpld 495 . . . . . 6 (𝑋𝑊𝐼 ∈ V)
24 2on 7962 . . . . . 6 2o ∈ On
25 xpexg 7330 . . . . . 6 ((𝐼 ∈ V ∧ 2o ∈ On) → (𝐼 × 2o) ∈ V)
2623, 24, 25sylancl 586 . . . . 5 (𝑋𝑊 → (𝐼 × 2o) ∈ V)
27 xpexg 7330 . . . . 5 (((0...(♯‘𝑋)) ∈ V ∧ (𝐼 × 2o) ∈ V) → ((0...(♯‘𝑋)) × (𝐼 × 2o)) ∈ V)
2822, 26, 27sylancr 587 . . . 4 (𝑋𝑊 → ((0...(♯‘𝑋)) × (𝐼 × 2o)) ∈ V)
291fvexi 6552 . . . . 5 𝑊 ∈ V
3029a1i 11 . . . 4 (𝑋𝑊𝑊 ∈ V)
31 fex2 7494 . . . 4 (((𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊 ∧ ((0...(♯‘𝑋)) × (𝐼 × 2o)) ∈ V ∧ 𝑊 ∈ V) → (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∈ V)
3221, 28, 30, 31syl3anc 1364 . . 3 (𝑋𝑊 → (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∈ V)
33 fveq2 6538 . . . . . 6 (𝑢 = 𝑋 → (♯‘𝑢) = (♯‘𝑋))
3433oveq2d 7032 . . . . 5 (𝑢 = 𝑋 → (0...(♯‘𝑢)) = (0...(♯‘𝑋)))
35 eqidd 2796 . . . . 5 (𝑢 = 𝑋 → (𝐼 × 2o) = (𝐼 × 2o))
36 oveq1 7023 . . . . 5 (𝑢 = 𝑋 → (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) = (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
3734, 35, 36mpoeq123dv 7087 . . . 4 (𝑢 = 𝑋 → (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
38 efgval2.t . . . . 5 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
39 oteq1 4719 . . . . . . . . . 10 (𝑛 = 𝑎 → ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)
40 oteq2 4720 . . . . . . . . . 10 (𝑛 = 𝑎 → ⟨𝑎, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩)
4139, 40eqtrd 2831 . . . . . . . . 9 (𝑛 = 𝑎 → ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩)
4241oveq2d 7032 . . . . . . . 8 (𝑛 = 𝑎 → (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩) = (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩))
43 id 22 . . . . . . . . . . 11 (𝑤 = 𝑏𝑤 = 𝑏)
44 fveq2 6538 . . . . . . . . . . 11 (𝑤 = 𝑏 → (𝑀𝑤) = (𝑀𝑏))
4543, 44s2eqd 14061 . . . . . . . . . 10 (𝑤 = 𝑏 → ⟨“𝑤(𝑀𝑤)”⟩ = ⟨“𝑏(𝑀𝑏)”⟩)
4645oteq3d 4724 . . . . . . . . 9 (𝑤 = 𝑏 → ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)
4746oveq2d 7032 . . . . . . . 8 (𝑤 = 𝑏 → (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩) = (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
4842, 47cbvmpov 7105 . . . . . . 7 (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑣)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
49 fveq2 6538 . . . . . . . . 9 (𝑣 = 𝑢 → (♯‘𝑣) = (♯‘𝑢))
5049oveq2d 7032 . . . . . . . 8 (𝑣 = 𝑢 → (0...(♯‘𝑣)) = (0...(♯‘𝑢)))
51 eqidd 2796 . . . . . . . 8 (𝑣 = 𝑢 → (𝐼 × 2o) = (𝐼 × 2o))
52 oveq1 7023 . . . . . . . 8 (𝑣 = 𝑢 → (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) = (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
5350, 51, 52mpoeq123dv 7087 . . . . . . 7 (𝑣 = 𝑢 → (𝑎 ∈ (0...(♯‘𝑣)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5448, 53syl5eq 2843 . . . . . 6 (𝑣 = 𝑢 → (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5554cbvmptv 5061 . . . . 5 (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩))) = (𝑢𝑊 ↦ (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5638, 55eqtri 2819 . . . 4 𝑇 = (𝑢𝑊 ↦ (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5737, 56fvmptg 6633 . . 3 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∈ V) → (𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5832, 57mpdan 683 . 2 (𝑋𝑊 → (𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5958feq1d 6367 . . 3 (𝑋𝑊 → ((𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊 ↔ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊))
6021, 59mpbird 258 . 2 (𝑋𝑊 → (𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
6158, 60jca 512 1 (𝑋𝑊 → ((𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∧ (𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396   = wceq 1522  wcel 2081  wral 3105  Vcvv 3437  cdif 3856  cop 4478  cotp 4480  cmpt 5041   I cid 5347   × cxp 5441  Oncon0 6066  wf 6221  cfv 6225  (class class class)co 7016  cmpo 7018  1oc1o 7946  2oc2o 7947  0cc0 10383  ...cfz 12742  chash 13540  Word cword 13707   splice csplice 13947  ⟨“cs2 14039   ~FG cefg 18559
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1777  ax-4 1791  ax-5 1888  ax-6 1947  ax-7 1992  ax-8 2083  ax-9 2091  ax-10 2112  ax-11 2126  ax-12 2141  ax-13 2344  ax-ext 2769  ax-rep 5081  ax-sep 5094  ax-nul 5101  ax-pow 5157  ax-pr 5221  ax-un 7319  ax-cnex 10439  ax-resscn 10440  ax-1cn 10441  ax-icn 10442  ax-addcl 10443  ax-addrcl 10444  ax-mulcl 10445  ax-mulrcl 10446  ax-mulcom 10447  ax-addass 10448  ax-mulass 10449  ax-distr 10450  ax-i2m1 10451  ax-1ne0 10452  ax-1rid 10453  ax-rnegex 10454  ax-rrecex 10455  ax-cnre 10456  ax-pre-lttri 10457  ax-pre-lttrn 10458  ax-pre-ltadd 10459  ax-pre-mulgt0 10460
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 843  df-3or 1081  df-3an 1082  df-tru 1525  df-ex 1762  df-nf 1766  df-sb 2043  df-mo 2576  df-eu 2612  df-clab 2776  df-cleq 2788  df-clel 2863  df-nfc 2935  df-ne 2985  df-nel 3091  df-ral 3110  df-rex 3111  df-reu 3112  df-rab 3114  df-v 3439  df-sbc 3707  df-csb 3812  df-dif 3862  df-un 3864  df-in 3866  df-ss 3874  df-pss 3876  df-nul 4212  df-if 4382  df-pw 4455  df-sn 4473  df-pr 4475  df-tp 4477  df-op 4479  df-ot 4481  df-uni 4746  df-int 4783  df-iun 4827  df-br 4963  df-opab 5025  df-mpt 5042  df-tr 5064  df-id 5348  df-eprel 5353  df-po 5362  df-so 5363  df-fr 5402  df-we 5404  df-xp 5449  df-rel 5450  df-cnv 5451  df-co 5452  df-dm 5453  df-rn 5454  df-res 5455  df-ima 5456  df-pred 6023  df-ord 6069  df-on 6070  df-lim 6071  df-suc 6072  df-iota 6189  df-fun 6227  df-fn 6228  df-f 6229  df-f1 6230  df-fo 6231  df-f1o 6232  df-fv 6233  df-riota 6977  df-ov 7019  df-oprab 7020  df-mpo 7021  df-om 7437  df-1st 7545  df-2nd 7546  df-wrecs 7798  df-recs 7860  df-rdg 7898  df-1o 7953  df-2o 7954  df-oadd 7957  df-er 8139  df-map 8258  df-en 8358  df-dom 8359  df-sdom 8360  df-fin 8361  df-card 9214  df-pnf 10523  df-mnf 10524  df-xr 10525  df-ltxr 10526  df-le 10527  df-sub 10719  df-neg 10720  df-nn 11487  df-n0 11746  df-z 11830  df-uz 12094  df-fz 12743  df-fzo 12884  df-hash 13541  df-word 13708  df-concat 13769  df-s1 13794  df-substr 13839  df-pfx 13869  df-splice 13948  df-s2 14046
This theorem is referenced by:  efgtval  18576  efgval2  18577  efgtlen  18579  efginvrel2  18580  efgsp1  18590  efgredleme  18596  efgredlem  18600  efgrelexlemb  18603  efgcpbllemb  18608  frgpnabllem1  18716
  Copyright terms: Public domain W3C validator