Proof of Theorem 2swrd2eqwrdeq
Step | Hyp | Ref
| Expression |
1 | | lencl 13356 |
. . . . 5
⊢ (𝑊 ∈ Word 𝑉 → (#‘𝑊) ∈
ℕ0) |
2 | | 1z 11445 |
. . . . . . . . . 10
⊢ 1 ∈
ℤ |
3 | | nn0z 11438 |
. . . . . . . . . 10
⊢
((#‘𝑊) ∈
ℕ0 → (#‘𝑊) ∈ ℤ) |
4 | | zltp1le 11465 |
. . . . . . . . . 10
⊢ ((1
∈ ℤ ∧ (#‘𝑊) ∈ ℤ) → (1 <
(#‘𝑊) ↔ (1 + 1)
≤ (#‘𝑊))) |
5 | 2, 3, 4 | sylancr 696 |
. . . . . . . . 9
⊢
((#‘𝑊) ∈
ℕ0 → (1 < (#‘𝑊) ↔ (1 + 1) ≤ (#‘𝑊))) |
6 | | 1p1e2 11172 |
. . . . . . . . . . . 12
⊢ (1 + 1) =
2 |
7 | 6 | a1i 11 |
. . . . . . . . . . 11
⊢
((#‘𝑊) ∈
ℕ0 → (1 + 1) = 2) |
8 | 7 | breq1d 4695 |
. . . . . . . . . 10
⊢
((#‘𝑊) ∈
ℕ0 → ((1 + 1) ≤ (#‘𝑊) ↔ 2 ≤ (#‘𝑊))) |
9 | 8 | biimpd 219 |
. . . . . . . . 9
⊢
((#‘𝑊) ∈
ℕ0 → ((1 + 1) ≤ (#‘𝑊) → 2 ≤ (#‘𝑊))) |
10 | 5, 9 | sylbid 230 |
. . . . . . . 8
⊢
((#‘𝑊) ∈
ℕ0 → (1 < (#‘𝑊) → 2 ≤ (#‘𝑊))) |
11 | 10 | imp 444 |
. . . . . . 7
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → 2 ≤ (#‘𝑊)) |
12 | | 2nn0 11347 |
. . . . . . . 8
⊢ 2 ∈
ℕ0 |
13 | | simpl 472 |
. . . . . . . 8
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → (#‘𝑊) ∈
ℕ0) |
14 | | nn0sub 11381 |
. . . . . . . 8
⊢ ((2
∈ ℕ0 ∧ (#‘𝑊) ∈ ℕ0) → (2 ≤
(#‘𝑊) ↔
((#‘𝑊) − 2)
∈ ℕ0)) |
15 | 12, 13, 14 | sylancr 696 |
. . . . . . 7
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → (2 ≤ (#‘𝑊) ↔ ((#‘𝑊) − 2) ∈
ℕ0)) |
16 | 11, 15 | mpbid 222 |
. . . . . 6
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → ((#‘𝑊) − 2) ∈
ℕ0) |
17 | 3 | adantr 480 |
. . . . . . 7
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → (#‘𝑊) ∈ ℤ) |
18 | | 0red 10079 |
. . . . . . . . . 10
⊢
((#‘𝑊) ∈
ℕ0 → 0 ∈ ℝ) |
19 | | 1red 10093 |
. . . . . . . . . 10
⊢
((#‘𝑊) ∈
ℕ0 → 1 ∈ ℝ) |
20 | | nn0re 11339 |
. . . . . . . . . 10
⊢
((#‘𝑊) ∈
ℕ0 → (#‘𝑊) ∈ ℝ) |
21 | 18, 19, 20 | 3jca 1261 |
. . . . . . . . 9
⊢
((#‘𝑊) ∈
ℕ0 → (0 ∈ ℝ ∧ 1 ∈ ℝ ∧
(#‘𝑊) ∈
ℝ)) |
22 | | 0lt1 10588 |
. . . . . . . . 9
⊢ 0 <
1 |
23 | | lttr 10152 |
. . . . . . . . . 10
⊢ ((0
∈ ℝ ∧ 1 ∈ ℝ ∧ (#‘𝑊) ∈ ℝ) → ((0 < 1 ∧ 1
< (#‘𝑊)) → 0
< (#‘𝑊))) |
24 | 23 | expd 451 |
. . . . . . . . 9
⊢ ((0
∈ ℝ ∧ 1 ∈ ℝ ∧ (#‘𝑊) ∈ ℝ) → (0 < 1 → (1
< (#‘𝑊) → 0
< (#‘𝑊)))) |
25 | 21, 22, 24 | mpisyl 21 |
. . . . . . . 8
⊢
((#‘𝑊) ∈
ℕ0 → (1 < (#‘𝑊) → 0 < (#‘𝑊))) |
26 | 25 | imp 444 |
. . . . . . 7
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → 0 < (#‘𝑊)) |
27 | | elnnz 11425 |
. . . . . . 7
⊢
((#‘𝑊) ∈
ℕ ↔ ((#‘𝑊)
∈ ℤ ∧ 0 < (#‘𝑊))) |
28 | 17, 26, 27 | sylanbrc 699 |
. . . . . 6
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → (#‘𝑊) ∈ ℕ) |
29 | | 2pos 11150 |
. . . . . . . 8
⊢ 0 <
2 |
30 | | 2re 11128 |
. . . . . . . . . 10
⊢ 2 ∈
ℝ |
31 | 30 | a1i 11 |
. . . . . . . . 9
⊢
((#‘𝑊) ∈
ℕ0 → 2 ∈ ℝ) |
32 | 31, 20 | ltsubposd 10651 |
. . . . . . . 8
⊢
((#‘𝑊) ∈
ℕ0 → (0 < 2 ↔ ((#‘𝑊) − 2) < (#‘𝑊))) |
33 | 29, 32 | mpbii 223 |
. . . . . . 7
⊢
((#‘𝑊) ∈
ℕ0 → ((#‘𝑊) − 2) < (#‘𝑊)) |
34 | 33 | adantr 480 |
. . . . . 6
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → ((#‘𝑊) − 2) < (#‘𝑊)) |
35 | | elfzo0 12548 |
. . . . . 6
⊢
(((#‘𝑊)
− 2) ∈ (0..^(#‘𝑊)) ↔ (((#‘𝑊) − 2) ∈ ℕ0
∧ (#‘𝑊) ∈
ℕ ∧ ((#‘𝑊)
− 2) < (#‘𝑊))) |
36 | 16, 28, 34, 35 | syl3anbrc 1265 |
. . . . 5
⊢
(((#‘𝑊) ∈
ℕ0 ∧ 1 < (#‘𝑊)) → ((#‘𝑊) − 2) ∈ (0..^(#‘𝑊))) |
37 | 1, 36 | sylan 487 |
. . . 4
⊢ ((𝑊 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) → ((#‘𝑊) − 2) ∈ (0..^(#‘𝑊))) |
38 | 37 | 3adant2 1100 |
. . 3
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) → ((#‘𝑊) − 2) ∈ (0..^(#‘𝑊))) |
39 | | 2swrdeqwrdeq 13499 |
. . 3
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ ((#‘𝑊) − 2) ∈ (0..^(#‘𝑊))) → (𝑊 = 𝑈 ↔ ((#‘𝑊) = (#‘𝑈) ∧ ((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉))))) |
40 | 38, 39 | syld3an3 1411 |
. 2
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) → (𝑊 = 𝑈 ↔ ((#‘𝑊) = (#‘𝑈) ∧ ((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉))))) |
41 | | swrd2lsw 13741 |
. . . . . . . . 9
⊢ ((𝑊 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) → (𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = 〈“(𝑊‘((#‘𝑊) − 2))( lastS ‘𝑊)”〉) |
42 | 41 | 3adant2 1100 |
. . . . . . . 8
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) → (𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = 〈“(𝑊‘((#‘𝑊) − 2))( lastS ‘𝑊)”〉) |
43 | 42 | adantr 480 |
. . . . . . 7
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = 〈“(𝑊‘((#‘𝑊) − 2))( lastS ‘𝑊)”〉) |
44 | | breq2 4689 |
. . . . . . . . . . 11
⊢
((#‘𝑊) =
(#‘𝑈) → (1 <
(#‘𝑊) ↔ 1 <
(#‘𝑈))) |
45 | 44 | 3anbi3d 1445 |
. . . . . . . . . 10
⊢
((#‘𝑊) =
(#‘𝑈) → ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ↔ (𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑈)))) |
46 | | swrd2lsw 13741 |
. . . . . . . . . . 11
⊢ ((𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑈)) → (𝑈 substr 〈((#‘𝑈) − 2), (#‘𝑈)〉) = 〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉) |
47 | 46 | 3adant1 1099 |
. . . . . . . . . 10
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑈)) → (𝑈 substr 〈((#‘𝑈) − 2), (#‘𝑈)〉) = 〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉) |
48 | 45, 47 | syl6bi 243 |
. . . . . . . . 9
⊢
((#‘𝑊) =
(#‘𝑈) → ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) → (𝑈 substr 〈((#‘𝑈) − 2), (#‘𝑈)〉) = 〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉)) |
49 | 48 | impcom 445 |
. . . . . . . 8
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (𝑈 substr 〈((#‘𝑈) − 2), (#‘𝑈)〉) = 〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉) |
50 | | oveq1 6697 |
. . . . . . . . . . . 12
⊢
((#‘𝑊) =
(#‘𝑈) →
((#‘𝑊) − 2) =
((#‘𝑈) −
2)) |
51 | | id 22 |
. . . . . . . . . . . 12
⊢
((#‘𝑊) =
(#‘𝑈) →
(#‘𝑊) =
(#‘𝑈)) |
52 | 50, 51 | opeq12d 4441 |
. . . . . . . . . . 11
⊢
((#‘𝑊) =
(#‘𝑈) →
〈((#‘𝑊) −
2), (#‘𝑊)〉 =
〈((#‘𝑈) −
2), (#‘𝑈)〉) |
53 | 52 | oveq2d 6706 |
. . . . . . . . . 10
⊢
((#‘𝑊) =
(#‘𝑈) → (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = (𝑈 substr 〈((#‘𝑈) − 2), (#‘𝑈)〉)) |
54 | 53 | eqeq1d 2653 |
. . . . . . . . 9
⊢
((#‘𝑊) =
(#‘𝑈) → ((𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = 〈“(𝑈‘((#‘𝑈) − 2))( lastS
‘𝑈)”〉
↔ (𝑈 substr
〈((#‘𝑈) −
2), (#‘𝑈)〉) =
〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉)) |
55 | 54 | adantl 481 |
. . . . . . . 8
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → ((𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = 〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉 ↔ (𝑈 substr 〈((#‘𝑈) − 2), (#‘𝑈)〉) = 〈“(𝑈‘((#‘𝑈) − 2))( lastS
‘𝑈)”〉)) |
56 | 49, 55 | mpbird 247 |
. . . . . . 7
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = 〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉) |
57 | 43, 56 | eqeq12d 2666 |
. . . . . 6
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → ((𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) ↔ 〈“(𝑊‘((#‘𝑊) − 2))( lastS
‘𝑊)”〉 =
〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉)) |
58 | | fvexd 6241 |
. . . . . . 7
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (𝑊‘((#‘𝑊) − 2)) ∈ V) |
59 | | fvexd 6241 |
. . . . . . 7
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → ( lastS ‘𝑊) ∈ V) |
60 | | fvexd 6241 |
. . . . . . 7
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (𝑈‘((#‘𝑈) − 2)) ∈ V) |
61 | | fvexd 6241 |
. . . . . . 7
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → ( lastS ‘𝑈) ∈ V) |
62 | | s2eq2s1eq 13727 |
. . . . . . 7
⊢ ((((𝑊‘((#‘𝑊) − 2)) ∈ V ∧ (
lastS ‘𝑊) ∈ V)
∧ ((𝑈‘((#‘𝑈) − 2)) ∈ V ∧ ( lastS
‘𝑈) ∈ V)) →
(〈“(𝑊‘((#‘𝑊) − 2))( lastS ‘𝑊)”〉 =
〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉 ↔
(〈“(𝑊‘((#‘𝑊) − 2))”〉 =
〈“(𝑈‘((#‘𝑈) − 2))”〉 ∧
〈“( lastS ‘𝑊)”〉 = 〈“( lastS
‘𝑈)”〉))) |
63 | 58, 59, 60, 61, 62 | syl22anc 1367 |
. . . . . 6
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (〈“(𝑊‘((#‘𝑊) − 2))( lastS ‘𝑊)”〉 =
〈“(𝑈‘((#‘𝑈) − 2))( lastS ‘𝑈)”〉 ↔
(〈“(𝑊‘((#‘𝑊) − 2))”〉 =
〈“(𝑈‘((#‘𝑈) − 2))”〉 ∧
〈“( lastS ‘𝑊)”〉 = 〈“( lastS
‘𝑈)”〉))) |
64 | | fvex 6239 |
. . . . . . . . 9
⊢ (𝑊‘((#‘𝑊) − 2)) ∈
V |
65 | | s111 13432 |
. . . . . . . . 9
⊢ (((𝑊‘((#‘𝑊) − 2)) ∈ V ∧
(𝑈‘((#‘𝑈) − 2)) ∈ V) →
(〈“(𝑊‘((#‘𝑊) − 2))”〉 =
〈“(𝑈‘((#‘𝑈) − 2))”〉 ↔ (𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑈) − 2)))) |
66 | 64, 60, 65 | sylancr 696 |
. . . . . . . 8
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (〈“(𝑊‘((#‘𝑊) − 2))”〉 =
〈“(𝑈‘((#‘𝑈) − 2))”〉 ↔ (𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑈) − 2)))) |
67 | | oveq1 6697 |
. . . . . . . . . . . 12
⊢
((#‘𝑈) =
(#‘𝑊) →
((#‘𝑈) − 2) =
((#‘𝑊) −
2)) |
68 | 67 | fveq2d 6233 |
. . . . . . . . . . 11
⊢
((#‘𝑈) =
(#‘𝑊) → (𝑈‘((#‘𝑈) − 2)) = (𝑈‘((#‘𝑊) − 2))) |
69 | 68 | eqcoms 2659 |
. . . . . . . . . 10
⊢
((#‘𝑊) =
(#‘𝑈) → (𝑈‘((#‘𝑈) − 2)) = (𝑈‘((#‘𝑊) − 2))) |
70 | 69 | adantl 481 |
. . . . . . . . 9
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (𝑈‘((#‘𝑈) − 2)) = (𝑈‘((#‘𝑊) − 2))) |
71 | 70 | eqeq2d 2661 |
. . . . . . . 8
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → ((𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑈) − 2)) ↔ (𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)))) |
72 | 66, 71 | bitrd 268 |
. . . . . . 7
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (〈“(𝑊‘((#‘𝑊) − 2))”〉 =
〈“(𝑈‘((#‘𝑈) − 2))”〉 ↔ (𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)))) |
73 | | fvex 6239 |
. . . . . . . 8
⊢ ( lastS
‘𝑊) ∈
V |
74 | | s111 13432 |
. . . . . . . 8
⊢ ((( lastS
‘𝑊) ∈ V ∧ (
lastS ‘𝑈) ∈ V)
→ (〈“( lastS ‘𝑊)”〉 = 〈“( lastS
‘𝑈)”〉
↔ ( lastS ‘𝑊) =
( lastS ‘𝑈))) |
75 | 73, 61, 74 | sylancr 696 |
. . . . . . 7
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (〈“( lastS ‘𝑊)”〉 = 〈“(
lastS ‘𝑈)”〉 ↔ ( lastS ‘𝑊) = ( lastS ‘𝑈))) |
76 | 72, 75 | anbi12d 747 |
. . . . . 6
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → ((〈“(𝑊‘((#‘𝑊) − 2))”〉 =
〈“(𝑈‘((#‘𝑈) − 2))”〉 ∧
〈“( lastS ‘𝑊)”〉 = 〈“( lastS
‘𝑈)”〉)
↔ ((𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)) ∧ ( lastS ‘𝑊) = ( lastS ‘𝑈)))) |
77 | 57, 63, 76 | 3bitrd 294 |
. . . . 5
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → ((𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) ↔ ((𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)) ∧ ( lastS ‘𝑊) = ( lastS ‘𝑈)))) |
78 | 77 | anbi2d 740 |
. . . 4
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉)) ↔ ((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ ((𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)) ∧ ( lastS
‘𝑊) = ( lastS
‘𝑈))))) |
79 | | 3anass 1059 |
. . . 4
⊢ (((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)) ∧ ( lastS
‘𝑊) = ( lastS
‘𝑈)) ↔ ((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧
((𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)) ∧ ( lastS
‘𝑊) = ( lastS
‘𝑈)))) |
80 | 78, 79 | syl6bbr 278 |
. . 3
⊢ (((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) ∧ (#‘𝑊) = (#‘𝑈)) → (((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉)) ↔ ((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)) ∧ ( lastS ‘𝑊) = ( lastS ‘𝑈)))) |
81 | 80 | pm5.32da 674 |
. 2
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) → (((#‘𝑊) = (#‘𝑈) ∧ ((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉) = (𝑈 substr 〈((#‘𝑊) − 2), (#‘𝑊)〉))) ↔ ((#‘𝑊) = (#‘𝑈) ∧ ((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)) ∧ ( lastS ‘𝑊) = ( lastS ‘𝑈))))) |
82 | 40, 81 | bitrd 268 |
1
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑈 ∈ Word 𝑉 ∧ 1 < (#‘𝑊)) → (𝑊 = 𝑈 ↔ ((#‘𝑊) = (#‘𝑈) ∧ ((𝑊 substr 〈0, ((#‘𝑊) − 2)〉) = (𝑈 substr 〈0, ((#‘𝑊) − 2)〉) ∧ (𝑊‘((#‘𝑊) − 2)) = (𝑈‘((#‘𝑊) − 2)) ∧ ( lastS ‘𝑊) = ( lastS ‘𝑈))))) |