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

Theorem efgval2 19789
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
efgval2 = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)}
Distinct variable groups:   𝑦,𝑟,𝑧   𝑣,𝑛,𝑤,𝑦,𝑧,𝑟,𝑥   𝑛,𝑀   𝑣,𝑟,𝑤,𝑥,𝑀   𝑇,𝑟,𝑥   𝑛,𝑊,𝑟,𝑣,𝑤   𝑥,𝑦,𝑧,𝑊   ,𝑟,𝑥,𝑦,𝑧   𝑛,𝐼,𝑟,𝑣,𝑤,𝑥,𝑦,𝑧
Allowed substitution hints:   (𝑤,𝑣,𝑛)   𝑇(𝑦,𝑧,𝑤,𝑣,𝑛)   𝑀(𝑦,𝑧)

Proof of Theorem efgval2
Dummy variables 𝑎 𝑏 𝑢 𝑚 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 efgval.w . . 3 𝑊 = ( I ‘Word (𝐼 × 2o))
2 efgval.r . . 3 = ( ~FG𝐼)
31, 2efgval 19782 . 2 = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
4 efgval2.m . . . . . . . . . . 11 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
5 efgval2.t . . . . . . . . . . 11 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
61, 2, 4, 5efgtf 19787 . . . . . . . . . 10 (𝑥𝑊 → ((𝑇𝑥) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ∧ (𝑇𝑥):((0...(♯‘𝑥)) × (𝐼 × 2o))⟶𝑊))
76simpld 499 . . . . . . . . 9 (𝑥𝑊 → (𝑇𝑥) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
87rneqd 5928 . . . . . . . 8 (𝑥𝑊 → ran (𝑇𝑥) = ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
98sseq1d 3968 . . . . . . 7 (𝑥𝑊 → (ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟))
10 dfss3 3926 . . . . . . . 8 (ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟 ↔ ∀𝑎 ∈ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))𝑎 ∈ [𝑥]𝑟)
11 ovex 7443 . . . . . . . . . . 11 (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ∈ V
1211rgen2w 3084 . . . . . . . . . 10 𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ∈ V
13 eqid 2763 . . . . . . . . . . 11 (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))
14 vex 3459 . . . . . . . . . . . . 13 𝑎 ∈ V
15 vex 3459 . . . . . . . . . . . . 13 𝑥 ∈ V
1614, 15elec 8737 . . . . . . . . . . . 12 (𝑎 ∈ [𝑥]𝑟𝑥𝑟𝑎)
17 breq2 5113 . . . . . . . . . . . 12 (𝑎 = (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) → (𝑥𝑟𝑎𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
1816, 17bitrid 286 . . . . . . . . . . 11 (𝑎 = (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) → (𝑎 ∈ [𝑥]𝑟𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
1913, 18ralrnmpo 7549 . . . . . . . . . 10 (∀𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ∈ V → (∀𝑎 ∈ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))𝑎 ∈ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
2012, 19ax-mp 5 . . . . . . . . 9 (∀𝑎 ∈ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))𝑎 ∈ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))
21 id 23 . . . . . . . . . . . . . . . 16 (𝑢 = ⟨𝑎, 𝑏⟩ → 𝑢 = ⟨𝑎, 𝑏⟩)
22 fveq2 6881 . . . . . . . . . . . . . . . . 17 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑀𝑢) = (𝑀‘⟨𝑎, 𝑏⟩))
23 df-ov 7413 . . . . . . . . . . . . . . . . 17 (𝑎𝑀𝑏) = (𝑀‘⟨𝑎, 𝑏⟩)
2422, 23eqtr4di 2816 . . . . . . . . . . . . . . . 16 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑀𝑢) = (𝑎𝑀𝑏))
2521, 24s2eqd 14896 . . . . . . . . . . . . . . 15 (𝑢 = ⟨𝑎, 𝑏⟩ → ⟨“𝑢(𝑀𝑢)”⟩ = ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩)
2625oteq3d 4852 . . . . . . . . . . . . . 14 (𝑢 = ⟨𝑎, 𝑏⟩ → ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩ = ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩)
2726oveq2d 7426 . . . . . . . . . . . . 13 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) = (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩))
2827breq2d 5121 . . . . . . . . . . . 12 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩)))
2928ralxp 5827 . . . . . . . . . . 11 (∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩))
30 eqidd 2764 . . . . . . . . . . . . . . . . 17 ((𝑎𝐼𝑏 ∈ 2o) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, 𝑏⟩)
314efgmval 19777 . . . . . . . . . . . . . . . . 17 ((𝑎𝐼𝑏 ∈ 2o) → (𝑎𝑀𝑏) = ⟨𝑎, (1o𝑏)⟩)
3230, 31s2eqd 14896 . . . . . . . . . . . . . . . 16 ((𝑎𝐼𝑏 ∈ 2o) → ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩ = ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩)
3332oteq3d 4852 . . . . . . . . . . . . . . 15 ((𝑎𝐼𝑏 ∈ 2o) → ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩ = ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)
3433oveq2d 7426 . . . . . . . . . . . . . 14 ((𝑎𝐼𝑏 ∈ 2o) → (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) = (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3534breq2d 5121 . . . . . . . . . . . . 13 ((𝑎𝐼𝑏 ∈ 2o) → (𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
3635ralbidva 3186 . . . . . . . . . . . 12 (𝑎𝐼 → (∀𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ ∀𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
3736ralbiia 3109 . . . . . . . . . . 11 (∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3829, 37bitri 278 . . . . . . . . . 10 (∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3938ralbii 3111 . . . . . . . . 9 (∀𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4020, 39bitri 278 . . . . . . . 8 (∀𝑎 ∈ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))𝑎 ∈ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4110, 40bitri 278 . . . . . . 7 (ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
429, 41bitrdi 290 . . . . . 6 (𝑥𝑊 → (ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
4342ralbiia 3109 . . . . 5 (∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4443anbi2i 634 . . . 4 ((𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟) ↔ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
4544abbii 2830 . . 3 {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)} = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
4645inteqi 4916 . 2 {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)} = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
473, 46eqtr4i 2789 1 = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)}
Colors of variables: wff setvar class
Syntax hints:  wb 209  wa 400   = wceq 1570  wcel 2143  {cab 2741  wral 3079  Vcvv 3455  cdif 3902  wss 3905  cop 4595  cotp 4597   cint 4912   class class class wbr 5109  cmpt 5192   I cid 5555   × cxp 5659  ran crn 5662  wf 6532  cfv 6536  (class class class)co 7410  cmpo 7412  1oc1o 8442  2oc2o 8443   Er wer 8687  [cec 8688  0cc0 11095  ...cfz 13530  chash 14362  Word cword 14546   splice csplice 14782  ⟨“cs2 14874   ~FG cefg 19771
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-8 2145  ax-9 2153  ax-10 2176  ax-11 2192  ax-12 2213  ax-ext 2735  ax-rep 5238  ax-sep 5257  ax-nul 5269  ax-pow 5336  ax-pr 5404  ax-un 7732  ax-cnex 11151  ax-resscn 11152  ax-1cn 11153  ax-icn 11154  ax-addcl 11155  ax-addrcl 11156  ax-mulcl 11157  ax-mulrcl 11158  ax-mulcom 11159  ax-addass 11160  ax-mulass 11161  ax-distr 11162  ax-i2m1 11163  ax-1ne0 11164  ax-1rid 11165  ax-rnegex 11166  ax-rrecex 11167  ax-cnre 11168  ax-pre-lttri 11169  ax-pre-lttrn 11170  ax-pre-ltadd 11171  ax-pre-mulgt0 11172
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-nfc 2912  df-ne 2959  df-nel 3065  df-ral 3080  df-rex 3090  df-reu 3370  df-rab 3417  df-v 3457  df-sbc 3745  df-csb 3854  df-dif 3908  df-un 3910  df-in 3912  df-ss 3922  df-pss 3925  df-nul 4287  df-if 4488  df-pw 4564  df-sn 4590  df-pr 4592  df-op 4596  df-ot 4598  df-uni 4873  df-int 4913  df-iun 4958  df-br 5110  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5556  df-eprel 5561  df-po 5569  df-so 5570  df-fr 5614  df-we 5616  df-xp 5667  df-rel 5668  df-cnv 5669  df-co 5670  df-dm 5671  df-rn 5672  df-res 5673  df-ima 5674  df-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-riota 7367  df-ov 7413  df-oprab 7414  df-mpo 7415  df-om 7859  df-1st 7982  df-2nd 7983  df-frecs 8274  df-wrecs 8305  df-recs 8354  df-rdg 8393  df-1o 8449  df-2o 8450  df-er 8690  df-ec 8692  df-map 8822  df-en 8940  df-dom 8941  df-sdom 8942  df-fin 8943  df-card 9921  df-pnf 11240  df-mnf 11241  df-xr 11242  df-ltxr 11243  df-le 11244  df-sub 11438  df-neg 11439  df-nn 12229  df-n0 12500  df-z 12587  df-uz 12858  df-fz 13531  df-fzo 13679  df-hash 14363  df-word 14547  df-concat 14604  df-s1 14630  df-substr 14675  df-pfx 14705  df-splice 14783  df-s2 14881  df-efg 19774
This theorem is referenced by:  efgi2  19790  efgrelexlemb  19815  efgcpbllemb  19820
  Copyright terms: Public domain W3C validator