| Step |
Hyp |
Ref |
Expression |
| 1 |
|
elfznn0 |
|- ( L e. ( 0 ... ( # ` S ) ) -> L e. NN0 ) |
| 2 |
|
pfxval |
|- ( ( S e. Word A /\ L e. NN0 ) -> ( S prefix L ) = ( S substr <. 0 , L >. ) ) |
| 3 |
1 2
|
sylan2 |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> ( S prefix L ) = ( S substr <. 0 , L >. ) ) |
| 4 |
|
simpl |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> S e. Word A ) |
| 5 |
1
|
adantl |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> L e. NN0 ) |
| 6 |
|
0elfz |
|- ( L e. NN0 -> 0 e. ( 0 ... L ) ) |
| 7 |
5 6
|
syl |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> 0 e. ( 0 ... L ) ) |
| 8 |
|
simpr |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> L e. ( 0 ... ( # ` S ) ) ) |
| 9 |
|
swrdval2 |
|- ( ( S e. Word A /\ 0 e. ( 0 ... L ) /\ L e. ( 0 ... ( # ` S ) ) ) -> ( S substr <. 0 , L >. ) = ( x e. ( 0 ..^ ( L - 0 ) ) |-> ( S ` ( x + 0 ) ) ) ) |
| 10 |
4 7 8 9
|
syl3anc |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> ( S substr <. 0 , L >. ) = ( x e. ( 0 ..^ ( L - 0 ) ) |-> ( S ` ( x + 0 ) ) ) ) |
| 11 |
|
nn0cn |
|- ( L e. NN0 -> L e. CC ) |
| 12 |
11
|
subid1d |
|- ( L e. NN0 -> ( L - 0 ) = L ) |
| 13 |
1 12
|
syl |
|- ( L e. ( 0 ... ( # ` S ) ) -> ( L - 0 ) = L ) |
| 14 |
13
|
oveq2d |
|- ( L e. ( 0 ... ( # ` S ) ) -> ( 0 ..^ ( L - 0 ) ) = ( 0 ..^ L ) ) |
| 15 |
14
|
adantl |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> ( 0 ..^ ( L - 0 ) ) = ( 0 ..^ L ) ) |
| 16 |
|
elfzonn0 |
|- ( x e. ( 0 ..^ ( L - 0 ) ) -> x e. NN0 ) |
| 17 |
|
nn0cn |
|- ( x e. NN0 -> x e. CC ) |
| 18 |
17
|
addridd |
|- ( x e. NN0 -> ( x + 0 ) = x ) |
| 19 |
16 18
|
syl |
|- ( x e. ( 0 ..^ ( L - 0 ) ) -> ( x + 0 ) = x ) |
| 20 |
19
|
fveq2d |
|- ( x e. ( 0 ..^ ( L - 0 ) ) -> ( S ` ( x + 0 ) ) = ( S ` x ) ) |
| 21 |
20
|
adantl |
|- ( ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) /\ x e. ( 0 ..^ ( L - 0 ) ) ) -> ( S ` ( x + 0 ) ) = ( S ` x ) ) |
| 22 |
15 21
|
mpteq12dva |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> ( x e. ( 0 ..^ ( L - 0 ) ) |-> ( S ` ( x + 0 ) ) ) = ( x e. ( 0 ..^ L ) |-> ( S ` x ) ) ) |
| 23 |
3 10 22
|
3eqtrd |
|- ( ( S e. Word A /\ L e. ( 0 ... ( # ` S ) ) ) -> ( S prefix L ) = ( x e. ( 0 ..^ L ) |-> ( S ` x ) ) ) |