This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Lemma for efgrelex . Define an auxiliary equivalence relation L such that A L B if there are sequences from A to B passing through the same reduced word. (Contributed by Mario Carneiro, 1-Oct-2015)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | efgval.w | ⊢ 𝑊 = ( I ‘ Word ( 𝐼 × 2o ) ) | |
| efgval.r | ⊢ ∼ = ( ~FG ‘ 𝐼 ) | ||
| efgval2.m | ⊢ 𝑀 = ( 𝑦 ∈ 𝐼 , 𝑧 ∈ 2o ↦ 〈 𝑦 , ( 1o ∖ 𝑧 ) 〉 ) | ||
| efgval2.t | ⊢ 𝑇 = ( 𝑣 ∈ 𝑊 ↦ ( 𝑛 ∈ ( 0 ... ( ♯ ‘ 𝑣 ) ) , 𝑤 ∈ ( 𝐼 × 2o ) ↦ ( 𝑣 splice 〈 𝑛 , 𝑛 , 〈“ 𝑤 ( 𝑀 ‘ 𝑤 ) ”〉 〉 ) ) ) | ||
| efgred.d | ⊢ 𝐷 = ( 𝑊 ∖ ∪ 𝑥 ∈ 𝑊 ran ( 𝑇 ‘ 𝑥 ) ) | ||
| efgred.s | ⊢ 𝑆 = ( 𝑚 ∈ { 𝑡 ∈ ( Word 𝑊 ∖ { ∅ } ) ∣ ( ( 𝑡 ‘ 0 ) ∈ 𝐷 ∧ ∀ 𝑘 ∈ ( 1 ..^ ( ♯ ‘ 𝑡 ) ) ( 𝑡 ‘ 𝑘 ) ∈ ran ( 𝑇 ‘ ( 𝑡 ‘ ( 𝑘 − 1 ) ) ) ) } ↦ ( 𝑚 ‘ ( ( ♯ ‘ 𝑚 ) − 1 ) ) ) | ||
| efgcpbllem.1 | ⊢ 𝐿 = { 〈 𝑖 , 𝑗 〉 ∣ ( { 𝑖 , 𝑗 } ⊆ 𝑊 ∧ ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) ) } | ||
| Assertion | efgcpbllema | ⊢ ( 𝑋 𝐿 𝑌 ↔ ( 𝑋 ∈ 𝑊 ∧ 𝑌 ∈ 𝑊 ∧ ( ( 𝐴 ++ 𝑋 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑌 ) ++ 𝐵 ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | efgval.w | ⊢ 𝑊 = ( I ‘ Word ( 𝐼 × 2o ) ) | |
| 2 | efgval.r | ⊢ ∼ = ( ~FG ‘ 𝐼 ) | |
| 3 | efgval2.m | ⊢ 𝑀 = ( 𝑦 ∈ 𝐼 , 𝑧 ∈ 2o ↦ 〈 𝑦 , ( 1o ∖ 𝑧 ) 〉 ) | |
| 4 | efgval2.t | ⊢ 𝑇 = ( 𝑣 ∈ 𝑊 ↦ ( 𝑛 ∈ ( 0 ... ( ♯ ‘ 𝑣 ) ) , 𝑤 ∈ ( 𝐼 × 2o ) ↦ ( 𝑣 splice 〈 𝑛 , 𝑛 , 〈“ 𝑤 ( 𝑀 ‘ 𝑤 ) ”〉 〉 ) ) ) | |
| 5 | efgred.d | ⊢ 𝐷 = ( 𝑊 ∖ ∪ 𝑥 ∈ 𝑊 ran ( 𝑇 ‘ 𝑥 ) ) | |
| 6 | efgred.s | ⊢ 𝑆 = ( 𝑚 ∈ { 𝑡 ∈ ( Word 𝑊 ∖ { ∅ } ) ∣ ( ( 𝑡 ‘ 0 ) ∈ 𝐷 ∧ ∀ 𝑘 ∈ ( 1 ..^ ( ♯ ‘ 𝑡 ) ) ( 𝑡 ‘ 𝑘 ) ∈ ran ( 𝑇 ‘ ( 𝑡 ‘ ( 𝑘 − 1 ) ) ) ) } ↦ ( 𝑚 ‘ ( ( ♯ ‘ 𝑚 ) − 1 ) ) ) | |
| 7 | efgcpbllem.1 | ⊢ 𝐿 = { 〈 𝑖 , 𝑗 〉 ∣ ( { 𝑖 , 𝑗 } ⊆ 𝑊 ∧ ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) ) } | |
| 8 | oveq2 | ⊢ ( 𝑖 = 𝑋 → ( 𝐴 ++ 𝑖 ) = ( 𝐴 ++ 𝑋 ) ) | |
| 9 | 8 | oveq1d | ⊢ ( 𝑖 = 𝑋 → ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) = ( ( 𝐴 ++ 𝑋 ) ++ 𝐵 ) ) |
| 10 | oveq2 | ⊢ ( 𝑗 = 𝑌 → ( 𝐴 ++ 𝑗 ) = ( 𝐴 ++ 𝑌 ) ) | |
| 11 | 10 | oveq1d | ⊢ ( 𝑗 = 𝑌 → ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) = ( ( 𝐴 ++ 𝑌 ) ++ 𝐵 ) ) |
| 12 | 9 11 | breqan12d | ⊢ ( ( 𝑖 = 𝑋 ∧ 𝑗 = 𝑌 ) → ( ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) ↔ ( ( 𝐴 ++ 𝑋 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑌 ) ++ 𝐵 ) ) ) |
| 13 | vex | ⊢ 𝑖 ∈ V | |
| 14 | vex | ⊢ 𝑗 ∈ V | |
| 15 | 13 14 | prss | ⊢ ( ( 𝑖 ∈ 𝑊 ∧ 𝑗 ∈ 𝑊 ) ↔ { 𝑖 , 𝑗 } ⊆ 𝑊 ) |
| 16 | 15 | anbi1i | ⊢ ( ( ( 𝑖 ∈ 𝑊 ∧ 𝑗 ∈ 𝑊 ) ∧ ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) ) ↔ ( { 𝑖 , 𝑗 } ⊆ 𝑊 ∧ ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) ) ) |
| 17 | 16 | opabbii | ⊢ { 〈 𝑖 , 𝑗 〉 ∣ ( ( 𝑖 ∈ 𝑊 ∧ 𝑗 ∈ 𝑊 ) ∧ ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) ) } = { 〈 𝑖 , 𝑗 〉 ∣ ( { 𝑖 , 𝑗 } ⊆ 𝑊 ∧ ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) ) } |
| 18 | 7 17 | eqtr4i | ⊢ 𝐿 = { 〈 𝑖 , 𝑗 〉 ∣ ( ( 𝑖 ∈ 𝑊 ∧ 𝑗 ∈ 𝑊 ) ∧ ( ( 𝐴 ++ 𝑖 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑗 ) ++ 𝐵 ) ) } |
| 19 | 12 18 | brab2a | ⊢ ( 𝑋 𝐿 𝑌 ↔ ( ( 𝑋 ∈ 𝑊 ∧ 𝑌 ∈ 𝑊 ) ∧ ( ( 𝐴 ++ 𝑋 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑌 ) ++ 𝐵 ) ) ) |
| 20 | df-3an | ⊢ ( ( 𝑋 ∈ 𝑊 ∧ 𝑌 ∈ 𝑊 ∧ ( ( 𝐴 ++ 𝑋 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑌 ) ++ 𝐵 ) ) ↔ ( ( 𝑋 ∈ 𝑊 ∧ 𝑌 ∈ 𝑊 ) ∧ ( ( 𝐴 ++ 𝑋 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑌 ) ++ 𝐵 ) ) ) | |
| 21 | 19 20 | bitr4i | ⊢ ( 𝑋 𝐿 𝑌 ↔ ( 𝑋 ∈ 𝑊 ∧ 𝑌 ∈ 𝑊 ∧ ( ( 𝐴 ++ 𝑋 ) ++ 𝐵 ) ∼ ( ( 𝐴 ++ 𝑌 ) ++ 𝐵 ) ) ) |