| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | lencl 14572 | . . . . 5
⊢ (𝐴 ∈ Word 𝑋 → (♯‘𝐴) ∈
ℕ0) | 
| 2 |  | eqeq2 2748 | . . . . . . . . 9
⊢ (𝑛 = 0 →
((♯‘𝑥) = 𝑛 ↔ (♯‘𝑥) = 0)) | 
| 3 | 2 | anbi2d 630 | . . . . . . . 8
⊢ (𝑛 = 0 →
(((♯‘𝑥) =
(♯‘𝑤) ∧
(♯‘𝑥) = 𝑛) ↔ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0))) | 
| 4 | 3 | imbi1d 341 | . . . . . . 7
⊢ (𝑛 = 0 →
((((♯‘𝑥) =
(♯‘𝑤) ∧
(♯‘𝑥) = 𝑛) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0) → 𝜑))) | 
| 5 | 4 | 2ralbidv 3220 | . . . . . 6
⊢ (𝑛 = 0 → (∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0) → 𝜑))) | 
| 6 |  | eqeq2 2748 | . . . . . . . . 9
⊢ (𝑛 = 𝑚 → ((♯‘𝑥) = 𝑛 ↔ (♯‘𝑥) = 𝑚)) | 
| 7 | 6 | anbi2d 630 | . . . . . . . 8
⊢ (𝑛 = 𝑚 → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) ↔ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚))) | 
| 8 | 7 | imbi1d 341 | . . . . . . 7
⊢ (𝑛 = 𝑚 → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑))) | 
| 9 | 8 | 2ralbidv 3220 | . . . . . 6
⊢ (𝑛 = 𝑚 → (∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑))) | 
| 10 |  | eqeq2 2748 | . . . . . . . . 9
⊢ (𝑛 = (𝑚 + 1) → ((♯‘𝑥) = 𝑛 ↔ (♯‘𝑥) = (𝑚 + 1))) | 
| 11 | 10 | anbi2d 630 | . . . . . . . 8
⊢ (𝑛 = (𝑚 + 1) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) ↔ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) | 
| 12 | 11 | imbi1d 341 | . . . . . . 7
⊢ (𝑛 = (𝑚 + 1) → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑))) | 
| 13 | 12 | 2ralbidv 3220 | . . . . . 6
⊢ (𝑛 = (𝑚 + 1) → (∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑))) | 
| 14 |  | eqeq2 2748 | . . . . . . . . 9
⊢ (𝑛 = (♯‘𝐴) → ((♯‘𝑥) = 𝑛 ↔ (♯‘𝑥) = (♯‘𝐴))) | 
| 15 | 14 | anbi2d 630 | . . . . . . . 8
⊢ (𝑛 = (♯‘𝐴) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) ↔ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)))) | 
| 16 | 15 | imbi1d 341 | . . . . . . 7
⊢ (𝑛 = (♯‘𝐴) → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑))) | 
| 17 | 16 | 2ralbidv 3220 | . . . . . 6
⊢ (𝑛 = (♯‘𝐴) → (∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑))) | 
| 18 |  | eqeq1 2740 | . . . . . . . . . . 11
⊢
((♯‘𝑥) =
0 → ((♯‘𝑥)
= (♯‘𝑤) ↔
0 = (♯‘𝑤))) | 
| 19 | 18 | adantl 481 | . . . . . . . . . 10
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ (♯‘𝑥) = 0) → ((♯‘𝑥) = (♯‘𝑤) ↔ 0 =
(♯‘𝑤))) | 
| 20 |  | eqcom 2743 | . . . . . . . . . . . . . 14
⊢ (0 =
(♯‘𝑤) ↔
(♯‘𝑤) =
0) | 
| 21 |  | hasheq0 14403 | . . . . . . . . . . . . . 14
⊢ (𝑤 ∈ Word 𝑌 → ((♯‘𝑤) = 0 ↔ 𝑤 = ∅)) | 
| 22 | 20, 21 | bitrid 283 | . . . . . . . . . . . . 13
⊢ (𝑤 ∈ Word 𝑌 → (0 = (♯‘𝑤) ↔ 𝑤 = ∅)) | 
| 23 |  | hasheq0 14403 | . . . . . . . . . . . . . . 15
⊢ (𝑥 ∈ Word 𝑋 → ((♯‘𝑥) = 0 ↔ 𝑥 = ∅)) | 
| 24 |  | wrd2ind.6 | . . . . . . . . . . . . . . . . 17
⊢ 𝜓 | 
| 25 |  | wrd2ind.1 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑥 = ∅ ∧ 𝑤 = ∅) → (𝜑 ↔ 𝜓)) | 
| 26 | 24, 25 | mpbiri 258 | . . . . . . . . . . . . . . . 16
⊢ ((𝑥 = ∅ ∧ 𝑤 = ∅) → 𝜑) | 
| 27 | 26 | ex 412 | . . . . . . . . . . . . . . 15
⊢ (𝑥 = ∅ → (𝑤 = ∅ → 𝜑)) | 
| 28 | 23, 27 | biimtrdi 253 | . . . . . . . . . . . . . 14
⊢ (𝑥 ∈ Word 𝑋 → ((♯‘𝑥) = 0 → (𝑤 = ∅ → 𝜑))) | 
| 29 | 28 | com13 88 | . . . . . . . . . . . . 13
⊢ (𝑤 = ∅ →
((♯‘𝑥) = 0
→ (𝑥 ∈ Word 𝑋 → 𝜑))) | 
| 30 | 22, 29 | biimtrdi 253 | . . . . . . . . . . . 12
⊢ (𝑤 ∈ Word 𝑌 → (0 = (♯‘𝑤) → ((♯‘𝑥) = 0 → (𝑥 ∈ Word 𝑋 → 𝜑)))) | 
| 31 | 30 | com24 95 | . . . . . . . . . . 11
⊢ (𝑤 ∈ Word 𝑌 → (𝑥 ∈ Word 𝑋 → ((♯‘𝑥) = 0 → (0 = (♯‘𝑤) → 𝜑)))) | 
| 32 | 31 | imp31 417 | . . . . . . . . . 10
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ (♯‘𝑥) = 0) → (0 = (♯‘𝑤) → 𝜑)) | 
| 33 | 19, 32 | sylbid 240 | . . . . . . . . 9
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ (♯‘𝑥) = 0) → ((♯‘𝑥) = (♯‘𝑤) → 𝜑)) | 
| 34 | 33 | ex 412 | . . . . . . . 8
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) → ((♯‘𝑥) = 0 → ((♯‘𝑥) = (♯‘𝑤) → 𝜑))) | 
| 35 | 34 | impcomd 411 | . . . . . . 7
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0) → 𝜑)) | 
| 36 | 35 | rgen2 3198 | . . . . . 6
⊢
∀𝑤 ∈
Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0) → 𝜑) | 
| 37 |  | fveq2 6905 | . . . . . . . . . . . . 13
⊢ (𝑥 = 𝑦 → (♯‘𝑥) = (♯‘𝑦)) | 
| 38 |  | fveq2 6905 | . . . . . . . . . . . . 13
⊢ (𝑤 = 𝑢 → (♯‘𝑤) = (♯‘𝑢)) | 
| 39 | 37, 38 | eqeqan12d 2750 | . . . . . . . . . . . 12
⊢ ((𝑥 = 𝑦 ∧ 𝑤 = 𝑢) → ((♯‘𝑥) = (♯‘𝑤) ↔ (♯‘𝑦) = (♯‘𝑢))) | 
| 40 |  | fveqeq2 6914 | . . . . . . . . . . . . 13
⊢ (𝑥 = 𝑦 → ((♯‘𝑥) = 𝑚 ↔ (♯‘𝑦) = 𝑚)) | 
| 41 | 40 | adantr 480 | . . . . . . . . . . . 12
⊢ ((𝑥 = 𝑦 ∧ 𝑤 = 𝑢) → ((♯‘𝑥) = 𝑚 ↔ (♯‘𝑦) = 𝑚)) | 
| 42 | 39, 41 | anbi12d 632 | . . . . . . . . . . 11
⊢ ((𝑥 = 𝑦 ∧ 𝑤 = 𝑢) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) ↔ ((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚))) | 
| 43 |  | wrd2ind.2 | . . . . . . . . . . 11
⊢ ((𝑥 = 𝑦 ∧ 𝑤 = 𝑢) → (𝜑 ↔ 𝜒)) | 
| 44 | 42, 43 | imbi12d 344 | . . . . . . . . . 10
⊢ ((𝑥 = 𝑦 ∧ 𝑤 = 𝑢) → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) ↔ (((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒))) | 
| 45 | 44 | ancoms 458 | . . . . . . . . 9
⊢ ((𝑤 = 𝑢 ∧ 𝑥 = 𝑦) → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) ↔ (((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒))) | 
| 46 | 45 | cbvraldva 3238 | . . . . . . . 8
⊢ (𝑤 = 𝑢 → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) ↔ ∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒))) | 
| 47 | 46 | cbvralvw 3236 | . . . . . . 7
⊢
(∀𝑤 ∈
Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) ↔ ∀𝑢 ∈ Word 𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) | 
| 48 |  | pfxcl 14716 | . . . . . . . . . . . . . . . . 17
⊢ (𝑤 ∈ Word 𝑌 → (𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌) | 
| 49 | 48 | adantr 480 | . . . . . . . . . . . . . . . 16
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) → (𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌) | 
| 50 | 49 | ad2antrl 728 | . . . . . . . . . . . . . . 15
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌) | 
| 51 |  | simprll 778 | . . . . . . . . . . . . . . . 16
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ∈ Word 𝑌) | 
| 52 |  | eqeq1 2740 | . . . . . . . . . . . . . . . . . . . . . 22
⊢
((♯‘𝑥) =
(𝑚 + 1) →
((♯‘𝑥) =
(♯‘𝑤) ↔
(𝑚 + 1) =
(♯‘𝑤))) | 
| 53 |  | nn0p1nn 12567 | . . . . . . . . . . . . . . . . . . . . . . 23
⊢ (𝑚 ∈ ℕ0
→ (𝑚 + 1) ∈
ℕ) | 
| 54 |  | eleq1 2828 | . . . . . . . . . . . . . . . . . . . . . . . 24
⊢
((♯‘𝑤) =
(𝑚 + 1) →
((♯‘𝑤) ∈
ℕ ↔ (𝑚 + 1)
∈ ℕ)) | 
| 55 | 54 | eqcoms 2744 | . . . . . . . . . . . . . . . . . . . . . . 23
⊢ ((𝑚 + 1) = (♯‘𝑤) → ((♯‘𝑤) ∈ ℕ ↔ (𝑚 + 1) ∈
ℕ)) | 
| 56 | 53, 55 | imbitrrid 246 | . . . . . . . . . . . . . . . . . . . . . 22
⊢ ((𝑚 + 1) = (♯‘𝑤) → (𝑚 ∈ ℕ0 →
(♯‘𝑤) ∈
ℕ)) | 
| 57 | 52, 56 | biimtrdi 253 | . . . . . . . . . . . . . . . . . . . . 21
⊢
((♯‘𝑥) =
(𝑚 + 1) →
((♯‘𝑥) =
(♯‘𝑤) →
(𝑚 ∈
ℕ0 → (♯‘𝑤) ∈ ℕ))) | 
| 58 | 57 | impcom 407 | . . . . . . . . . . . . . . . . . . . 20
⊢
(((♯‘𝑥)
= (♯‘𝑤) ∧
(♯‘𝑥) = (𝑚 + 1)) → (𝑚 ∈ ℕ0
→ (♯‘𝑤)
∈ ℕ)) | 
| 59 | 58 | adantl 481 | . . . . . . . . . . . . . . . . . . 19
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1))) → (𝑚 ∈ ℕ0 →
(♯‘𝑤) ∈
ℕ)) | 
| 60 | 59 | impcom 407 | . . . . . . . . . . . . . . . . . 18
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑤) ∈
ℕ) | 
| 61 | 60 | nnge1d 12315 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 1 ≤ (♯‘𝑤)) | 
| 62 |  | wrdlenge1n0 14589 | . . . . . . . . . . . . . . . . . 18
⊢ (𝑤 ∈ Word 𝑌 → (𝑤 ≠ ∅ ↔ 1 ≤
(♯‘𝑤))) | 
| 63 | 51, 62 | syl 17 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑤 ≠ ∅ ↔ 1 ≤
(♯‘𝑤))) | 
| 64 | 61, 63 | mpbird 257 | . . . . . . . . . . . . . . . 16
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ≠ ∅) | 
| 65 |  | lswcl 14607 | . . . . . . . . . . . . . . . 16
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑤 ≠ ∅) → (lastS‘𝑤) ∈ 𝑌) | 
| 66 | 51, 64, 65 | syl2anc 584 | . . . . . . . . . . . . . . 15
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (lastS‘𝑤) ∈ 𝑌) | 
| 67 | 50, 66 | jca 511 | . . . . . . . . . . . . . 14
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌 ∧ (lastS‘𝑤) ∈ 𝑌)) | 
| 68 |  | pfxcl 14716 | . . . . . . . . . . . . . . . 16
⊢ (𝑥 ∈ Word 𝑋 → (𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋) | 
| 69 | 68 | adantl 481 | . . . . . . . . . . . . . . 15
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) → (𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋) | 
| 70 | 69 | ad2antrl 728 | . . . . . . . . . . . . . 14
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋) | 
| 71 |  | simprlr 779 | . . . . . . . . . . . . . . 15
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ∈ Word 𝑋) | 
| 72 |  | eleq1 2828 | . . . . . . . . . . . . . . . . . . . 20
⊢
((♯‘𝑥) =
(𝑚 + 1) →
((♯‘𝑥) ∈
ℕ ↔ (𝑚 + 1)
∈ ℕ)) | 
| 73 | 53, 72 | imbitrrid 246 | . . . . . . . . . . . . . . . . . . 19
⊢
((♯‘𝑥) =
(𝑚 + 1) → (𝑚 ∈ ℕ0
→ (♯‘𝑥)
∈ ℕ)) | 
| 74 | 73 | ad2antll 729 | . . . . . . . . . . . . . . . . . 18
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1))) → (𝑚 ∈ ℕ0 →
(♯‘𝑥) ∈
ℕ)) | 
| 75 | 74 | impcom 407 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑥) ∈
ℕ) | 
| 76 | 75 | nnge1d 12315 | . . . . . . . . . . . . . . . 16
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 1 ≤ (♯‘𝑥)) | 
| 77 |  | wrdlenge1n0 14589 | . . . . . . . . . . . . . . . . 17
⊢ (𝑥 ∈ Word 𝑋 → (𝑥 ≠ ∅ ↔ 1 ≤
(♯‘𝑥))) | 
| 78 | 71, 77 | syl 17 | . . . . . . . . . . . . . . . 16
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑥 ≠ ∅ ↔ 1 ≤
(♯‘𝑥))) | 
| 79 | 76, 78 | mpbird 257 | . . . . . . . . . . . . . . 15
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ≠ ∅) | 
| 80 |  | lswcl 14607 | . . . . . . . . . . . . . . 15
⊢ ((𝑥 ∈ Word 𝑋 ∧ 𝑥 ≠ ∅) → (lastS‘𝑥) ∈ 𝑋) | 
| 81 | 71, 79, 80 | syl2anc 584 | . . . . . . . . . . . . . 14
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (lastS‘𝑥) ∈ 𝑋) | 
| 82 | 67, 70, 81 | jca32 515 | . . . . . . . . . . . . 13
⊢ ((𝑚 ∈ ℕ0
∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (((𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌 ∧ (lastS‘𝑤) ∈ 𝑌) ∧ ((𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋 ∧ (lastS‘𝑥) ∈ 𝑋))) | 
| 83 | 82 | adantlr 715 | . . . . . . . . . . . 12
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (((𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌 ∧ (lastS‘𝑤) ∈ 𝑌) ∧ ((𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋 ∧ (lastS‘𝑥) ∈ 𝑋))) | 
| 84 |  | simprl 770 | . . . . . . . . . . . . . 14
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋)) | 
| 85 |  | simplr 768 | . . . . . . . . . . . . . 14
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ∀𝑢 ∈ Word 𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) | 
| 86 |  | simprrl 780 | . . . . . . . . . . . . . . . . 17
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑥) = (♯‘𝑤)) | 
| 87 | 86 | oveq1d 7447 | . . . . . . . . . . . . . . . 16
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) − 1) =
((♯‘𝑤) −
1)) | 
| 88 |  | simprlr 779 | . . . . . . . . . . . . . . . . 17
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ∈ Word 𝑋) | 
| 89 |  | fzossfz 13719 | . . . . . . . . . . . . . . . . . 18
⊢
(0..^(♯‘𝑥)) ⊆ (0...(♯‘𝑥)) | 
| 90 |  | simprrr 781 | . . . . . . . . . . . . . . . . . . . 20
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑥) = (𝑚 + 1)) | 
| 91 | 53 | ad2antrr 726 | . . . . . . . . . . . . . . . . . . . 20
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑚 + 1) ∈ ℕ) | 
| 92 | 90, 91 | eqeltrd 2840 | . . . . . . . . . . . . . . . . . . 19
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑥) ∈
ℕ) | 
| 93 |  | fzo0end 13798 | . . . . . . . . . . . . . . . . . . 19
⊢
((♯‘𝑥)
∈ ℕ → ((♯‘𝑥) − 1) ∈ (0..^(♯‘𝑥))) | 
| 94 | 92, 93 | syl 17 | . . . . . . . . . . . . . . . . . 18
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) − 1) ∈
(0..^(♯‘𝑥))) | 
| 95 | 89, 94 | sselid 3980 | . . . . . . . . . . . . . . . . 17
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) − 1) ∈
(0...(♯‘𝑥))) | 
| 96 |  | pfxlen 14722 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑥 ∈ Word 𝑋 ∧ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥))) → (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
((♯‘𝑥) −
1)) | 
| 97 | 88, 95, 96 | syl2anc 584 | . . . . . . . . . . . . . . . 16
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
((♯‘𝑥) −
1)) | 
| 98 |  | simprll 778 | . . . . . . . . . . . . . . . . 17
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ∈ Word 𝑌) | 
| 99 |  | oveq1 7439 | . . . . . . . . . . . . . . . . . . . . . 22
⊢
((♯‘𝑤) =
(♯‘𝑥) →
((♯‘𝑤) −
1) = ((♯‘𝑥)
− 1)) | 
| 100 |  | oveq2 7440 | . . . . . . . . . . . . . . . . . . . . . 22
⊢
((♯‘𝑤) =
(♯‘𝑥) →
(0...(♯‘𝑤)) =
(0...(♯‘𝑥))) | 
| 101 | 99, 100 | eleq12d 2834 | . . . . . . . . . . . . . . . . . . . . 21
⊢
((♯‘𝑤) =
(♯‘𝑥) →
(((♯‘𝑤) −
1) ∈ (0...(♯‘𝑤)) ↔ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥)))) | 
| 102 | 101 | eqcoms 2744 | . . . . . . . . . . . . . . . . . . . 20
⊢
((♯‘𝑥) =
(♯‘𝑤) →
(((♯‘𝑤) −
1) ∈ (0...(♯‘𝑤)) ↔ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥)))) | 
| 103 | 102 | adantr 480 | . . . . . . . . . . . . . . . . . . 19
⊢
(((♯‘𝑥)
= (♯‘𝑤) ∧
(♯‘𝑥) = (𝑚 + 1)) →
(((♯‘𝑤) −
1) ∈ (0...(♯‘𝑤)) ↔ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥)))) | 
| 104 | 103 | ad2antll 729 | . . . . . . . . . . . . . . . . . 18
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (((♯‘𝑤) − 1) ∈
(0...(♯‘𝑤))
↔ ((♯‘𝑥)
− 1) ∈ (0...(♯‘𝑥)))) | 
| 105 | 95, 104 | mpbird 257 | . . . . . . . . . . . . . . . . 17
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑤) − 1) ∈
(0...(♯‘𝑤))) | 
| 106 |  | pfxlen 14722 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑤 ∈ Word 𝑌 ∧ ((♯‘𝑤) − 1) ∈ (0...(♯‘𝑤))) → (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) =
((♯‘𝑤) −
1)) | 
| 107 | 98, 105, 106 | syl2anc 584 | . . . . . . . . . . . . . . . 16
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) =
((♯‘𝑤) −
1)) | 
| 108 | 87, 97, 107 | 3eqtr4d 2786 | . . . . . . . . . . . . . . 15
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1)))) | 
| 109 | 90 | oveq1d 7447 | . . . . . . . . . . . . . . . 16
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) − 1) = ((𝑚 + 1) −
1)) | 
| 110 |  | nn0cn 12538 | . . . . . . . . . . . . . . . . . 18
⊢ (𝑚 ∈ ℕ0
→ 𝑚 ∈
ℂ) | 
| 111 | 110 | ad2antrr 726 | . . . . . . . . . . . . . . . . 17
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑚 ∈ ℂ) | 
| 112 |  | ax-1cn 11214 | . . . . . . . . . . . . . . . . 17
⊢ 1 ∈
ℂ | 
| 113 |  | pncan 11515 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑚 ∈ ℂ ∧ 1 ∈
ℂ) → ((𝑚 + 1)
− 1) = 𝑚) | 
| 114 | 111, 112,
113 | sylancl 586 | . . . . . . . . . . . . . . . 16
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((𝑚 + 1) − 1) = 𝑚) | 
| 115 | 97, 109, 114 | 3eqtrd 2780 | . . . . . . . . . . . . . . 15
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚) | 
| 116 | 108, 115 | jca 511 | . . . . . . . . . . . . . 14
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚)) | 
| 117 | 69 | adantr 480 | . . . . . . . . . . . . . . . 16
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → (𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋) | 
| 118 |  | fveq2 6905 | . . . . . . . . . . . . . . . . . . . . . 22
⊢ (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → (♯‘𝑦) = (♯‘(𝑥 prefix ((♯‘𝑥) − 1)))) | 
| 119 |  | fveq2 6905 | . . . . . . . . . . . . . . . . . . . . . 22
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → (♯‘𝑢) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) | 
| 120 | 118, 119 | eqeqan12d 2750 | . . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1))))) | 
| 121 | 120 | expcom 413 | . . . . . . . . . . . . . . . . . . . 20
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1)))))) | 
| 122 | 121 | adantl 481 | . . . . . . . . . . . . . . . . . . 19
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1)))))) | 
| 123 | 122 | imp 406 | . . . . . . . . . . . . . . . . . 18
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1))))) | 
| 124 |  | fveqeq2 6914 | . . . . . . . . . . . . . . . . . . 19
⊢ (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((♯‘𝑦) = 𝑚 ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚)) | 
| 125 | 124 | adantl 481 | . . . . . . . . . . . . . . . . . 18
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ((♯‘𝑦) = 𝑚 ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚)) | 
| 126 | 123, 125 | anbi12d 632 | . . . . . . . . . . . . . . . . 17
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → (((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) ↔ ((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) ∧
(♯‘(𝑥 prefix
((♯‘𝑥) −
1))) = 𝑚))) | 
| 127 |  | vex 3483 | . . . . . . . . . . . . . . . . . . . . 21
⊢ 𝑦 ∈ V | 
| 128 |  | vex 3483 | . . . . . . . . . . . . . . . . . . . . 21
⊢ 𝑢 ∈ V | 
| 129 | 127, 128,
43 | sbc2ie 3865 | . . . . . . . . . . . . . . . . . . . 20
⊢
([𝑦 / 𝑥][𝑢 / 𝑤]𝜑 ↔ 𝜒) | 
| 130 | 129 | bicomi 224 | . . . . . . . . . . . . . . . . . . 19
⊢ (𝜒 ↔ [𝑦 / 𝑥][𝑢 / 𝑤]𝜑) | 
| 131 | 130 | a1i 11 | . . . . . . . . . . . . . . . . . 18
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → (𝜒 ↔ [𝑦 / 𝑥][𝑢 / 𝑤]𝜑)) | 
| 132 |  | simpr 484 | . . . . . . . . . . . . . . . . . . 19
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) | 
| 133 | 132 | sbceq1d 3792 | . . . . . . . . . . . . . . . . . 18
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ([𝑦 / 𝑥][𝑢 / 𝑤]𝜑 ↔ [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][𝑢 / 𝑤]𝜑)) | 
| 134 |  | dfsbcq 3789 | . . . . . . . . . . . . . . . . . . . . 21
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([𝑢 / 𝑤]𝜑 ↔ [(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)) | 
| 135 | 134 | sbcbidv 3844 | . . . . . . . . . . . . . . . . . . . 20
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][𝑢 / 𝑤]𝜑 ↔ [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)) | 
| 136 | 135 | adantl 481 | . . . . . . . . . . . . . . . . . . 19
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][𝑢 / 𝑤]𝜑 ↔ [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)) | 
| 137 | 136 | adantr 480 | . . . . . . . . . . . . . . . . . 18
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][𝑢 / 𝑤]𝜑 ↔ [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)) | 
| 138 | 131, 133,
137 | 3bitrd 305 | . . . . . . . . . . . . . . . . 17
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → (𝜒 ↔ [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)) | 
| 139 | 126, 138 | imbi12d 344 | . . . . . . . . . . . . . . . 16
⊢ ((((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ((((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒) ↔ (((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚) → [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))) | 
| 140 | 117, 139 | rspcdv 3613 | . . . . . . . . . . . . . . 15
⊢ (((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → (∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒) → (((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚) → [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))) | 
| 141 | 49, 140 | rspcimdv 3611 | . . . . . . . . . . . . . 14
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) → (∀𝑢 ∈ Word 𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒) → (((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) =
(♯‘(𝑤 prefix
((♯‘𝑤) −
1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚) → [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))) | 
| 142 | 84, 85, 116, 141 | syl3c 66 | . . . . . . . . . . . . 13
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑) | 
| 143 | 142, 108 | jca 511 | . . . . . . . . . . . 12
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) −
1))))) | 
| 144 |  | dfsbcq 3789 | . . . . . . . . . . . . . . . 16
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ↔ [(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤][𝑦 / 𝑥]𝜑)) | 
| 145 |  | sbccom 3870 | . . . . . . . . . . . . . . . 16
⊢
([(𝑤 prefix
((♯‘𝑤) −
1)) / 𝑤][𝑦 / 𝑥]𝜑 ↔ [𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑) | 
| 146 | 144, 145 | bitrdi 287 | . . . . . . . . . . . . . . 15
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ↔ [𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)) | 
| 147 | 119 | eqeq2d 2747 | . . . . . . . . . . . . . . 15
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) −
1))))) | 
| 148 | 146, 147 | anbi12d 632 | . . . . . . . . . . . . . 14
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → (([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ∧ (♯‘𝑦) = (♯‘𝑢)) ↔ ([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))))) | 
| 149 |  | oveq1 7439 | . . . . . . . . . . . . . . 15
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → (𝑢 ++ 〈“𝑠”〉) = ((𝑤 prefix ((♯‘𝑤) − 1)) ++ 〈“𝑠”〉)) | 
| 150 | 149 | sbceq1d 3792 | . . . . . . . . . . . . . 14
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([(𝑢 ++ 〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑 ↔ [((𝑤 prefix ((♯‘𝑤) − 1)) ++ 〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑)) | 
| 151 | 148, 150 | imbi12d 344 | . . . . . . . . . . . . 13
⊢ (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ((([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ∧ (♯‘𝑦) = (♯‘𝑢)) → [(𝑢 ++ 〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑) ↔ (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑))) | 
| 152 |  | s1eq 14639 | . . . . . . . . . . . . . . . . 17
⊢ (𝑠 = (lastS‘𝑤) → 〈“𝑠”〉 =
〈“(lastS‘𝑤)”〉) | 
| 153 | 152 | oveq2d 7448 | . . . . . . . . . . . . . . . 16
⊢ (𝑠 = (lastS‘𝑤) → ((𝑤 prefix ((♯‘𝑤) − 1)) ++ 〈“𝑠”〉) = ((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉)) | 
| 154 | 153 | sbceq1d 3792 | . . . . . . . . . . . . . . 15
⊢ (𝑠 = (lastS‘𝑤) → ([((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑 ↔ [((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑)) | 
| 155 | 154 | imbi2d 340 | . . . . . . . . . . . . . 14
⊢ (𝑠 = (lastS‘𝑤) → ((([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑) ↔ (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑))) | 
| 156 |  | sbccom 3870 | . . . . . . . . . . . . . . . 16
⊢
([((𝑤 prefix
((♯‘𝑤) −
1)) ++ 〈“(lastS‘𝑤)”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑 ↔ [(𝑦 ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑) | 
| 157 | 156 | a1i 11 | . . . . . . . . . . . . . . 15
⊢ (𝑠 = (lastS‘𝑤) → ([((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑 ↔ [(𝑦 ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑)) | 
| 158 | 157 | imbi2d 340 | . . . . . . . . . . . . . 14
⊢ (𝑠 = (lastS‘𝑤) → ((([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑) ↔ (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [(𝑦 ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑))) | 
| 159 | 155, 158 | bitrd 279 | . . . . . . . . . . . . 13
⊢ (𝑠 = (lastS‘𝑤) → ((([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑) ↔ (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [(𝑦 ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑))) | 
| 160 |  | dfsbcq 3789 | . . . . . . . . . . . . . . 15
⊢ (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ↔ [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)) | 
| 161 |  | fveqeq2 6914 | . . . . . . . . . . . . . . 15
⊢ (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) ↔
(♯‘(𝑥 prefix
((♯‘𝑥) −
1))) = (♯‘(𝑤
prefix ((♯‘𝑤)
− 1))))) | 
| 162 | 160, 161 | anbi12d 632 | . . . . . . . . . . . . . 14
⊢ (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) ↔ ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) −
1)))))) | 
| 163 |  | oveq1 7439 | . . . . . . . . . . . . . . 15
⊢ (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → (𝑦 ++ 〈“𝑧”〉) = ((𝑥 prefix ((♯‘𝑥) − 1)) ++ 〈“𝑧”〉)) | 
| 164 | 163 | sbceq1d 3792 | . . . . . . . . . . . . . 14
⊢ (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ([(𝑦 ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑 ↔ [((𝑥 prefix ((♯‘𝑥) − 1)) ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑)) | 
| 165 | 162, 164 | imbi12d 344 | . . . . . . . . . . . . 13
⊢ (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [(𝑦 ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑) ↔ (([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) →
[((𝑥 prefix
((♯‘𝑥) −
1)) ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑))) | 
| 166 |  | s1eq 14639 | . . . . . . . . . . . . . . . 16
⊢ (𝑧 = (lastS‘𝑥) → 〈“𝑧”〉 =
〈“(lastS‘𝑥)”〉) | 
| 167 | 166 | oveq2d 7448 | . . . . . . . . . . . . . . 15
⊢ (𝑧 = (lastS‘𝑥) → ((𝑥 prefix ((♯‘𝑥) − 1)) ++ 〈“𝑧”〉) = ((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉)) | 
| 168 | 167 | sbceq1d 3792 | . . . . . . . . . . . . . 14
⊢ (𝑧 = (lastS‘𝑥) → ([((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑 ↔ [((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑)) | 
| 169 | 168 | imbi2d 340 | . . . . . . . . . . . . 13
⊢ (𝑧 = (lastS‘𝑥) → ((([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) →
[((𝑥 prefix
((♯‘𝑥) −
1)) ++ 〈“𝑧”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑) ↔ (([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) →
[((𝑥 prefix
((♯‘𝑥) −
1)) ++ 〈“(lastS‘𝑥)”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑))) | 
| 170 |  | simplr 768 | . . . . . . . . . . . . . . . . 17
⊢ ((((𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌) ∧ (𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋)) | 
| 171 |  | simpll 766 | . . . . . . . . . . . . . . . . 17
⊢ ((((𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌) ∧ (𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌)) | 
| 172 |  | simpr 484 | . . . . . . . . . . . . . . . . 17
⊢ ((((𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌) ∧ (𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → (♯‘𝑦) = (♯‘𝑢)) | 
| 173 |  | wrd2ind.7 | . . . . . . . . . . . . . . . . 17
⊢ (((𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋) ∧ (𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝜒 → 𝜃)) | 
| 174 | 170, 171,
172, 173 | syl3anc 1372 | . . . . . . . . . . . . . . . 16
⊢ ((((𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌) ∧ (𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝜒 → 𝜃)) | 
| 175 | 43 | ancoms 458 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑤 = 𝑢 ∧ 𝑥 = 𝑦) → (𝜑 ↔ 𝜒)) | 
| 176 | 128, 127,
175 | sbc2ie 3865 | . . . . . . . . . . . . . . . 16
⊢
([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ↔ 𝜒) | 
| 177 |  | ovex 7465 | . . . . . . . . . . . . . . . . 17
⊢ (𝑢 ++ 〈“𝑠”〉) ∈
V | 
| 178 |  | ovex 7465 | . . . . . . . . . . . . . . . . 17
⊢ (𝑦 ++ 〈“𝑧”〉) ∈
V | 
| 179 |  | wrd2ind.3 | . . . . . . . . . . . . . . . . . 18
⊢ ((𝑥 = (𝑦 ++ 〈“𝑧”〉) ∧ 𝑤 = (𝑢 ++ 〈“𝑠”〉)) → (𝜑 ↔ 𝜃)) | 
| 180 | 179 | ancoms 458 | . . . . . . . . . . . . . . . . 17
⊢ ((𝑤 = (𝑢 ++ 〈“𝑠”〉) ∧ 𝑥 = (𝑦 ++ 〈“𝑧”〉)) → (𝜑 ↔ 𝜃)) | 
| 181 | 177, 178,
180 | sbc2ie 3865 | . . . . . . . . . . . . . . . 16
⊢
([(𝑢 ++
〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑 ↔ 𝜃) | 
| 182 | 174, 176,
181 | 3imtr4g 296 | . . . . . . . . . . . . . . 15
⊢ ((((𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌) ∧ (𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 → [(𝑢 ++ 〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑)) | 
| 183 | 182 | ex 412 | . . . . . . . . . . . . . 14
⊢ (((𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌) ∧ (𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋)) → ((♯‘𝑦) = (♯‘𝑢) → ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 → [(𝑢 ++ 〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑))) | 
| 184 | 183 | impcomd 411 | . . . . . . . . . . . . 13
⊢ (((𝑢 ∈ Word 𝑌 ∧ 𝑠 ∈ 𝑌) ∧ (𝑦 ∈ Word 𝑋 ∧ 𝑧 ∈ 𝑋)) → (([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ∧ (♯‘𝑦) = (♯‘𝑢)) → [(𝑢 ++ 〈“𝑠”〉) / 𝑤][(𝑦 ++ 〈“𝑧”〉) / 𝑥]𝜑)) | 
| 185 | 151, 159,
165, 169, 184 | vtocl4ga 3585 | . . . . . . . . . . . 12
⊢ ((((𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌 ∧ (lastS‘𝑤) ∈ 𝑌) ∧ ((𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋 ∧ (lastS‘𝑥) ∈ 𝑋)) → (([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) →
[((𝑥 prefix
((♯‘𝑥) −
1)) ++ 〈“(lastS‘𝑥)”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑)) | 
| 186 | 83, 143, 185 | sylc 65 | . . . . . . . . . . 11
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → [((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑) | 
| 187 |  | eqtr2 2760 | . . . . . . . . . . . . . . . 16
⊢
(((♯‘𝑥)
= (♯‘𝑤) ∧
(♯‘𝑥) = (𝑚 + 1)) →
(♯‘𝑤) = (𝑚 + 1)) | 
| 188 | 187 | ad2antll 729 | . . . . . . . . . . . . . . 15
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑤) = (𝑚 + 1)) | 
| 189 | 188, 91 | eqeltrd 2840 | . . . . . . . . . . . . . 14
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑤) ∈
ℕ) | 
| 190 |  | wrdfin 14571 | . . . . . . . . . . . . . . . . 17
⊢ (𝑤 ∈ Word 𝑌 → 𝑤 ∈ Fin) | 
| 191 | 190 | adantr 480 | . . . . . . . . . . . . . . . 16
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) → 𝑤 ∈ Fin) | 
| 192 | 191 | ad2antrl 728 | . . . . . . . . . . . . . . 15
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ∈ Fin) | 
| 193 |  | hashnncl 14406 | . . . . . . . . . . . . . . 15
⊢ (𝑤 ∈ Fin →
((♯‘𝑤) ∈
ℕ ↔ 𝑤 ≠
∅)) | 
| 194 | 192, 193 | syl 17 | . . . . . . . . . . . . . 14
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑤) ∈ ℕ ↔ 𝑤 ≠ ∅)) | 
| 195 | 189, 194 | mpbid 232 | . . . . . . . . . . . . 13
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ≠ ∅) | 
| 196 |  | pfxlswccat 14752 | . . . . . . . . . . . . . 14
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑤 ≠ ∅) → ((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) = 𝑤) | 
| 197 | 196 | eqcomd 2742 | . . . . . . . . . . . . 13
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑤 ≠ ∅) → 𝑤 = ((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉)) | 
| 198 | 98, 195, 197 | syl2anc 584 | . . . . . . . . . . . 12
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 = ((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉)) | 
| 199 |  | wrdfin 14571 | . . . . . . . . . . . . . . . . 17
⊢ (𝑥 ∈ Word 𝑋 → 𝑥 ∈ Fin) | 
| 200 | 199 | adantl 481 | . . . . . . . . . . . . . . . 16
⊢ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) → 𝑥 ∈ Fin) | 
| 201 | 200 | ad2antrl 728 | . . . . . . . . . . . . . . 15
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ∈ Fin) | 
| 202 |  | hashnncl 14406 | . . . . . . . . . . . . . . 15
⊢ (𝑥 ∈ Fin →
((♯‘𝑥) ∈
ℕ ↔ 𝑥 ≠
∅)) | 
| 203 | 201, 202 | syl 17 | . . . . . . . . . . . . . 14
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) ∈ ℕ ↔ 𝑥 ≠ ∅)) | 
| 204 | 92, 203 | mpbid 232 | . . . . . . . . . . . . 13
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ≠ ∅) | 
| 205 |  | pfxlswccat 14752 | . . . . . . . . . . . . . 14
⊢ ((𝑥 ∈ Word 𝑋 ∧ 𝑥 ≠ ∅) → ((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉) = 𝑥) | 
| 206 | 205 | eqcomd 2742 | . . . . . . . . . . . . 13
⊢ ((𝑥 ∈ Word 𝑋 ∧ 𝑥 ≠ ∅) → 𝑥 = ((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉)) | 
| 207 | 88, 204, 206 | syl2anc 584 | . . . . . . . . . . . 12
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 = ((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉)) | 
| 208 |  | sbceq1a 3798 | . . . . . . . . . . . . 13
⊢ (𝑤 = ((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) → (𝜑 ↔ [((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑)) | 
| 209 |  | sbceq1a 3798 | . . . . . . . . . . . . 13
⊢ (𝑥 = ((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉) → ([((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑 ↔ [((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑)) | 
| 210 | 208, 209 | sylan9bb 509 | . . . . . . . . . . . 12
⊢ ((𝑤 = ((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) ∧ 𝑥 = ((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉)) → (𝜑 ↔ [((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑)) | 
| 211 | 198, 207,
210 | syl2anc 584 | . . . . . . . . . . 11
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝜑 ↔ [((𝑥 prefix ((♯‘𝑥) − 1)) ++
〈“(lastS‘𝑥)”〉) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++
〈“(lastS‘𝑤)”〉) / 𝑤]𝜑)) | 
| 212 | 186, 211 | mpbird 257 | . . . . . . . . . 10
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝜑) | 
| 213 | 212 | expr 456 | . . . . . . . . 9
⊢ (((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ (𝑤 ∈ Word 𝑌 ∧ 𝑥 ∈ Word 𝑋)) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑)) | 
| 214 | 213 | ralrimivva 3201 | . . . . . . . 8
⊢ ((𝑚 ∈ ℕ0
∧ ∀𝑢 ∈ Word
𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) → ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑)) | 
| 215 | 214 | ex 412 | . . . . . . 7
⊢ (𝑚 ∈ ℕ0
→ (∀𝑢 ∈
Word 𝑌∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒) → ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑))) | 
| 216 | 47, 215 | biimtrid 242 | . . . . . 6
⊢ (𝑚 ∈ ℕ0
→ (∀𝑤 ∈
Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) → ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑))) | 
| 217 | 5, 9, 13, 17, 36, 216 | nn0ind 12715 | . . . . 5
⊢
((♯‘𝐴)
∈ ℕ0 → ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑)) | 
| 218 | 1, 217 | syl 17 | . . . 4
⊢ (𝐴 ∈ Word 𝑋 → ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑)) | 
| 219 | 218 | 3ad2ant1 1133 | . . 3
⊢ ((𝐴 ∈ Word 𝑋 ∧ 𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → ∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑)) | 
| 220 |  | fveq2 6905 | . . . . . . . . 9
⊢ (𝑤 = 𝐵 → (♯‘𝑤) = (♯‘𝐵)) | 
| 221 | 220 | eqeq2d 2747 | . . . . . . . 8
⊢ (𝑤 = 𝐵 → ((♯‘𝑥) = (♯‘𝑤) ↔ (♯‘𝑥) = (♯‘𝐵))) | 
| 222 | 221 | anbi1d 631 | . . . . . . 7
⊢ (𝑤 = 𝐵 → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) ↔ ((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)))) | 
| 223 |  | wrd2ind.5 | . . . . . . 7
⊢ (𝑤 = 𝐵 → (𝜑 ↔ 𝜌)) | 
| 224 | 222, 223 | imbi12d 344 | . . . . . 6
⊢ (𝑤 = 𝐵 → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌))) | 
| 225 | 224 | ralbidv 3177 | . . . . 5
⊢ (𝑤 = 𝐵 → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑) ↔ ∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌))) | 
| 226 | 225 | rspcv 3617 | . . . 4
⊢ (𝐵 ∈ Word 𝑌 → (∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑) → ∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌))) | 
| 227 | 226 | 3ad2ant2 1134 | . . 3
⊢ ((𝐴 ∈ Word 𝑋 ∧ 𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → (∀𝑤 ∈ Word 𝑌∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑) → ∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌))) | 
| 228 | 219, 227 | mpd 15 | . 2
⊢ ((𝐴 ∈ Word 𝑋 ∧ 𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → ∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌)) | 
| 229 |  | eqidd 2737 | . 2
⊢ ((𝐴 ∈ Word 𝑋 ∧ 𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → (♯‘𝐴) = (♯‘𝐴)) | 
| 230 |  | fveqeq2 6914 | . . . . . . . . . 10
⊢ (𝑥 = 𝐴 → ((♯‘𝑥) = (♯‘𝐵) ↔ (♯‘𝐴) = (♯‘𝐵))) | 
| 231 |  | fveqeq2 6914 | . . . . . . . . . 10
⊢ (𝑥 = 𝐴 → ((♯‘𝑥) = (♯‘𝐴) ↔ (♯‘𝐴) = (♯‘𝐴))) | 
| 232 | 230, 231 | anbi12d 632 | . . . . . . . . 9
⊢ (𝑥 = 𝐴 → (((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) ↔ ((♯‘𝐴) = (♯‘𝐵) ∧ (♯‘𝐴) = (♯‘𝐴)))) | 
| 233 |  | wrd2ind.4 | . . . . . . . . 9
⊢ (𝑥 = 𝐴 → (𝜌 ↔ 𝜏)) | 
| 234 | 232, 233 | imbi12d 344 | . . . . . . . 8
⊢ (𝑥 = 𝐴 → ((((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) ↔ (((♯‘𝐴) = (♯‘𝐵) ∧ (♯‘𝐴) = (♯‘𝐴)) → 𝜏))) | 
| 235 | 234 | rspcv 3617 | . . . . . . 7
⊢ (𝐴 ∈ Word 𝑋 → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → (((♯‘𝐴) = (♯‘𝐵) ∧ (♯‘𝐴) = (♯‘𝐴)) → 𝜏))) | 
| 236 | 235 | com23 86 | . . . . . 6
⊢ (𝐴 ∈ Word 𝑋 → (((♯‘𝐴) = (♯‘𝐵) ∧ (♯‘𝐴) = (♯‘𝐴)) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → 𝜏))) | 
| 237 | 236 | expd 415 | . . . . 5
⊢ (𝐴 ∈ Word 𝑋 → ((♯‘𝐴) = (♯‘𝐵) → ((♯‘𝐴) = (♯‘𝐴) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → 𝜏)))) | 
| 238 | 237 | com34 91 | . . . 4
⊢ (𝐴 ∈ Word 𝑋 → ((♯‘𝐴) = (♯‘𝐵) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → ((♯‘𝐴) = (♯‘𝐴) → 𝜏)))) | 
| 239 | 238 | imp 406 | . . 3
⊢ ((𝐴 ∈ Word 𝑋 ∧ (♯‘𝐴) = (♯‘𝐵)) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → ((♯‘𝐴) = (♯‘𝐴) → 𝜏))) | 
| 240 | 239 | 3adant2 1131 | . 2
⊢ ((𝐴 ∈ Word 𝑋 ∧ 𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → ((♯‘𝐴) = (♯‘𝐴) → 𝜏))) | 
| 241 | 228, 229,
240 | mp2d 49 | 1
⊢ ((𝐴 ∈ Word 𝑋 ∧ 𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → 𝜏) |