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

Theorem efgval2 19506
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 19499 . 2 = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
4 efgval2.m . . . . . . . . . . 11 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
5 efgval2.t . . . . . . . . . . 11 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
61, 2, 4, 5efgtf 19504 . . . . . . . . . 10 (𝑥𝑊 → ((𝑇𝑥) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ∧ (𝑇𝑥):((0...(♯‘𝑥)) × (𝐼 × 2o))⟶𝑊))
76simpld 495 . . . . . . . . 9 (𝑥𝑊 → (𝑇𝑥) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
87rneqd 5893 . . . . . . . 8 (𝑥𝑊 → ran (𝑇𝑥) = ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
98sseq1d 3975 . . . . . . 7 (𝑥𝑊 → (ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟))
10 dfss3 3932 . . . . . . . 8 (ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟 ↔ ∀𝑎 ∈ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))𝑎 ∈ [𝑥]𝑟)
11 ovex 7390 . . . . . . . . . . 11 (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ∈ V
1211rgen2w 3069 . . . . . . . . . 10 𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ∈ V
13 eqid 2736 . . . . . . . . . . 11 (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) = (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))
14 vex 3449 . . . . . . . . . . . . 13 𝑎 ∈ V
15 vex 3449 . . . . . . . . . . . . 13 𝑥 ∈ V
1614, 15elec 8692 . . . . . . . . . . . 12 (𝑎 ∈ [𝑥]𝑟𝑥𝑟𝑎)
17 breq2 5109 . . . . . . . . . . . 12 (𝑎 = (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) → (𝑥𝑟𝑎𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
1816, 17bitrid 282 . . . . . . . . . . 11 (𝑎 = (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) → (𝑎 ∈ [𝑥]𝑟𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)))
1913, 18ralrnmpo 7494 . . . . . . . . . 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 6842 . . . . . . . . . . . . . . . . 17 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑀𝑢) = (𝑀‘⟨𝑎, 𝑏⟩))
23 df-ov 7360 . . . . . . . . . . . . . . . . 17 (𝑎𝑀𝑏) = (𝑀‘⟨𝑎, 𝑏⟩)
2422, 23eqtr4di 2794 . . . . . . . . . . . . . . . 16 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑀𝑢) = (𝑎𝑀𝑏))
2521, 24s2eqd 14752 . . . . . . . . . . . . . . 15 (𝑢 = ⟨𝑎, 𝑏⟩ → ⟨“𝑢(𝑀𝑢)”⟩ = ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩)
2625oteq3d 4844 . . . . . . . . . . . . . 14 (𝑢 = ⟨𝑎, 𝑏⟩ → ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩ = ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩)
2726oveq2d 7373 . . . . . . . . . . . . 13 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) = (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩))
2827breq2d 5117 . . . . . . . . . . . 12 (𝑢 = ⟨𝑎, 𝑏⟩ → (𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩)))
2928ralxp 5797 . . . . . . . . . . 11 (∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩))
30 eqidd 2737 . . . . . . . . . . . . . . . . 17 ((𝑎𝐼𝑏 ∈ 2o) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, 𝑏⟩)
314efgmval 19494 . . . . . . . . . . . . . . . . 17 ((𝑎𝐼𝑏 ∈ 2o) → (𝑎𝑀𝑏) = ⟨𝑎, (1o𝑏)⟩)
3230, 31s2eqd 14752 . . . . . . . . . . . . . . . 16 ((𝑎𝐼𝑏 ∈ 2o) → ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩ = ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩)
3332oteq3d 4844 . . . . . . . . . . . . . . 15 ((𝑎𝐼𝑏 ∈ 2o) → ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩ = ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)
3433oveq2d 7373 . . . . . . . . . . . . . 14 ((𝑎𝐼𝑏 ∈ 2o) → (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) = (𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3534breq2d 5117 . . . . . . . . . . . . 13 ((𝑎𝐼𝑏 ∈ 2o) → (𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
3635ralbidva 3172 . . . . . . . . . . . 12 (𝑎𝐼 → (∀𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ ∀𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
3736ralbiia 3094 . . . . . . . . . . 11 (∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩(𝑎𝑀𝑏)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3829, 37bitri 274 . . . . . . . . . 10 (∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
3938ralbii 3096 . . . . . . . . 9 (∀𝑚 ∈ (0...(♯‘𝑥))∀𝑢 ∈ (𝐼 × 2o)𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩) ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4020, 39bitri 274 . . . . . . . 8 (∀𝑎 ∈ ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩))𝑎 ∈ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4110, 40bitri 274 . . . . . . 7 (ran (𝑚 ∈ (0...(♯‘𝑥)), 𝑢 ∈ (𝐼 × 2o) ↦ (𝑥 splice ⟨𝑚, 𝑚, ⟨“𝑢(𝑀𝑢)”⟩⟩)) ⊆ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
429, 41bitrdi 286 . . . . . 6 (𝑥𝑊 → (ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ∀𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
4342ralbiia 3094 . . . . 5 (∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟 ↔ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))
4443anbi2i 623 . . . 4 ((𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟) ↔ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩)))
4544abbii 2806 . . 3 {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)} = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
4645inteqi 4911 . 2 {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)} = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊𝑚 ∈ (0...(♯‘𝑥))∀𝑎𝐼𝑏 ∈ 2o 𝑥𝑟(𝑥 splice ⟨𝑚, 𝑚, ⟨“⟨𝑎, 𝑏⟩⟨𝑎, (1o𝑏)⟩”⟩⟩))}
473, 46eqtr4i 2767 1 = {𝑟 ∣ (𝑟 Er 𝑊 ∧ ∀𝑥𝑊 ran (𝑇𝑥) ⊆ [𝑥]𝑟)}
Colors of variables: wff setvar class
Syntax hints:  wb 205  wa 396   = wceq 1541  wcel 2106  {cab 2713  wral 3064  Vcvv 3445  cdif 3907  wss 3910  cop 4592  cotp 4594   cint 4907   class class class wbr 5105  cmpt 5188   I cid 5530   × cxp 5631  ran crn 5634  wf 6492  cfv 6496  (class class class)co 7357  cmpo 7359  1oc1o 8405  2oc2o 8406   Er wer 8645  [cec 8646  0cc0 11051  ...cfz 13424  chash 14230  Word cword 14402   splice csplice 14637  ⟨“cs2 14730   ~FG cefg 19488
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2707  ax-rep 5242  ax-sep 5256  ax-nul 5263  ax-pow 5320  ax-pr 5384  ax-un 7672  ax-cnex 11107  ax-resscn 11108  ax-1cn 11109  ax-icn 11110  ax-addcl 11111  ax-addrcl 11112  ax-mulcl 11113  ax-mulrcl 11114  ax-mulcom 11115  ax-addass 11116  ax-mulass 11117  ax-distr 11118  ax-i2m1 11119  ax-1ne0 11120  ax-1rid 11121  ax-rnegex 11122  ax-rrecex 11123  ax-cnre 11124  ax-pre-lttri 11125  ax-pre-lttrn 11126  ax-pre-ltadd 11127  ax-pre-mulgt0 11128
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3or 1088  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2889  df-ne 2944  df-nel 3050  df-ral 3065  df-rex 3074  df-reu 3354  df-rab 3408  df-v 3447  df-sbc 3740  df-csb 3856  df-dif 3913  df-un 3915  df-in 3917  df-ss 3927  df-pss 3929  df-nul 4283  df-if 4487  df-pw 4562  df-sn 4587  df-pr 4589  df-op 4593  df-ot 4595  df-uni 4866  df-int 4908  df-iun 4956  df-br 5106  df-opab 5168  df-mpt 5189  df-tr 5223  df-id 5531  df-eprel 5537  df-po 5545  df-so 5546  df-fr 5588  df-we 5590  df-xp 5639  df-rel 5640  df-cnv 5641  df-co 5642  df-dm 5643  df-rn 5644  df-res 5645  df-ima 5646  df-pred 6253  df-ord 6320  df-on 6321  df-lim 6322  df-suc 6323  df-iota 6448  df-fun 6498  df-fn 6499  df-f 6500  df-f1 6501  df-fo 6502  df-f1o 6503  df-fv 6504  df-riota 7313  df-ov 7360  df-oprab 7361  df-mpo 7362  df-om 7803  df-1st 7921  df-2nd 7922  df-frecs 8212  df-wrecs 8243  df-recs 8317  df-rdg 8356  df-1o 8412  df-2o 8413  df-er 8648  df-ec 8650  df-map 8767  df-en 8884  df-dom 8885  df-sdom 8886  df-fin 8887  df-card 9875  df-pnf 11191  df-mnf 11192  df-xr 11193  df-ltxr 11194  df-le 11195  df-sub 11387  df-neg 11388  df-nn 12154  df-n0 12414  df-z 12500  df-uz 12764  df-fz 13425  df-fzo 13568  df-hash 14231  df-word 14403  df-concat 14459  df-s1 14484  df-substr 14529  df-pfx 14559  df-splice 14638  df-s2 14737  df-efg 19491
This theorem is referenced by:  efgi2  19507  efgrelexlemb  19532  efgcpbllemb  19537
  Copyright terms: Public domain W3C validator