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

Theorem efgval2 19742
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 19735 . 2 = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
4 efgval2.m . . . . . . . . . . 11 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
5 efgval2.t . . . . . . . . . . 11 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
61, 2, 4, 5efgtf 19740 . . . . . . . . . 10 (𝑥𝑊 → ((𝑇𝑥) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ∧ (𝑇𝑥):((0...(♯‘𝑥)) × (𝐼 × 2o))⟶𝑊))
76simpld 494 . . . . . . . . 9 (𝑥𝑊 → (𝑇𝑥) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
87rneqd 5949 . . . . . . . 8 (𝑥𝑊 → ran (𝑇𝑥) = ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
98sseq1d 4015 . . . . . . 7 (𝑥𝑊 → (ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟))
10 dfss3 3972 . . . . . . . 8 (ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟 ↔ ∀𝑎 ∈ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))𝑎 ∈ [𝑥]𝑟)
11 ovex 7464 . . . . . . . . . . 11 (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ∈ V
1211rgen2w 3066 . . . . . . . . . 10 𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ∈ V
13 eqid 2737 . . . . . . . . . . 11 (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))
14 vex 3484 . . . . . . . . . . . . 13 𝑎 ∈ V
15 vex 3484 . . . . . . . . . . . . 13 𝑥 ∈ V
1614, 15elec 8791 . . . . . . . . . . . 12 (𝑎 ∈ [𝑥]𝑟𝑥𝑟𝑎)
17 breq2 5147 . . . . . . . . . . . 12 (𝑎 = (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) → (𝑥𝑟𝑎𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
1816, 17bitrid 283 . . . . . . . . . . 11 (𝑎 = (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) → (𝑎 ∈ [𝑥]𝑟𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
1913, 18ralrnmpo 7572 . . . . . . . . . 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 22 . . . . . . . . . . . . . . . 16 (𝑢 = ⟨𝑎, 𝑏⟩ → 𝑢 = ⟨𝑎, 𝑏⟩)
22 fveq2 6906 . . . . . . . . . . . . . . . . 17 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑀𝑢) = (𝑀‘⟨𝑎, 𝑏⟩))
23 df-ov 7434 . . . . . . . . . . . . . . . . 17 (𝑎𝑀𝑏) = (𝑀‘⟨𝑎, 𝑏⟩)
2422, 23eqtr4di 2795 . . . . . . . . . . . . . . . 16 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑀𝑢) = (𝑎𝑀𝑏))
2521, 24s2eqd 14902 . . . . . . . . . . . . . . 15 (𝑢 = ⟨𝑎, 𝑏⟩ → ⟨“𝑢(𝑀𝑢)”⟩ = ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩)
2625oteq3d 4887 . . . . . . . . . . . . . 14 (𝑢 = ⟨𝑎, 𝑏⟩ → ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩ = ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩)
2726oveq2d 7447 . . . . . . . . . . . . 13 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) = (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩))
2827breq2d 5155 . . . . . . . . . . . 12 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩)))
2928ralxp 5852 . . . . . . . . . . 11 (∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩))
30 eqidd 2738 . . . . . . . . . . . . . . . . 17 ((𝑎𝐼𝑏 ∈ 2o) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, 𝑏⟩)
314efgmval 19730 . . . . . . . . . . . . . . . . 17 ((𝑎𝐼𝑏 ∈ 2o) → (𝑎𝑀𝑏) = ⟨𝑎, (1o𝑏)⟩)
3230, 31s2eqd 14902 . . . . . . . . . . . . . . . 16 ((𝑎𝐼𝑏 ∈ 2o) → ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩ = ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩)
3332oteq3d 4887 . . . . . . . . . . . . . . 15 ((𝑎𝐼𝑏 ∈ 2o) → ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩ = ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)
3433oveq2d 7447 . . . . . . . . . . . . . 14 ((𝑎𝐼𝑏 ∈ 2o) → (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) = (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3534breq2d 5155 . . . . . . . . . . . . 13 ((𝑎𝐼𝑏 ∈ 2o) → (𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
3635ralbidva 3176 . . . . . . . . . . . 12 (𝑎𝐼 → (∀𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ ∀𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
3736ralbiia 3091 . . . . . . . . . . 11 (∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3829, 37bitri 275 . . . . . . . . . 10 (∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3938ralbii 3093 . . . . . . . . 9 (∀𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4020, 39bitri 275 . . . . . . . 8 (∀𝑎 ∈ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))𝑎 ∈ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4110, 40bitri 275 . . . . . . 7 (ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
429, 41bitrdi 287 . . . . . 6 (𝑥𝑊 → (ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
4342ralbiia 3091 . . . . 5 (∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4443anbi2i 623 . . . 4 ((𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟) ↔ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
4544abbii 2809 . . 3 {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)} = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
4645inteqi 4950 . 2 {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)} = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
473, 46eqtr4i 2768 1 = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)}
Colors of variables: wff setvar class
Syntax hints:  wb 206  wa 395   = wceq 1540  wcel 2108  {cab 2714  wral 3061  Vcvv 3480  cdif 3948  wss 3951  cop 4632  cotp 4634   cint 4946   class class class wbr 5143  cmpt 5225   I cid 5577   × cxp 5683  ran crn 5686  wf 6557  cfv 6561  (class class class)co 7431  cmpo 7433  1oc1o 8499  2oc2o 8500   Er wer 8742  [cec 8743  0cc0 11155  ...cfz 13547  chash 14369  Word cword 14552   splice csplice 14787  ⟨“cs2 14880   ~FG cefg 19724
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 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-11 2157  ax-12 2177  ax-ext 2708  ax-rep 5279  ax-sep 5296  ax-nul 5306  ax-pow 5365  ax-pr 5432  ax-un 7755  ax-cnex 11211  ax-resscn 11212  ax-1cn 11213  ax-icn 11214  ax-addcl 11215  ax-addrcl 11216  ax-mulcl 11217  ax-mulrcl 11218  ax-mulcom 11219  ax-addass 11220  ax-mulass 11221  ax-distr 11222  ax-i2m1 11223  ax-1ne0 11224  ax-1rid 11225  ax-rnegex 11226  ax-rrecex 11227  ax-cnre 11228  ax-pre-lttri 11229  ax-pre-lttrn 11230  ax-pre-ltadd 11231  ax-pre-mulgt0 11232
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2065  df-mo 2540  df-eu 2569  df-clab 2715  df-cleq 2729  df-clel 2816  df-nfc 2892  df-ne 2941  df-nel 3047  df-ral 3062  df-rex 3071  df-reu 3381  df-rab 3437  df-v 3482  df-sbc 3789  df-csb 3900  df-dif 3954  df-un 3956  df-in 3958  df-ss 3968  df-pss 3971  df-nul 4334  df-if 4526  df-pw 4602  df-sn 4627  df-pr 4629  df-op 4633  df-ot 4635  df-uni 4908  df-int 4947  df-iun 4993  df-br 5144  df-opab 5206  df-mpt 5226  df-tr 5260  df-id 5578  df-eprel 5584  df-po 5592  df-so 5593  df-fr 5637  df-we 5639  df-xp 5691  df-rel 5692  df-cnv 5693  df-co 5694  df-dm 5695  df-rn 5696  df-res 5697  df-ima 5698  df-pred 6321  df-ord 6387  df-on 6388  df-lim 6389  df-suc 6390  df-iota 6514  df-fun 6563  df-fn 6564  df-f 6565  df-f1 6566  df-fo 6567  df-f1o 6568  df-fv 6569  df-riota 7388  df-ov 7434  df-oprab 7435  df-mpo 7436  df-om 7888  df-1st 8014  df-2nd 8015  df-frecs 8306  df-wrecs 8337  df-recs 8411  df-rdg 8450  df-1o 8506  df-2o 8507  df-er 8745  df-ec 8747  df-map 8868  df-en 8986  df-dom 8987  df-sdom 8988  df-fin 8989  df-card 9979  df-pnf 11297  df-mnf 11298  df-xr 11299  df-ltxr 11300  df-le 11301  df-sub 11494  df-neg 11495  df-nn 12267  df-n0 12527  df-z 12614  df-uz 12879  df-fz 13548  df-fzo 13695  df-hash 14370  df-word 14553  df-concat 14609  df-s1 14634  df-substr 14679  df-pfx 14709  df-splice 14788  df-s2 14887  df-efg 19727
This theorem is referenced by:  efgi2  19743  efgrelexlemb  19768  efgcpbllemb  19773
  Copyright terms: Public domain W3C validator