Step |
Hyp |
Ref |
Expression |
1 |
|
pfxcl |
⊢ ( 𝑊 ∈ Word 𝑉 → ( 𝑊 prefix 𝐿 ) ∈ Word 𝑉 ) |
2 |
1
|
adantr |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → ( 𝑊 prefix 𝐿 ) ∈ Word 𝑉 ) |
3 |
|
lsw |
⊢ ( ( 𝑊 prefix 𝐿 ) ∈ Word 𝑉 → ( lastS ‘ ( 𝑊 prefix 𝐿 ) ) = ( ( 𝑊 prefix 𝐿 ) ‘ ( ( ♯ ‘ ( 𝑊 prefix 𝐿 ) ) − 1 ) ) ) |
4 |
2 3
|
syl |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → ( lastS ‘ ( 𝑊 prefix 𝐿 ) ) = ( ( 𝑊 prefix 𝐿 ) ‘ ( ( ♯ ‘ ( 𝑊 prefix 𝐿 ) ) − 1 ) ) ) |
5 |
|
fz1ssfz0 |
⊢ ( 1 ... ( ♯ ‘ 𝑊 ) ) ⊆ ( 0 ... ( ♯ ‘ 𝑊 ) ) |
6 |
5
|
sseli |
⊢ ( 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) → 𝐿 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) |
7 |
|
pfxlen |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) → ( ♯ ‘ ( 𝑊 prefix 𝐿 ) ) = 𝐿 ) |
8 |
6 7
|
sylan2 |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → ( ♯ ‘ ( 𝑊 prefix 𝐿 ) ) = 𝐿 ) |
9 |
8
|
fvoveq1d |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → ( ( 𝑊 prefix 𝐿 ) ‘ ( ( ♯ ‘ ( 𝑊 prefix 𝐿 ) ) − 1 ) ) = ( ( 𝑊 prefix 𝐿 ) ‘ ( 𝐿 − 1 ) ) ) |
10 |
|
simpl |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → 𝑊 ∈ Word 𝑉 ) |
11 |
6
|
adantl |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → 𝐿 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) |
12 |
|
elfznn |
⊢ ( 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) → 𝐿 ∈ ℕ ) |
13 |
|
fzo0end |
⊢ ( 𝐿 ∈ ℕ → ( 𝐿 − 1 ) ∈ ( 0 ..^ 𝐿 ) ) |
14 |
12 13
|
syl |
⊢ ( 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) → ( 𝐿 − 1 ) ∈ ( 0 ..^ 𝐿 ) ) |
15 |
14
|
adantl |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → ( 𝐿 − 1 ) ∈ ( 0 ..^ 𝐿 ) ) |
16 |
|
pfxfv |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ∧ ( 𝐿 − 1 ) ∈ ( 0 ..^ 𝐿 ) ) → ( ( 𝑊 prefix 𝐿 ) ‘ ( 𝐿 − 1 ) ) = ( 𝑊 ‘ ( 𝐿 − 1 ) ) ) |
17 |
10 11 15 16
|
syl3anc |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → ( ( 𝑊 prefix 𝐿 ) ‘ ( 𝐿 − 1 ) ) = ( 𝑊 ‘ ( 𝐿 − 1 ) ) ) |
18 |
4 9 17
|
3eqtrd |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 𝐿 ∈ ( 1 ... ( ♯ ‘ 𝑊 ) ) ) → ( lastS ‘ ( 𝑊 prefix 𝐿 ) ) = ( 𝑊 ‘ ( 𝐿 − 1 ) ) ) |