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

Theorem efgtf 19373
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 6877 . . . . . . . . . 10 ( I ‘Word (𝐼 × 2o)) ⊆ Word (𝐼 × 2o)
31, 2eqsstri 3960 . . . . . . . . 9 𝑊 ⊆ Word (𝐼 × 2o)
4 simpl 484 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑋𝑊)
53, 4sselid 3924 . . . . . . . 8 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑋 ∈ Word (𝐼 × 2o))
6 simprr 771 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑏 ∈ (𝐼 × 2o))
7 efgval2.m . . . . . . . . . . . 12 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
87efgmf 19364 . . . . . . . . . . 11 𝑀:(𝐼 × 2o)⟶(𝐼 × 2o)
98ffvelcdmi 6992 . . . . . . . . . 10 (𝑏 ∈ (𝐼 × 2o) → (𝑀𝑏) ∈ (𝐼 × 2o))
109ad2antll 727 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑀𝑏) ∈ (𝐼 × 2o))
116, 10s2cld 14629 . . . . . . . 8 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → ⟨“𝑏(𝑀𝑏)”⟩ ∈ Word (𝐼 × 2o))
12 splcl 14510 . . . . . . . 8 ((𝑋 ∈ Word (𝐼 × 2o) ∧ ⟨“𝑏(𝑀𝑏)”⟩ ∈ Word (𝐼 × 2o)) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ Word (𝐼 × 2o))
135, 11, 12syl2anc 585 . . . . . . 7 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ Word (𝐼 × 2o))
141efgrcl 19366 . . . . . . . . 9 (𝑋𝑊 → (𝐼 ∈ V ∧ 𝑊 = Word (𝐼 × 2o)))
1514simprd 497 . . . . . . . 8 (𝑋𝑊𝑊 = Word (𝐼 × 2o))
1615adantr 482 . . . . . . 7 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑊 = Word (𝐼 × 2o))
1713, 16eleqtrrd 2840 . . . . . 6 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊)
1817ralrimivva 3194 . . . . 5 (𝑋𝑊 → ∀𝑎 ∈ (0...(♯‘𝑋))∀𝑏 ∈ (𝐼 × 2o)(𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊)
19 eqid 2736 . . . . . 6 (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
2019fmpo 7940 . . . . 5 (∀𝑎 ∈ (0...(♯‘𝑋))∀𝑏 ∈ (𝐼 × 2o)(𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊 ↔ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
2118, 20sylib 217 . . . 4 (𝑋𝑊 → (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
22 ovex 7340 . . . . 5 (0...(♯‘𝑋)) ∈ V
2314simpld 496 . . . . . 6 (𝑋𝑊𝐼 ∈ V)
24 2on 8342 . . . . . 6 2o ∈ On
25 xpexg 7632 . . . . . 6 ((𝐼 ∈ V ∧ 2o ∈ On) → (𝐼 × 2o) ∈ V)
2623, 24, 25sylancl 587 . . . . 5 (𝑋𝑊 → (𝐼 × 2o) ∈ V)
27 xpexg 7632 . . . . 5 (((0...(♯‘𝑋)) ∈ V ∧ (𝐼 × 2o) ∈ V) → ((0...(♯‘𝑋)) × (𝐼 × 2o)) ∈ V)
2822, 26, 27sylancr 588 . . . 4 (𝑋𝑊 → ((0...(♯‘𝑋)) × (𝐼 × 2o)) ∈ V)
2921, 28fexd 7135 . . 3 (𝑋𝑊 → (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∈ V)
30 fveq2 6804 . . . . . 6 (𝑢 = 𝑋 → (♯‘𝑢) = (♯‘𝑋))
3130oveq2d 7323 . . . . 5 (𝑢 = 𝑋 → (0...(♯‘𝑢)) = (0...(♯‘𝑋)))
32 eqidd 2737 . . . . 5 (𝑢 = 𝑋 → (𝐼 × 2o) = (𝐼 × 2o))
33 oveq1 7314 . . . . 5 (𝑢 = 𝑋 → (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) = (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
3431, 32, 33mpoeq123dv 7382 . . . 4 (𝑢 = 𝑋 → (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
35 efgval2.t . . . . 5 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
36 oteq1 4818 . . . . . . . . . 10 (𝑛 = 𝑎 → ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)
37 oteq2 4819 . . . . . . . . . 10 (𝑛 = 𝑎 → ⟨𝑎, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩)
3836, 37eqtrd 2776 . . . . . . . . 9 (𝑛 = 𝑎 → ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩)
3938oveq2d 7323 . . . . . . . 8 (𝑛 = 𝑎 → (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩) = (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩))
40 id 22 . . . . . . . . . . 11 (𝑤 = 𝑏𝑤 = 𝑏)
41 fveq2 6804 . . . . . . . . . . 11 (𝑤 = 𝑏 → (𝑀𝑤) = (𝑀𝑏))
4240, 41s2eqd 14621 . . . . . . . . . 10 (𝑤 = 𝑏 → ⟨“𝑤(𝑀𝑤)”⟩ = ⟨“𝑏(𝑀𝑏)”⟩)
4342oteq3d 4823 . . . . . . . . 9 (𝑤 = 𝑏 → ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)
4443oveq2d 7323 . . . . . . . 8 (𝑤 = 𝑏 → (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩) = (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
4539, 44cbvmpov 7402 . . . . . . 7 (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑣)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
46 fveq2 6804 . . . . . . . . 9 (𝑣 = 𝑢 → (♯‘𝑣) = (♯‘𝑢))
4746oveq2d 7323 . . . . . . . 8 (𝑣 = 𝑢 → (0...(♯‘𝑣)) = (0...(♯‘𝑢)))
48 eqidd 2737 . . . . . . . 8 (𝑣 = 𝑢 → (𝐼 × 2o) = (𝐼 × 2o))
49 oveq1 7314 . . . . . . . 8 (𝑣 = 𝑢 → (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) = (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
5047, 48, 49mpoeq123dv 7382 . . . . . . 7 (𝑣 = 𝑢 → (𝑎 ∈ (0...(♯‘𝑣)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5145, 50eqtrid 2788 . . . . . 6 (𝑣 = 𝑢 → (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5251cbvmptv 5194 . . . . 5 (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩))) = (𝑢𝑊 ↦ (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5335, 52eqtri 2764 . . . 4 𝑇 = (𝑢𝑊 ↦ (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5434, 53fvmptg 6905 . . 3 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∈ V) → (𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5529, 54mpdan 685 . 2 (𝑋𝑊 → (𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5655feq1d 6615 . . 3 (𝑋𝑊 → ((𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊 ↔ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊))
5721, 56mpbird 257 . 2 (𝑋𝑊 → (𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
5855, 57jca 513 1 (𝑋𝑊 → ((𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∧ (𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 397   = wceq 1539  wcel 2104  wral 3062  Vcvv 3437  cdif 3889  cop 4571  cotp 4573  cmpt 5164   I cid 5499   × cxp 5598  Oncon0 6281  wf 6454  cfv 6458  (class class class)co 7307  cmpo 7309  1oc1o 8321  2oc2o 8322  0cc0 10917  ...cfz 13285  chash 14090  Word cword 14262   splice csplice 14507  ⟨“cs2 14599   ~FG cefg 19357
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1911  ax-6 1969  ax-7 2009  ax-8 2106  ax-9 2114  ax-10 2135  ax-11 2152  ax-12 2169  ax-ext 2707  ax-rep 5218  ax-sep 5232  ax-nul 5239  ax-pow 5297  ax-pr 5361  ax-un 7620  ax-cnex 10973  ax-resscn 10974  ax-1cn 10975  ax-icn 10976  ax-addcl 10977  ax-addrcl 10978  ax-mulcl 10979  ax-mulrcl 10980  ax-mulcom 10981  ax-addass 10982  ax-mulass 10983  ax-distr 10984  ax-i2m1 10985  ax-1ne0 10986  ax-1rid 10987  ax-rnegex 10988  ax-rrecex 10989  ax-cnre 10990  ax-pre-lttri 10991  ax-pre-lttrn 10992  ax-pre-ltadd 10993  ax-pre-mulgt0 10994
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 846  df-3or 1088  df-3an 1089  df-tru 1542  df-fal 1552  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2887  df-ne 2942  df-nel 3048  df-ral 3063  df-rex 3072  df-reu 3286  df-rab 3287  df-v 3439  df-sbc 3722  df-csb 3838  df-dif 3895  df-un 3897  df-in 3899  df-ss 3909  df-pss 3911  df-nul 4263  df-if 4466  df-pw 4541  df-sn 4566  df-pr 4568  df-op 4572  df-ot 4574  df-uni 4845  df-int 4887  df-iun 4933  df-br 5082  df-opab 5144  df-mpt 5165  df-tr 5199  df-id 5500  df-eprel 5506  df-po 5514  df-so 5515  df-fr 5555  df-we 5557  df-xp 5606  df-rel 5607  df-cnv 5608  df-co 5609  df-dm 5610  df-rn 5611  df-res 5612  df-ima 5613  df-pred 6217  df-ord 6284  df-on 6285  df-lim 6286  df-suc 6287  df-iota 6410  df-fun 6460  df-fn 6461  df-f 6462  df-f1 6463  df-fo 6464  df-f1o 6465  df-fv 6466  df-riota 7264  df-ov 7310  df-oprab 7311  df-mpo 7312  df-om 7745  df-1st 7863  df-2nd 7864  df-frecs 8128  df-wrecs 8159  df-recs 8233  df-rdg 8272  df-1o 8328  df-2o 8329  df-er 8529  df-map 8648  df-en 8765  df-dom 8766  df-sdom 8767  df-fin 8768  df-card 9741  df-pnf 11057  df-mnf 11058  df-xr 11059  df-ltxr 11060  df-le 11061  df-sub 11253  df-neg 11254  df-nn 12020  df-n0 12280  df-z 12366  df-uz 12629  df-fz 13286  df-fzo 13429  df-hash 14091  df-word 14263  df-concat 14319  df-s1 14346  df-substr 14399  df-pfx 14429  df-splice 14508  df-s2 14606
This theorem is referenced by:  efgtval  19374  efgval2  19375  efgtlen  19377  efginvrel2  19378  efgsp1  19388  efgredleme  19394  efgredlem  19398  efgrelexlemb  19401  efgcpbllemb  19406  frgpnabllem1  19519
  Copyright terms: Public domain W3C validator