Step |
Hyp |
Ref |
Expression |
1 |
|
opelxp |
|- ( <. S , <. X , X >. >. e. ( _V X. ( ZZ X. ZZ ) ) <-> ( S e. _V /\ <. X , X >. e. ( ZZ X. ZZ ) ) ) |
2 |
|
opelxp |
|- ( <. X , X >. e. ( ZZ X. ZZ ) <-> ( X e. ZZ /\ X e. ZZ ) ) |
3 |
|
swrdval |
|- ( ( S e. _V /\ X e. ZZ /\ X e. ZZ ) -> ( S substr <. X , X >. ) = if ( ( X ..^ X ) C_ dom S , ( x e. ( 0 ..^ ( X - X ) ) |-> ( S ` ( x + X ) ) ) , (/) ) ) |
4 |
|
fzo0 |
|- ( X ..^ X ) = (/) |
5 |
|
0ss |
|- (/) C_ dom S |
6 |
4 5
|
eqsstri |
|- ( X ..^ X ) C_ dom S |
7 |
6
|
iftruei |
|- if ( ( X ..^ X ) C_ dom S , ( x e. ( 0 ..^ ( X - X ) ) |-> ( S ` ( x + X ) ) ) , (/) ) = ( x e. ( 0 ..^ ( X - X ) ) |-> ( S ` ( x + X ) ) ) |
8 |
|
zcn |
|- ( X e. ZZ -> X e. CC ) |
9 |
8
|
subidd |
|- ( X e. ZZ -> ( X - X ) = 0 ) |
10 |
9
|
oveq2d |
|- ( X e. ZZ -> ( 0 ..^ ( X - X ) ) = ( 0 ..^ 0 ) ) |
11 |
10
|
3ad2ant2 |
|- ( ( S e. _V /\ X e. ZZ /\ X e. ZZ ) -> ( 0 ..^ ( X - X ) ) = ( 0 ..^ 0 ) ) |
12 |
|
fzo0 |
|- ( 0 ..^ 0 ) = (/) |
13 |
11 12
|
eqtrdi |
|- ( ( S e. _V /\ X e. ZZ /\ X e. ZZ ) -> ( 0 ..^ ( X - X ) ) = (/) ) |
14 |
13
|
mpteq1d |
|- ( ( S e. _V /\ X e. ZZ /\ X e. ZZ ) -> ( x e. ( 0 ..^ ( X - X ) ) |-> ( S ` ( x + X ) ) ) = ( x e. (/) |-> ( S ` ( x + X ) ) ) ) |
15 |
|
mpt0 |
|- ( x e. (/) |-> ( S ` ( x + X ) ) ) = (/) |
16 |
14 15
|
eqtrdi |
|- ( ( S e. _V /\ X e. ZZ /\ X e. ZZ ) -> ( x e. ( 0 ..^ ( X - X ) ) |-> ( S ` ( x + X ) ) ) = (/) ) |
17 |
7 16
|
eqtrid |
|- ( ( S e. _V /\ X e. ZZ /\ X e. ZZ ) -> if ( ( X ..^ X ) C_ dom S , ( x e. ( 0 ..^ ( X - X ) ) |-> ( S ` ( x + X ) ) ) , (/) ) = (/) ) |
18 |
3 17
|
eqtrd |
|- ( ( S e. _V /\ X e. ZZ /\ X e. ZZ ) -> ( S substr <. X , X >. ) = (/) ) |
19 |
18
|
3expb |
|- ( ( S e. _V /\ ( X e. ZZ /\ X e. ZZ ) ) -> ( S substr <. X , X >. ) = (/) ) |
20 |
2 19
|
sylan2b |
|- ( ( S e. _V /\ <. X , X >. e. ( ZZ X. ZZ ) ) -> ( S substr <. X , X >. ) = (/) ) |
21 |
1 20
|
sylbi |
|- ( <. S , <. X , X >. >. e. ( _V X. ( ZZ X. ZZ ) ) -> ( S substr <. X , X >. ) = (/) ) |
22 |
|
df-substr |
|- substr = ( s e. _V , b e. ( ZZ X. ZZ ) |-> if ( ( ( 1st ` b ) ..^ ( 2nd ` b ) ) C_ dom s , ( x e. ( 0 ..^ ( ( 2nd ` b ) - ( 1st ` b ) ) ) |-> ( s ` ( x + ( 1st ` b ) ) ) ) , (/) ) ) |
23 |
|
ovex |
|- ( 0 ..^ ( ( 2nd ` b ) - ( 1st ` b ) ) ) e. _V |
24 |
23
|
mptex |
|- ( x e. ( 0 ..^ ( ( 2nd ` b ) - ( 1st ` b ) ) ) |-> ( s ` ( x + ( 1st ` b ) ) ) ) e. _V |
25 |
|
0ex |
|- (/) e. _V |
26 |
24 25
|
ifex |
|- if ( ( ( 1st ` b ) ..^ ( 2nd ` b ) ) C_ dom s , ( x e. ( 0 ..^ ( ( 2nd ` b ) - ( 1st ` b ) ) ) |-> ( s ` ( x + ( 1st ` b ) ) ) ) , (/) ) e. _V |
27 |
22 26
|
dmmpo |
|- dom substr = ( _V X. ( ZZ X. ZZ ) ) |
28 |
21 27
|
eleq2s |
|- ( <. S , <. X , X >. >. e. dom substr -> ( S substr <. X , X >. ) = (/) ) |
29 |
|
df-ov |
|- ( S substr <. X , X >. ) = ( substr ` <. S , <. X , X >. >. ) |
30 |
|
ndmfv |
|- ( -. <. S , <. X , X >. >. e. dom substr -> ( substr ` <. S , <. X , X >. >. ) = (/) ) |
31 |
29 30
|
eqtrid |
|- ( -. <. S , <. X , X >. >. e. dom substr -> ( S substr <. X , X >. ) = (/) ) |
32 |
28 31
|
pm2.61i |
|- ( S substr <. X , X >. ) = (/) |