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

Theorem efgtf 19601
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 6900 . . . . . . . . . 10 ( I ‘Word (𝐼 × 2o)) ⊆ Word (𝐼 × 2o)
31, 2eqsstri 3982 . . . . . . . . 9 𝑊 ⊆ Word (𝐼 × 2o)
4 simpl 482 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑋𝑊)
53, 4sselid 3933 . . . . . . . 8 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑋 ∈ Word (𝐼 × 2o))
6 simprr 772 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑏 ∈ (𝐼 × 2o))
7 efgval2.m . . . . . . . . . . . 12 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
87efgmf 19592 . . . . . . . . . . 11 𝑀:(𝐼 × 2o)⟶(𝐼 × 2o)
98ffvelcdmi 7017 . . . . . . . . . 10 (𝑏 ∈ (𝐼 × 2o) → (𝑀𝑏) ∈ (𝐼 × 2o))
109ad2antll 729 . . . . . . . . 9 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑀𝑏) ∈ (𝐼 × 2o))
116, 10s2cld 14778 . . . . . . . 8 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → ⟨“𝑏(𝑀𝑏)”⟩ ∈ Word (𝐼 × 2o))
12 splcl 14658 . . . . . . . 8 ((𝑋 ∈ Word (𝐼 × 2o) ∧ ⟨“𝑏(𝑀𝑏)”⟩ ∈ Word (𝐼 × 2o)) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ Word (𝐼 × 2o))
135, 11, 12syl2anc 584 . . . . . . 7 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ Word (𝐼 × 2o))
141efgrcl 19594 . . . . . . . . 9 (𝑋𝑊 → (𝐼 ∈ V ∧ 𝑊 = Word (𝐼 × 2o)))
1514simprd 495 . . . . . . . 8 (𝑋𝑊𝑊 = Word (𝐼 × 2o))
1615adantr 480 . . . . . . 7 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → 𝑊 = Word (𝐼 × 2o))
1713, 16eleqtrrd 2831 . . . . . 6 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)) ∧ 𝑏 ∈ (𝐼 × 2o))) → (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊)
1817ralrimivva 3172 . . . . 5 (𝑋𝑊 → ∀𝑎 ∈ (0...(♯‘𝑋))∀𝑏 ∈ (𝐼 × 2o)(𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊)
19 eqid 2729 . . . . . 6 (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
2019fmpo 8003 . . . . 5 (∀𝑎 ∈ (0...(♯‘𝑋))∀𝑏 ∈ (𝐼 × 2o)(𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) ∈ 𝑊 ↔ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
2118, 20sylib 218 . . . 4 (𝑋𝑊 → (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
22 ovex 7382 . . . . 5 (0...(♯‘𝑋)) ∈ V
2314simpld 494 . . . . . 6 (𝑋𝑊𝐼 ∈ V)
24 2on 8401 . . . . . 6 2o ∈ On
25 xpexg 7686 . . . . . 6 ((𝐼 ∈ V ∧ 2o ∈ On) → (𝐼 × 2o) ∈ V)
2623, 24, 25sylancl 586 . . . . 5 (𝑋𝑊 → (𝐼 × 2o) ∈ V)
27 xpexg 7686 . . . . 5 (((0...(♯‘𝑋)) ∈ V ∧ (𝐼 × 2o) ∈ V) → ((0...(♯‘𝑋)) × (𝐼 × 2o)) ∈ V)
2822, 26, 27sylancr 587 . . . 4 (𝑋𝑊 → ((0...(♯‘𝑋)) × (𝐼 × 2o)) ∈ V)
2921, 28fexd 7163 . . 3 (𝑋𝑊 → (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∈ V)
30 fveq2 6822 . . . . . 6 (𝑢 = 𝑋 → (♯‘𝑢) = (♯‘𝑋))
3130oveq2d 7365 . . . . 5 (𝑢 = 𝑋 → (0...(♯‘𝑢)) = (0...(♯‘𝑋)))
32 eqidd 2730 . . . . 5 (𝑢 = 𝑋 → (𝐼 × 2o) = (𝐼 × 2o))
33 oveq1 7356 . . . . 5 (𝑢 = 𝑋 → (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) = (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
3431, 32, 33mpoeq123dv 7424 . . . 4 (𝑢 = 𝑋 → (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
35 efgval2.t . . . . 5 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
36 oteq1 4833 . . . . . . . . . 10 (𝑛 = 𝑎 → ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)
37 oteq2 4834 . . . . . . . . . 10 (𝑛 = 𝑎 → ⟨𝑎, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩)
3836, 37eqtrd 2764 . . . . . . . . 9 (𝑛 = 𝑎 → ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩)
3938oveq2d 7365 . . . . . . . 8 (𝑛 = 𝑎 → (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩) = (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩))
40 id 22 . . . . . . . . . . 11 (𝑤 = 𝑏𝑤 = 𝑏)
41 fveq2 6822 . . . . . . . . . . 11 (𝑤 = 𝑏 → (𝑀𝑤) = (𝑀𝑏))
4240, 41s2eqd 14770 . . . . . . . . . 10 (𝑤 = 𝑏 → ⟨“𝑤(𝑀𝑤)”⟩ = ⟨“𝑏(𝑀𝑏)”⟩)
4342oteq3d 4838 . . . . . . . . 9 (𝑤 = 𝑏 → ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩ = ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)
4443oveq2d 7365 . . . . . . . 8 (𝑤 = 𝑏 → (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑤(𝑀𝑤)”⟩⟩) = (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
4539, 44cbvmpov 7444 . . . . . . 7 (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑣)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
46 fveq2 6822 . . . . . . . . 9 (𝑣 = 𝑢 → (♯‘𝑣) = (♯‘𝑢))
4746oveq2d 7365 . . . . . . . 8 (𝑣 = 𝑢 → (0...(♯‘𝑣)) = (0...(♯‘𝑢)))
48 eqidd 2730 . . . . . . . 8 (𝑣 = 𝑢 → (𝐼 × 2o) = (𝐼 × 2o))
49 oveq1 7356 . . . . . . . 8 (𝑣 = 𝑢 → (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩) = (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩))
5047, 48, 49mpoeq123dv 7424 . . . . . . 7 (𝑣 = 𝑢 → (𝑎 ∈ (0...(♯‘𝑣)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5145, 50eqtrid 2776 . . . . . 6 (𝑣 = 𝑢 → (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)) = (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5251cbvmptv 5196 . . . . 5 (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩))) = (𝑢𝑊 ↦ (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5335, 52eqtri 2752 . . . 4 𝑇 = (𝑢𝑊 ↦ (𝑎 ∈ (0...(♯‘𝑢)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑢 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5434, 53fvmptg 6928 . . 3 ((𝑋𝑊 ∧ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∈ V) → (𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5529, 54mpdan 687 . 2 (𝑋𝑊 → (𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)))
5655feq1d 6634 . . 3 (𝑋𝑊 → ((𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊 ↔ (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊))
5721, 56mpbird 257 . 2 (𝑋𝑊 → (𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊)
5855, 57jca 511 1 (𝑋𝑊 → ((𝑇𝑋) = (𝑎 ∈ (0...(♯‘𝑋)), 𝑏 ∈ (𝐼 × 2o) ↦ (𝑋 splice ⟨𝑎, 𝑎, ⟨“𝑏(𝑀𝑏)”⟩⟩)) ∧ (𝑇𝑋):((0...(♯‘𝑋)) × (𝐼 × 2o))⟶𝑊))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1540  wcel 2109  wral 3044  Vcvv 3436  cdif 3900  cop 4583  cotp 4585  cmpt 5173   I cid 5513   × cxp 5617  Oncon0 6307  wf 6478  cfv 6482  (class class class)co 7349  cmpo 7351  1oc1o 8381  2oc2o 8382  0cc0 11009  ...cfz 13410  chash 14237  Word cword 14420   splice csplice 14655  ⟨“cs2 14748   ~FG cefg 19585
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 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5218  ax-sep 5235  ax-nul 5245  ax-pow 5304  ax-pr 5371  ax-un 7671  ax-cnex 11065  ax-resscn 11066  ax-1cn 11067  ax-icn 11068  ax-addcl 11069  ax-addrcl 11070  ax-mulcl 11071  ax-mulrcl 11072  ax-mulcom 11073  ax-addass 11074  ax-mulass 11075  ax-distr 11076  ax-i2m1 11077  ax-1ne0 11078  ax-1rid 11079  ax-rnegex 11080  ax-rrecex 11081  ax-cnre 11082  ax-pre-lttri 11083  ax-pre-lttrn 11084  ax-pre-ltadd 11085  ax-pre-mulgt0 11086
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-reu 3344  df-rab 3395  df-v 3438  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4285  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-ot 4586  df-uni 4859  df-int 4897  df-iun 4943  df-br 5093  df-opab 5155  df-mpt 5174  df-tr 5200  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6249  df-ord 6310  df-on 6311  df-lim 6312  df-suc 6313  df-iota 6438  df-fun 6484  df-fn 6485  df-f 6486  df-f1 6487  df-fo 6488  df-f1o 6489  df-fv 6490  df-riota 7306  df-ov 7352  df-oprab 7353  df-mpo 7354  df-om 7800  df-1st 7924  df-2nd 7925  df-frecs 8214  df-wrecs 8245  df-recs 8294  df-rdg 8332  df-1o 8388  df-2o 8389  df-er 8625  df-map 8755  df-en 8873  df-dom 8874  df-sdom 8875  df-fin 8876  df-card 9835  df-pnf 11151  df-mnf 11152  df-xr 11153  df-ltxr 11154  df-le 11155  df-sub 11349  df-neg 11350  df-nn 12129  df-n0 12385  df-z 12472  df-uz 12736  df-fz 13411  df-fzo 13558  df-hash 14238  df-word 14421  df-concat 14478  df-s1 14503  df-substr 14548  df-pfx 14578  df-splice 14656  df-s2 14755
This theorem is referenced by:  efgtval  19602  efgval2  19603  efgtlen  19605  efginvrel2  19606  efgsp1  19616  efgredleme  19622  efgredlem  19626  efgrelexlemb  19629  efgcpbllemb  19634  frgpnabllem1  19752
  Copyright terms: Public domain W3C validator