Step |
Hyp |
Ref |
Expression |
1 |
|
sseqval.1 |
|- ( ph -> S e. _V ) |
2 |
|
sseqval.2 |
|- ( ph -> M e. Word S ) |
3 |
|
sseqval.3 |
|- W = ( Word S i^i ( `' # " ( ZZ>= ` ( # ` M ) ) ) ) |
4 |
|
sseqval.4 |
|- ( ph -> F : W --> S ) |
5 |
|
sseqfv1.4 |
|- ( ph -> N e. ( 0 ..^ ( # ` M ) ) ) |
6 |
1 2 3 4
|
sseqval |
|- ( ph -> ( M seqstr F ) = ( M u. ( lastS o. seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) ) ) ) |
7 |
6
|
fveq1d |
|- ( ph -> ( ( M seqstr F ) ` N ) = ( ( M u. ( lastS o. seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) ) ) ` N ) ) |
8 |
|
wrdfn |
|- ( M e. Word S -> M Fn ( 0 ..^ ( # ` M ) ) ) |
9 |
2 8
|
syl |
|- ( ph -> M Fn ( 0 ..^ ( # ` M ) ) ) |
10 |
|
fvex |
|- ( x ` ( ( # ` x ) - 1 ) ) e. _V |
11 |
|
df-lsw |
|- lastS = ( x e. _V |-> ( x ` ( ( # ` x ) - 1 ) ) ) |
12 |
10 11
|
fnmpti |
|- lastS Fn _V |
13 |
12
|
a1i |
|- ( ph -> lastS Fn _V ) |
14 |
|
lencl |
|- ( M e. Word S -> ( # ` M ) e. NN0 ) |
15 |
2 14
|
syl |
|- ( ph -> ( # ` M ) e. NN0 ) |
16 |
15
|
nn0zd |
|- ( ph -> ( # ` M ) e. ZZ ) |
17 |
|
seqfn |
|- ( ( # ` M ) e. ZZ -> seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) Fn ( ZZ>= ` ( # ` M ) ) ) |
18 |
16 17
|
syl |
|- ( ph -> seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) Fn ( ZZ>= ` ( # ` M ) ) ) |
19 |
|
ssv |
|- ran seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) C_ _V |
20 |
19
|
a1i |
|- ( ph -> ran seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) C_ _V ) |
21 |
|
fnco |
|- ( ( lastS Fn _V /\ seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) Fn ( ZZ>= ` ( # ` M ) ) /\ ran seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) C_ _V ) -> ( lastS o. seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) ) Fn ( ZZ>= ` ( # ` M ) ) ) |
22 |
13 18 20 21
|
syl3anc |
|- ( ph -> ( lastS o. seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) ) Fn ( ZZ>= ` ( # ` M ) ) ) |
23 |
|
fzouzdisj |
|- ( ( 0 ..^ ( # ` M ) ) i^i ( ZZ>= ` ( # ` M ) ) ) = (/) |
24 |
23
|
a1i |
|- ( ph -> ( ( 0 ..^ ( # ` M ) ) i^i ( ZZ>= ` ( # ` M ) ) ) = (/) ) |
25 |
|
fvun1 |
|- ( ( M Fn ( 0 ..^ ( # ` M ) ) /\ ( lastS o. seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) ) Fn ( ZZ>= ` ( # ` M ) ) /\ ( ( ( 0 ..^ ( # ` M ) ) i^i ( ZZ>= ` ( # ` M ) ) ) = (/) /\ N e. ( 0 ..^ ( # ` M ) ) ) ) -> ( ( M u. ( lastS o. seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) ) ) ` N ) = ( M ` N ) ) |
26 |
9 22 24 5 25
|
syl112anc |
|- ( ph -> ( ( M u. ( lastS o. seq ( # ` M ) ( ( x e. _V , y e. _V |-> ( x ++ <" ( F ` x ) "> ) ) , ( NN0 X. { ( M ++ <" ( F ` M ) "> ) } ) ) ) ) ` N ) = ( M ` N ) ) |
27 |
7 26
|
eqtrd |
|- ( ph -> ( ( M seqstr F ) ` N ) = ( M ` N ) ) |