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

Theorem wrd2ind 14750
Description: Perform induction over the structure of two words of the same length. (Contributed by AV, 23-Jan-2019.) (Proof shortened by AV, 12-Oct-2022.)
Hypotheses
Ref Expression
wrd2ind.1 ((𝑥 = ∅ ∧ 𝑤 = ∅) → (𝜑𝜓))
wrd2ind.2 ((𝑥 = 𝑦𝑤 = 𝑢) → (𝜑𝜒))
wrd2ind.3 ((𝑥 = (𝑦 ++ ⟨“𝑧”⟩) ∧ 𝑤 = (𝑢 ++ ⟨“𝑠”⟩)) → (𝜑𝜃))
wrd2ind.4 (𝑥 = 𝐴 → (𝜌𝜏))
wrd2ind.5 (𝑤 = 𝐵 → (𝜑𝜌))
wrd2ind.6 𝜓
wrd2ind.7 (((𝑦 ∈ Word 𝑋𝑧𝑋) ∧ (𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝜒𝜃))
Assertion
Ref Expression
wrd2ind ((𝐴 ∈ Word 𝑋𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → 𝜏)
Distinct variable groups:   𝑥,𝑤,𝐴   𝑦,𝑤,𝑧,𝐵,𝑥   𝑢,𝑠,𝑤,𝑥,𝑦,𝑧,𝑋   𝑌,𝑠,𝑢,𝑤,𝑥,𝑦,𝑧   𝜒,𝑤,𝑥   𝜑,𝑠,𝑢,𝑦,𝑧   𝜏,𝑥   𝜃,𝑤,𝑥   𝜌,𝑤
Allowed substitution hints:   𝜑(𝑥,𝑤)   𝜓(𝑥,𝑦,𝑧,𝑤,𝑢,𝑠)   𝜒(𝑦,𝑧,𝑢,𝑠)   𝜃(𝑦,𝑧,𝑢,𝑠)   𝜏(𝑦,𝑧,𝑤,𝑢,𝑠)   𝜌(𝑥,𝑦,𝑧,𝑢,𝑠)   𝐴(𝑦,𝑧,𝑢,𝑠)   𝐵(𝑢,𝑠)

Proof of Theorem wrd2ind
Dummy variables 𝑛 𝑚 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 lencl 14560 . . . . 5 (𝐴 ∈ Word 𝑋 → (♯‘𝐴) ∈ ℕ0)
2 eqeq2 2777 . . . . . . . . 9 (𝑛 = 0 → ((♯‘𝑥) = 𝑛 ↔ (♯‘𝑥) = 0))
32anbi2d 641 . . . . . . . 8 (𝑛 = 0 → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) ↔ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0)))
43imbi1d 344 . . . . . . 7 (𝑛 = 0 → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0) → 𝜑)))
542ralbidv 3229 . . . . . 6 (𝑛 = 0 → (∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0) → 𝜑)))
6 eqeq2 2777 . . . . . . . . 9 (𝑛 = 𝑚 → ((♯‘𝑥) = 𝑛 ↔ (♯‘𝑥) = 𝑚))
76anbi2d 641 . . . . . . . 8 (𝑛 = 𝑚 → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) ↔ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚)))
87imbi1d 344 . . . . . . 7 (𝑛 = 𝑚 → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑)))
982ralbidv 3229 . . . . . 6 (𝑛 = 𝑚 → (∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑)))
10 eqeq2 2777 . . . . . . . . 9 (𝑛 = (𝑚 + 1) → ((♯‘𝑥) = 𝑛 ↔ (♯‘𝑥) = (𝑚 + 1)))
1110anbi2d 641 . . . . . . . 8 (𝑛 = (𝑚 + 1) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) ↔ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1))))
1211imbi1d 344 . . . . . . 7 (𝑛 = (𝑚 + 1) → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑)))
13122ralbidv 3229 . . . . . 6 (𝑛 = (𝑚 + 1) → (∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑)))
14 eqeq2 2777 . . . . . . . . 9 (𝑛 = (♯‘𝐴) → ((♯‘𝑥) = 𝑛 ↔ (♯‘𝑥) = (♯‘𝐴)))
1514anbi2d 641 . . . . . . . 8 (𝑛 = (♯‘𝐴) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) ↔ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴))))
1615imbi1d 344 . . . . . . 7 (𝑛 = (♯‘𝐴) → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑)))
17162ralbidv 3229 . . . . . 6 (𝑛 = (♯‘𝐴) → (∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑛) → 𝜑) ↔ ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑)))
18 eqeq1 2769 . . . . . . . . . . 11 ((♯‘𝑥) = 0 → ((♯‘𝑥) = (♯‘𝑤) ↔ 0 = (♯‘𝑤)))
1918adantl 486 . . . . . . . . . 10 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ (♯‘𝑥) = 0) → ((♯‘𝑥) = (♯‘𝑤) ↔ 0 = (♯‘𝑤)))
20 eqcom 2772 . . . . . . . . . . . . . 14 (0 = (♯‘𝑤) ↔ (♯‘𝑤) = 0)
21 hasheq0 14390 . . . . . . . . . . . . . 14 (𝑤 ∈ Word 𝑌 → ((♯‘𝑤) = 0 ↔ 𝑤 = ∅))
2220, 21bitrid 286 . . . . . . . . . . . . 13 (𝑤 ∈ Word 𝑌 → (0 = (♯‘𝑤) ↔ 𝑤 = ∅))
23 hasheq0 14390 . . . . . . . . . . . . . . 15 (𝑥 ∈ Word 𝑋 → ((♯‘𝑥) = 0 ↔ 𝑥 = ∅))
24 wrd2ind.6 . . . . . . . . . . . . . . . . 17 𝜓
25 wrd2ind.1 . . . . . . . . . . . . . . . . 17 ((𝑥 = ∅ ∧ 𝑤 = ∅) → (𝜑𝜓))
2624, 25mpbiri 261 . . . . . . . . . . . . . . . 16 ((𝑥 = ∅ ∧ 𝑤 = ∅) → 𝜑)
2726ex 417 . . . . . . . . . . . . . . 15 (𝑥 = ∅ → (𝑤 = ∅ → 𝜑))
2823, 27biimtrdi 256 . . . . . . . . . . . . . 14 (𝑥 ∈ Word 𝑋 → ((♯‘𝑥) = 0 → (𝑤 = ∅ → 𝜑)))
2928com13 89 . . . . . . . . . . . . 13 (𝑤 = ∅ → ((♯‘𝑥) = 0 → (𝑥 ∈ Word 𝑋𝜑)))
3022, 29biimtrdi 256 . . . . . . . . . . . 12 (𝑤 ∈ Word 𝑌 → (0 = (♯‘𝑤) → ((♯‘𝑥) = 0 → (𝑥 ∈ Word 𝑋𝜑))))
3130com24 96 . . . . . . . . . . 11 (𝑤 ∈ Word 𝑌 → (𝑥 ∈ Word 𝑋 → ((♯‘𝑥) = 0 → (0 = (♯‘𝑤) → 𝜑))))
3231imp31 422 . . . . . . . . . 10 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ (♯‘𝑥) = 0) → (0 = (♯‘𝑤) → 𝜑))
3319, 32sylbid 243 . . . . . . . . 9 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ (♯‘𝑥) = 0) → ((♯‘𝑥) = (♯‘𝑤) → 𝜑))
3433ex 417 . . . . . . . 8 ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) → ((♯‘𝑥) = 0 → ((♯‘𝑥) = (♯‘𝑤) → 𝜑)))
3534impcomd 416 . . . . . . 7 ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0) → 𝜑))
3635rgen2 3205 . . . . . 6 𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 0) → 𝜑)
37 fveq2 6871 . . . . . . . . . . . . 13 (𝑥 = 𝑦 → (♯‘𝑥) = (♯‘𝑦))
38 fveq2 6871 . . . . . . . . . . . . 13 (𝑤 = 𝑢 → (♯‘𝑤) = (♯‘𝑢))
3937, 38eqeqan12d 2779 . . . . . . . . . . . 12 ((𝑥 = 𝑦𝑤 = 𝑢) → ((♯‘𝑥) = (♯‘𝑤) ↔ (♯‘𝑦) = (♯‘𝑢)))
40 fveqeq2 6880 . . . . . . . . . . . . 13 (𝑥 = 𝑦 → ((♯‘𝑥) = 𝑚 ↔ (♯‘𝑦) = 𝑚))
4140adantr 485 . . . . . . . . . . . 12 ((𝑥 = 𝑦𝑤 = 𝑢) → ((♯‘𝑥) = 𝑚 ↔ (♯‘𝑦) = 𝑚))
4239, 41anbi12d 643 . . . . . . . . . . 11 ((𝑥 = 𝑦𝑤 = 𝑢) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) ↔ ((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚)))
43 wrd2ind.2 . . . . . . . . . . 11 ((𝑥 = 𝑦𝑤 = 𝑢) → (𝜑𝜒))
4442, 43imbi12d 347 . . . . . . . . . 10 ((𝑥 = 𝑦𝑤 = 𝑢) → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) ↔ (((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)))
4544ancoms 463 . . . . . . . . 9 ((𝑤 = 𝑢𝑥 = 𝑦) → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) ↔ (((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)))
4645cbvraldva 3245 . . . . . . . 8 (𝑤 = 𝑢 → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) ↔ ∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)))
4746cbvralvw 3243 . . . . . . 7 (∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) ↔ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒))
48 pfxcl 14705 . . . . . . . . . . . . . . . . 17 (𝑤 ∈ Word 𝑌 → (𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌)
4948adantr 485 . . . . . . . . . . . . . . . 16 ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) → (𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌)
5049ad2antrl 740 . . . . . . . . . . . . . . 15 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌)
51 simprll 790 . . . . . . . . . . . . . . . 16 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ∈ Word 𝑌)
52 eqeq1 2769 . . . . . . . . . . . . . . . . . . . . . 22 ((♯‘𝑥) = (𝑚 + 1) → ((♯‘𝑥) = (♯‘𝑤) ↔ (𝑚 + 1) = (♯‘𝑤)))
53 nn0p1nn 12534 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑚 ∈ ℕ0 → (𝑚 + 1) ∈ ℕ)
54 eleq1 2853 . . . . . . . . . . . . . . . . . . . . . . . 24 ((♯‘𝑤) = (𝑚 + 1) → ((♯‘𝑤) ∈ ℕ ↔ (𝑚 + 1) ∈ ℕ))
5554eqcoms 2773 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑚 + 1) = (♯‘𝑤) → ((♯‘𝑤) ∈ ℕ ↔ (𝑚 + 1) ∈ ℕ))
5653, 55imbitrrid 249 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑚 + 1) = (♯‘𝑤) → (𝑚 ∈ ℕ0 → (♯‘𝑤) ∈ ℕ))
5752, 56biimtrdi 256 . . . . . . . . . . . . . . . . . . . . 21 ((♯‘𝑥) = (𝑚 + 1) → ((♯‘𝑥) = (♯‘𝑤) → (𝑚 ∈ ℕ0 → (♯‘𝑤) ∈ ℕ)))
5857impcom 412 . . . . . . . . . . . . . . . . . . . 20 (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → (𝑚 ∈ ℕ0 → (♯‘𝑤) ∈ ℕ))
5958adantl 486 . . . . . . . . . . . . . . . . . . 19 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1))) → (𝑚 ∈ ℕ0 → (♯‘𝑤) ∈ ℕ))
6059impcom 412 . . . . . . . . . . . . . . . . . 18 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑤) ∈ ℕ)
6160nnge1d 12275 . . . . . . . . . . . . . . . . 17 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 1 ≤ (♯‘𝑤))
62 wrdlenge1n0 14577 . . . . . . . . . . . . . . . . . 18 (𝑤 ∈ Word 𝑌 → (𝑤 ≠ ∅ ↔ 1 ≤ (♯‘𝑤)))
6351, 62syl 18 . . . . . . . . . . . . . . . . 17 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑤 ≠ ∅ ↔ 1 ≤ (♯‘𝑤)))
6461, 63mpbird 260 . . . . . . . . . . . . . . . 16 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ≠ ∅)
65 lswcl 14595 . . . . . . . . . . . . . . . 16 ((𝑤 ∈ Word 𝑌𝑤 ≠ ∅) → (lastS‘𝑤) ∈ 𝑌)
6651, 64, 65syl2anc 595 . . . . . . . . . . . . . . 15 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (lastS‘𝑤) ∈ 𝑌)
6750, 66jca 520 . . . . . . . . . . . . . 14 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌 ∧ (lastS‘𝑤) ∈ 𝑌))
68 pfxcl 14705 . . . . . . . . . . . . . . . 16 (𝑥 ∈ Word 𝑋 → (𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋)
6968adantl 486 . . . . . . . . . . . . . . 15 ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) → (𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋)
7069ad2antrl 740 . . . . . . . . . . . . . 14 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋)
71 simprlr 791 . . . . . . . . . . . . . . 15 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ∈ Word 𝑋)
72 eleq1 2853 . . . . . . . . . . . . . . . . . . . 20 ((♯‘𝑥) = (𝑚 + 1) → ((♯‘𝑥) ∈ ℕ ↔ (𝑚 + 1) ∈ ℕ))
7353, 72imbitrrid 249 . . . . . . . . . . . . . . . . . . 19 ((♯‘𝑥) = (𝑚 + 1) → (𝑚 ∈ ℕ0 → (♯‘𝑥) ∈ ℕ))
7473ad2antll 741 . . . . . . . . . . . . . . . . . 18 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1))) → (𝑚 ∈ ℕ0 → (♯‘𝑥) ∈ ℕ))
7574impcom 412 . . . . . . . . . . . . . . . . 17 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑥) ∈ ℕ)
7675nnge1d 12275 . . . . . . . . . . . . . . . 16 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 1 ≤ (♯‘𝑥))
77 wrdlenge1n0 14577 . . . . . . . . . . . . . . . . 17 (𝑥 ∈ Word 𝑋 → (𝑥 ≠ ∅ ↔ 1 ≤ (♯‘𝑥)))
7871, 77syl 18 . . . . . . . . . . . . . . . 16 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑥 ≠ ∅ ↔ 1 ≤ (♯‘𝑥)))
7976, 78mpbird 260 . . . . . . . . . . . . . . 15 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ≠ ∅)
80 lswcl 14595 . . . . . . . . . . . . . . 15 ((𝑥 ∈ Word 𝑋𝑥 ≠ ∅) → (lastS‘𝑥) ∈ 𝑋)
8171, 79, 80syl2anc 595 . . . . . . . . . . . . . 14 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (lastS‘𝑥) ∈ 𝑋)
8267, 70, 81jca32 524 . . . . . . . . . . . . 13 ((𝑚 ∈ ℕ0 ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (((𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌 ∧ (lastS‘𝑤) ∈ 𝑌) ∧ ((𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋 ∧ (lastS‘𝑥) ∈ 𝑋)))
8382adantlr 727 . . . . . . . . . . . 12 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (((𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌 ∧ (lastS‘𝑤) ∈ 𝑌) ∧ ((𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋 ∧ (lastS‘𝑥) ∈ 𝑋)))
84 simprl 782 . . . . . . . . . . . . . 14 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋))
85 simplr 780 . . . . . . . . . . . . . 14 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒))
86 simprrl 792 . . . . . . . . . . . . . . . . 17 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑥) = (♯‘𝑤))
8786oveq1d 7415 . . . . . . . . . . . . . . . 16 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) − 1) = ((♯‘𝑤) − 1))
88 simprlr 791 . . . . . . . . . . . . . . . . 17 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ∈ Word 𝑋)
89 fzossfz 13698 . . . . . . . . . . . . . . . . . 18 (0..^(♯‘𝑥)) ⊆ (0...(♯‘𝑥))
90 simprrr 793 . . . . . . . . . . . . . . . . . . . 20 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑥) = (𝑚 + 1))
9153ad2antrr 738 . . . . . . . . . . . . . . . . . . . 20 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝑚 + 1) ∈ ℕ)
9290, 91eqeltrd 2865 . . . . . . . . . . . . . . . . . . 19 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑥) ∈ ℕ)
93 fzo0end 13778 . . . . . . . . . . . . . . . . . . 19 ((♯‘𝑥) ∈ ℕ → ((♯‘𝑥) − 1) ∈ (0..^(♯‘𝑥)))
9492, 93syl 18 . . . . . . . . . . . . . . . . . 18 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) − 1) ∈ (0..^(♯‘𝑥)))
9589, 94sselid 3937 . . . . . . . . . . . . . . . . 17 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥)))
96 pfxlen 14711 . . . . . . . . . . . . . . . . 17 ((𝑥 ∈ Word 𝑋 ∧ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥))) → (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = ((♯‘𝑥) − 1))
9788, 95, 96syl2anc 595 . . . . . . . . . . . . . . . 16 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = ((♯‘𝑥) − 1))
98 simprll 790 . . . . . . . . . . . . . . . . 17 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ∈ Word 𝑌)
99 oveq1 7407 . . . . . . . . . . . . . . . . . . . . . 22 ((♯‘𝑤) = (♯‘𝑥) → ((♯‘𝑤) − 1) = ((♯‘𝑥) − 1))
100 oveq2 7408 . . . . . . . . . . . . . . . . . . . . . 22 ((♯‘𝑤) = (♯‘𝑥) → (0...(♯‘𝑤)) = (0...(♯‘𝑥)))
10199, 100eleq12d 2859 . . . . . . . . . . . . . . . . . . . . 21 ((♯‘𝑤) = (♯‘𝑥) → (((♯‘𝑤) − 1) ∈ (0...(♯‘𝑤)) ↔ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥))))
102101eqcoms 2773 . . . . . . . . . . . . . . . . . . . 20 ((♯‘𝑥) = (♯‘𝑤) → (((♯‘𝑤) − 1) ∈ (0...(♯‘𝑤)) ↔ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥))))
103102adantr 485 . . . . . . . . . . . . . . . . . . 19 (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → (((♯‘𝑤) − 1) ∈ (0...(♯‘𝑤)) ↔ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥))))
104103ad2antll 741 . . . . . . . . . . . . . . . . . 18 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (((♯‘𝑤) − 1) ∈ (0...(♯‘𝑤)) ↔ ((♯‘𝑥) − 1) ∈ (0...(♯‘𝑥))))
10595, 104mpbird 260 . . . . . . . . . . . . . . . . 17 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑤) − 1) ∈ (0...(♯‘𝑤)))
106 pfxlen 14711 . . . . . . . . . . . . . . . . 17 ((𝑤 ∈ Word 𝑌 ∧ ((♯‘𝑤) − 1) ∈ (0...(♯‘𝑤))) → (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) = ((♯‘𝑤) − 1))
10798, 105, 106syl2anc 595 . . . . . . . . . . . . . . . 16 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) = ((♯‘𝑤) − 1))
10887, 97, 1073eqtr4d 2810 . . . . . . . . . . . . . . 15 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))))
10990oveq1d 7415 . . . . . . . . . . . . . . . 16 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) − 1) = ((𝑚 + 1) − 1))
110 nn0cn 12505 . . . . . . . . . . . . . . . . . 18 (𝑚 ∈ ℕ0𝑚 ∈ ℂ)
111110ad2antrr 738 . . . . . . . . . . . . . . . . 17 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑚 ∈ ℂ)
112 ax-1cn 11146 . . . . . . . . . . . . . . . . 17 1 ∈ ℂ
113 pncan 11451 . . . . . . . . . . . . . . . . 17 ((𝑚 ∈ ℂ ∧ 1 ∈ ℂ) → ((𝑚 + 1) − 1) = 𝑚)
114111, 112, 113sylancl 597 . . . . . . . . . . . . . . . 16 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((𝑚 + 1) − 1) = 𝑚)
11597, 109, 1143eqtrd 2804 . . . . . . . . . . . . . . 15 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚)
116108, 115jca 520 . . . . . . . . . . . . . 14 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚))
11769adantr 485 . . . . . . . . . . . . . . . 16 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → (𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋)
118 fveq2 6871 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → (♯‘𝑦) = (♯‘(𝑥 prefix ((♯‘𝑥) − 1))))
119 fveq2 6871 . . . . . . . . . . . . . . . . . . . . . 22 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → (♯‘𝑢) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))))
120118, 119eqeqan12d 2779 . . . . . . . . . . . . . . . . . . . . 21 ((𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))))
121120expcom 418 . . . . . . . . . . . . . . . . . . . 20 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))))))
122121adantl 486 . . . . . . . . . . . . . . . . . . 19 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))))))
123122imp 411 . . . . . . . . . . . . . . . . . 18 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))))
124 fveqeq2 6880 . . . . . . . . . . . . . . . . . . 19 (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((♯‘𝑦) = 𝑚 ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚))
125124adantl 486 . . . . . . . . . . . . . . . . . 18 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ((♯‘𝑦) = 𝑚 ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚))
126123, 125anbi12d 643 . . . . . . . . . . . . . . . . 17 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → (((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) ↔ ((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚)))
127 vex 3461 . . . . . . . . . . . . . . . . . . . . 21 𝑦 ∈ V
128 vex 3461 . . . . . . . . . . . . . . . . . . . . 21 𝑢 ∈ V
129127, 128, 43sbc2ie 3822 . . . . . . . . . . . . . . . . . . . 20 ([𝑦 / 𝑥][𝑢 / 𝑤]𝜑𝜒)
130129bicomi 227 . . . . . . . . . . . . . . . . . . 19 (𝜒[𝑦 / 𝑥][𝑢 / 𝑤]𝜑)
131130a1i 11 . . . . . . . . . . . . . . . . . 18 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → (𝜒[𝑦 / 𝑥][𝑢 / 𝑤]𝜑))
132 simpr 489 . . . . . . . . . . . . . . . . . . 19 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)))
133132sbceq1d 3752 . . . . . . . . . . . . . . . . . 18 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ([𝑦 / 𝑥][𝑢 / 𝑤]𝜑[(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][𝑢 / 𝑤]𝜑))
134 dfsbcq 3749 . . . . . . . . . . . . . . . . . . . . 21 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([𝑢 / 𝑤]𝜑[(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))
135134sbcbidv 3802 . . . . . . . . . . . . . . . . . . . 20 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][𝑢 / 𝑤]𝜑[(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))
136135adantl 486 . . . . . . . . . . . . . . . . . . 19 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][𝑢 / 𝑤]𝜑[(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))
137136adantr 485 . . . . . . . . . . . . . . . . . 18 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][𝑢 / 𝑤]𝜑[(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))
138131, 133, 1373bitrd 308 . . . . . . . . . . . . . . . . 17 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → (𝜒[(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))
139126, 138imbi12d 347 . . . . . . . . . . . . . . . 16 ((((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) ∧ 𝑦 = (𝑥 prefix ((♯‘𝑥) − 1))) → ((((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒) ↔ (((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚) → [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)))
140117, 139rspcdv 3576 . . . . . . . . . . . . . . 15 (((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ 𝑢 = (𝑤 prefix ((♯‘𝑤) − 1))) → (∀𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒) → (((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚) → [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)))
14149, 140rspcimdv 3574 . . . . . . . . . . . . . 14 ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) → (∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒) → (((♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = 𝑚) → [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)))
14284, 85, 116, 141syl3c 67 . . . . . . . . . . . . 13 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → [(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)
143142, 108jca 520 . . . . . . . . . . . 12 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))))
144 dfsbcq 3749 . . . . . . . . . . . . . . . 16 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑[(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤][𝑦 / 𝑥]𝜑))
145 sbccom 3827 . . . . . . . . . . . . . . . 16 ([(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤][𝑦 / 𝑥]𝜑[𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑)
146144, 145bitrdi 290 . . . . . . . . . . . . . . 15 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑[𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))
147119eqeq2d 2776 . . . . . . . . . . . . . . 15 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ((♯‘𝑦) = (♯‘𝑢) ↔ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))))
148146, 147anbi12d 643 . . . . . . . . . . . . . 14 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → (([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ∧ (♯‘𝑦) = (♯‘𝑢)) ↔ ([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))))))
149 oveq1 7407 . . . . . . . . . . . . . . 15 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → (𝑢 ++ ⟨“𝑠”⟩) = ((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“𝑠”⟩))
150149sbceq1d 3752 . . . . . . . . . . . . . 14 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ([(𝑢 ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑[((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑))
151148, 150imbi12d 347 . . . . . . . . . . . . 13 (𝑢 = (𝑤 prefix ((♯‘𝑤) − 1)) → ((([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ∧ (♯‘𝑦) = (♯‘𝑢)) → [(𝑢 ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑) ↔ (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑)))
152 s1eq 14628 . . . . . . . . . . . . . . . . 17 (𝑠 = (lastS‘𝑤) → ⟨“𝑠”⟩ = ⟨“(lastS‘𝑤)”⟩)
153152oveq2d 7416 . . . . . . . . . . . . . . . 16 (𝑠 = (lastS‘𝑤) → ((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“𝑠”⟩) = ((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩))
154153sbceq1d 3752 . . . . . . . . . . . . . . 15 (𝑠 = (lastS‘𝑤) → ([((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑[((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑))
155154imbi2d 343 . . . . . . . . . . . . . 14 (𝑠 = (lastS‘𝑤) → ((([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑) ↔ (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑)))
156 sbccom 3827 . . . . . . . . . . . . . . . 16 ([((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑[(𝑦 ++ ⟨“𝑧”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑)
157156a1i 11 . . . . . . . . . . . . . . 15 (𝑠 = (lastS‘𝑤) → ([((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑[(𝑦 ++ ⟨“𝑧”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑))
158157imbi2d 343 . . . . . . . . . . . . . 14 (𝑠 = (lastS‘𝑤) → ((([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑) ↔ (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [(𝑦 ++ ⟨“𝑧”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑)))
159155, 158bitrd 282 . . . . . . . . . . . . 13 (𝑠 = (lastS‘𝑤) → ((([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑) ↔ (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [(𝑦 ++ ⟨“𝑧”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑)))
160 dfsbcq 3749 . . . . . . . . . . . . . . 15 (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑[(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑))
161 fveqeq2 6880 . . . . . . . . . . . . . . 15 (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ((♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))) ↔ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))))
162160, 161anbi12d 643 . . . . . . . . . . . . . 14 (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → (([𝑦 / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘𝑦) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) ↔ ([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1))))))
163 oveq1 7407 . . . . . . . . . . . . . . 15 (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → (𝑦 ++ ⟨“𝑧”⟩) = ((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“𝑧”⟩))
164163sbceq1d 3752 . . . . . . . . . . . . . 14 (𝑦 = (𝑥 prefix ((♯‘𝑥) − 1)) → ([(𝑦 ++ ⟨“𝑧”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑[((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“𝑧”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑))
165162, 164imbi12d 347 . . . . . . . . . . . . 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 14628 . . . . . . . . . . . . . . . 16 (𝑧 = (lastS‘𝑥) → ⟨“𝑧”⟩ = ⟨“(lastS‘𝑥)”⟩)
167166oveq2d 7416 . . . . . . . . . . . . . . 15 (𝑧 = (lastS‘𝑥) → ((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“𝑧”⟩) = ((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩))
168167sbceq1d 3752 . . . . . . . . . . . . . 14 (𝑧 = (lastS‘𝑥) → ([((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“𝑧”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑[((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑))
169168imbi2d 343 . . . . . . . . . . . . 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 780 . . . . . . . . . . . . . . . . 17 ((((𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (𝑦 ∈ Word 𝑋𝑧𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝑦 ∈ Word 𝑋𝑧𝑋))
171 simpll 778 . . . . . . . . . . . . . . . . 17 ((((𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (𝑦 ∈ Word 𝑋𝑧𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝑢 ∈ Word 𝑌𝑠𝑌))
172 simpr 489 . . . . . . . . . . . . . . . . 17 ((((𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (𝑦 ∈ Word 𝑋𝑧𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → (♯‘𝑦) = (♯‘𝑢))
173 wrd2ind.7 . . . . . . . . . . . . . . . . 17 (((𝑦 ∈ Word 𝑋𝑧𝑋) ∧ (𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝜒𝜃))
174170, 171, 172, 173syl3anc 1394 . . . . . . . . . . . . . . . 16 ((((𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (𝑦 ∈ Word 𝑋𝑧𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → (𝜒𝜃))
17543ancoms 463 . . . . . . . . . . . . . . . . 17 ((𝑤 = 𝑢𝑥 = 𝑦) → (𝜑𝜒))
176128, 127, 175sbc2ie 3822 . . . . . . . . . . . . . . . 16 ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑𝜒)
177 ovex 7433 . . . . . . . . . . . . . . . . 17 (𝑢 ++ ⟨“𝑠”⟩) ∈ V
178 ovex 7433 . . . . . . . . . . . . . . . . 17 (𝑦 ++ ⟨“𝑧”⟩) ∈ V
179 wrd2ind.3 . . . . . . . . . . . . . . . . . 18 ((𝑥 = (𝑦 ++ ⟨“𝑧”⟩) ∧ 𝑤 = (𝑢 ++ ⟨“𝑠”⟩)) → (𝜑𝜃))
180179ancoms 463 . . . . . . . . . . . . . . . . 17 ((𝑤 = (𝑢 ++ ⟨“𝑠”⟩) ∧ 𝑥 = (𝑦 ++ ⟨“𝑧”⟩)) → (𝜑𝜃))
181177, 178, 180sbc2ie 3822 . . . . . . . . . . . . . . . 16 ([(𝑢 ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑𝜃)
182174, 176, 1813imtr4g 299 . . . . . . . . . . . . . . 15 ((((𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (𝑦 ∈ Word 𝑋𝑧𝑋)) ∧ (♯‘𝑦) = (♯‘𝑢)) → ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑[(𝑢 ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑))
183182ex 417 . . . . . . . . . . . . . 14 (((𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (𝑦 ∈ Word 𝑋𝑧𝑋)) → ((♯‘𝑦) = (♯‘𝑢) → ([𝑢 / 𝑤][𝑦 / 𝑥]𝜑[(𝑢 ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑)))
184183impcomd 416 . . . . . . . . . . . . 13 (((𝑢 ∈ Word 𝑌𝑠𝑌) ∧ (𝑦 ∈ Word 𝑋𝑧𝑋)) → (([𝑢 / 𝑤][𝑦 / 𝑥]𝜑 ∧ (♯‘𝑦) = (♯‘𝑢)) → [(𝑢 ++ ⟨“𝑠”⟩) / 𝑤][(𝑦 ++ ⟨“𝑧”⟩) / 𝑥]𝜑))
185151, 159, 165, 169, 184vtocl4ga 3550 . . . . . . . . . . . 12 ((((𝑤 prefix ((♯‘𝑤) − 1)) ∈ Word 𝑌 ∧ (lastS‘𝑤) ∈ 𝑌) ∧ ((𝑥 prefix ((♯‘𝑥) − 1)) ∈ Word 𝑋 ∧ (lastS‘𝑥) ∈ 𝑋)) → (([(𝑥 prefix ((♯‘𝑥) − 1)) / 𝑥][(𝑤 prefix ((♯‘𝑤) − 1)) / 𝑤]𝜑 ∧ (♯‘(𝑥 prefix ((♯‘𝑥) − 1))) = (♯‘(𝑤 prefix ((♯‘𝑤) − 1)))) → [((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑))
18683, 143, 185sylc 66 . . . . . . . . . . 11 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → [((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑)
187 eqtr2 2786 . . . . . . . . . . . . . . . 16 (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → (♯‘𝑤) = (𝑚 + 1))
188187ad2antll 741 . . . . . . . . . . . . . . 15 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑤) = (𝑚 + 1))
189188, 91eqeltrd 2865 . . . . . . . . . . . . . 14 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (♯‘𝑤) ∈ ℕ)
190 wrdfin 14559 . . . . . . . . . . . . . . . . 17 (𝑤 ∈ Word 𝑌𝑤 ∈ Fin)
191190adantr 485 . . . . . . . . . . . . . . . 16 ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) → 𝑤 ∈ Fin)
192191ad2antrl 740 . . . . . . . . . . . . . . 15 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ∈ Fin)
193 hashnncl 14393 . . . . . . . . . . . . . . 15 (𝑤 ∈ Fin → ((♯‘𝑤) ∈ ℕ ↔ 𝑤 ≠ ∅))
194192, 193syl 18 . . . . . . . . . . . . . 14 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑤) ∈ ℕ ↔ 𝑤 ≠ ∅))
195189, 194mpbid 235 . . . . . . . . . . . . 13 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 ≠ ∅)
196 pfxlswccat 14740 . . . . . . . . . . . . . 14 ((𝑤 ∈ Word 𝑌𝑤 ≠ ∅) → ((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) = 𝑤)
197196eqcomd 2771 . . . . . . . . . . . . 13 ((𝑤 ∈ Word 𝑌𝑤 ≠ ∅) → 𝑤 = ((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩))
19898, 195, 197syl2anc 595 . . . . . . . . . . . 12 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑤 = ((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩))
199 wrdfin 14559 . . . . . . . . . . . . . . . . 17 (𝑥 ∈ Word 𝑋𝑥 ∈ Fin)
200199adantl 486 . . . . . . . . . . . . . . . 16 ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) → 𝑥 ∈ Fin)
201200ad2antrl 740 . . . . . . . . . . . . . . 15 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ∈ Fin)
202 hashnncl 14393 . . . . . . . . . . . . . . 15 (𝑥 ∈ Fin → ((♯‘𝑥) ∈ ℕ ↔ 𝑥 ≠ ∅))
203201, 202syl 18 . . . . . . . . . . . . . 14 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → ((♯‘𝑥) ∈ ℕ ↔ 𝑥 ≠ ∅))
20492, 203mpbid 235 . . . . . . . . . . . . 13 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 ≠ ∅)
205 pfxlswccat 14740 . . . . . . . . . . . . . 14 ((𝑥 ∈ Word 𝑋𝑥 ≠ ∅) → ((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩) = 𝑥)
206205eqcomd 2771 . . . . . . . . . . . . 13 ((𝑥 ∈ Word 𝑋𝑥 ≠ ∅) → 𝑥 = ((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩))
20788, 204, 206syl2anc 595 . . . . . . . . . . . 12 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝑥 = ((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩))
208 sbceq1a 3758 . . . . . . . . . . . . 13 (𝑤 = ((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) → (𝜑[((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑))
209 sbceq1a 3758 . . . . . . . . . . . . 13 (𝑥 = ((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩) → ([((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑[((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑))
210208, 209sylan9bb 518 . . . . . . . . . . . 12 ((𝑤 = ((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) ∧ 𝑥 = ((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩)) → (𝜑[((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑))
211198, 207, 210syl2anc 595 . . . . . . . . . . 11 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → (𝜑[((𝑥 prefix ((♯‘𝑥) − 1)) ++ ⟨“(lastS‘𝑥)”⟩) / 𝑥][((𝑤 prefix ((♯‘𝑤) − 1)) ++ ⟨“(lastS‘𝑤)”⟩) / 𝑤]𝜑))
212186, 211mpbird 260 . . . . . . . . . 10 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ ((𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋) ∧ ((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)))) → 𝜑)
213212expr 461 . . . . . . . . 9 (((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) ∧ (𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋)) → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑))
214213ralrimivva 3208 . . . . . . . 8 ((𝑚 ∈ ℕ0 ∧ ∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒)) → ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑))
215214ex 417 . . . . . . 7 (𝑚 ∈ ℕ0 → (∀𝑢 ∈ Word 𝑌𝑦 ∈ Word 𝑋(((♯‘𝑦) = (♯‘𝑢) ∧ (♯‘𝑦) = 𝑚) → 𝜒) → ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑)))
21647, 215biimtrid 245 . . . . . 6 (𝑚 ∈ ℕ0 → (∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = 𝑚) → 𝜑) → ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (𝑚 + 1)) → 𝜑)))
2175, 9, 13, 17, 36, 216nn0ind 12682 . . . . 5 ((♯‘𝐴) ∈ ℕ0 → ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑))
2181, 217syl 18 . . . 4 (𝐴 ∈ Word 𝑋 → ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑))
2192183ad2ant1 1149 . . 3 ((𝐴 ∈ Word 𝑋𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → ∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑))
220 fveq2 6871 . . . . . . . . 9 (𝑤 = 𝐵 → (♯‘𝑤) = (♯‘𝐵))
221220eqeq2d 2776 . . . . . . . 8 (𝑤 = 𝐵 → ((♯‘𝑥) = (♯‘𝑤) ↔ (♯‘𝑥) = (♯‘𝐵)))
222221anbi1d 642 . . . . . . 7 (𝑤 = 𝐵 → (((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) ↔ ((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴))))
223 wrd2ind.5 . . . . . . 7 (𝑤 = 𝐵 → (𝜑𝜌))
224222, 223imbi12d 347 . . . . . 6 (𝑤 = 𝐵 → ((((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑) ↔ (((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌)))
225224ralbidv 3188 . . . . 5 (𝑤 = 𝐵 → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑) ↔ ∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌)))
226225rspcv 3580 . . . 4 (𝐵 ∈ Word 𝑌 → (∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑) → ∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌)))
2272263ad2ant2 1150 . . 3 ((𝐴 ∈ Word 𝑋𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → (∀𝑤 ∈ Word 𝑌𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝑤) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜑) → ∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌)))
228219, 227mpd 16 . 2 ((𝐴 ∈ Word 𝑋𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → ∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌))
229 eqidd 2766 . 2 ((𝐴 ∈ Word 𝑋𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → (♯‘𝐴) = (♯‘𝐴))
230 fveqeq2 6880 . . . . . . . . . 10 (𝑥 = 𝐴 → ((♯‘𝑥) = (♯‘𝐵) ↔ (♯‘𝐴) = (♯‘𝐵)))
231 fveqeq2 6880 . . . . . . . . . 10 (𝑥 = 𝐴 → ((♯‘𝑥) = (♯‘𝐴) ↔ (♯‘𝐴) = (♯‘𝐴)))
232230, 231anbi12d 643 . . . . . . . . 9 (𝑥 = 𝐴 → (((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) ↔ ((♯‘𝐴) = (♯‘𝐵) ∧ (♯‘𝐴) = (♯‘𝐴))))
233 wrd2ind.4 . . . . . . . . 9 (𝑥 = 𝐴 → (𝜌𝜏))
234232, 233imbi12d 347 . . . . . . . 8 (𝑥 = 𝐴 → ((((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) ↔ (((♯‘𝐴) = (♯‘𝐵) ∧ (♯‘𝐴) = (♯‘𝐴)) → 𝜏)))
235234rspcv 3580 . . . . . . 7 (𝐴 ∈ Word 𝑋 → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → (((♯‘𝐴) = (♯‘𝐵) ∧ (♯‘𝐴) = (♯‘𝐴)) → 𝜏)))
236235com23 87 . . . . . 6 (𝐴 ∈ Word 𝑋 → (((♯‘𝐴) = (♯‘𝐵) ∧ (♯‘𝐴) = (♯‘𝐴)) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → 𝜏)))
237236expd 420 . . . . 5 (𝐴 ∈ Word 𝑋 → ((♯‘𝐴) = (♯‘𝐵) → ((♯‘𝐴) = (♯‘𝐴) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → 𝜏))))
238237com34 92 . . . 4 (𝐴 ∈ Word 𝑋 → ((♯‘𝐴) = (♯‘𝐵) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → ((♯‘𝐴) = (♯‘𝐴) → 𝜏))))
239238imp 411 . . 3 ((𝐴 ∈ Word 𝑋 ∧ (♯‘𝐴) = (♯‘𝐵)) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → ((♯‘𝐴) = (♯‘𝐴) → 𝜏)))
2402393adant2 1147 . 2 ((𝐴 ∈ Word 𝑋𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → (∀𝑥 ∈ Word 𝑋(((♯‘𝑥) = (♯‘𝐵) ∧ (♯‘𝑥) = (♯‘𝐴)) → 𝜌) → ((♯‘𝐴) = (♯‘𝐴) → 𝜏)))
241228, 229, 240mp2d 50 1 ((𝐴 ∈ Word 𝑋𝐵 ∈ Word 𝑌 ∧ (♯‘𝐴) = (♯‘𝐵)) → 𝜏)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400  w3a 1101   = wceq 1563  wcel 2145  wne 2960  wral 3079  [wsbc 3747  c0 4288   class class class wbr 5105  cfv 6525  (class class class)co 7400  Fincfn 8931  cc 11086  0cc0 11088  1c1 11089   + caddc 11091  cle 11232  cmin 11429  cn 12224  0cn0 12495  ...cfz 13526  ..^cfzo 13673  chash 14357  Word cword 14540  lastSclsw 14589   ++ cconcat 14597  ⟨“cs1 14623   prefix cpfx 14698
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1818  ax-4 1832  ax-5 1933  ax-6 1990  ax-7 2031  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2737  ax-rep 5232  ax-sep 5251  ax-nul 5261  ax-pow 5327  ax-pr 5395  ax-un 7722  ax-cnex 11144  ax-resscn 11145  ax-1cn 11146  ax-icn 11147  ax-addcl 11148  ax-addrcl 11149  ax-mulcl 11150  ax-mulrcl 11151  ax-mulcom 11152  ax-addass 11153  ax-mulass 11154  ax-distr 11155  ax-i2m1 11156  ax-1ne0 11157  ax-1rid 11158  ax-rnegex 11159  ax-rrecex 11160  ax-cnre 11161  ax-pre-lttri 11162  ax-pre-lttrn 11163  ax-pre-ltadd 11164  ax-pre-mulgt0 11165
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1102  df-3an 1103  df-tru 1566  df-fal 1576  df-ex 1803  df-nf 1807  df-sb 2094  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-nel 3065  df-ral 3080  df-rex 3090  df-reu 3371  df-rab 3418  df-v 3459  df-sbc 3748  df-csb 3856  df-dif 3910  df-un 3912  df-in 3914  df-ss 3924  df-pss 3927  df-nul 4289  df-if 4484  df-pw 4560  df-sn 4586  df-pr 4588  df-op 4592  df-uni 4869  df-int 4909  df-iun 4954  df-br 5106  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5547  df-eprel 5552  df-po 5560  df-so 5561  df-fr 5605  df-we 5607  df-xp 5658  df-rel 5659  df-cnv 5660  df-co 5661  df-dm 5662  df-rn 5663  df-res 5664  df-ima 5665  df-pred 6292  df-ord 6353  df-on 6354  df-lim 6355  df-suc 6356  df-iota 6481  df-fun 6527  df-fn 6528  df-f 6529  df-f1 6530  df-fo 6531  df-f1o 6532  df-fv 6533  df-riota 7357  df-ov 7403  df-oprab 7404  df-mpo 7405  df-om 7851  df-1st 7974  df-2nd 7975  df-frecs 8266  df-wrecs 8297  df-recs 8346  df-rdg 8385  df-1o 8441  df-er 8682  df-en 8932  df-dom 8933  df-sdom 8934  df-fin 8935  df-card 9913  df-pnf 11233  df-mnf 11234  df-xr 11235  df-ltxr 11236  df-le 11237  df-sub 11431  df-neg 11432  df-nn 12225  df-n0 12496  df-xnn0 12569  df-z 12583  df-uz 12854  df-fz 13527  df-fzo 13674  df-hash 14358  df-word 14541  df-lsw 14590  df-concat 14598  df-s1 14624  df-substr 14669  df-pfx 14699
This theorem is referenced by:  gsmsymgreq  19493
  Copyright terms: Public domain W3C validator