MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  swrd00 Structured version   Unicode version

Theorem swrd00 12427
Description: A zero length substring. (Contributed by Stefan O'Rear, 27-Aug-2015.)
Assertion
Ref Expression
swrd00  |-  ( S substr  <. X ,  X >. )  =  (/)

Proof of Theorem swrd00
Dummy variables  s 
b  x are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 opelxp 4972 . . . 4  |-  ( <. S ,  <. X ,  X >. >.  e.  ( _V 
X.  ( ZZ  X.  ZZ ) )  <->  ( S  e.  _V  /\  <. X ,  X >.  e.  ( ZZ 
X.  ZZ ) ) )
2 opelxp 4972 . . . . 5  |-  ( <. X ,  X >.  e.  ( ZZ  X.  ZZ ) 
<->  ( X  e.  ZZ  /\  X  e.  ZZ ) )
3 swrdval 12426 . . . . . . 7  |-  ( ( 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 11685 . . . . . . . . . 10  |-  ( X..^ X )  =  (/)
5 0ss 3769 . . . . . . . . . 10  |-  (/)  C_  dom  S
64, 5eqsstri 3489 . . . . . . . . 9  |-  ( X..^ X )  C_  dom  S
76iftruei 3901 . . . . . . . 8  |-  if ( ( X..^ X ) 
C_  dom  S , 
( x  e.  ( 0..^ ( X  -  X ) )  |->  ( S `  ( x  +  X ) ) ) ,  (/) )  =  ( x  e.  ( 0..^ ( X  -  X ) )  |->  ( S `  ( x  +  X ) ) )
8 zcn 10757 . . . . . . . . . . . . . 14  |-  ( X  e.  ZZ  ->  X  e.  CC )
98subidd 9813 . . . . . . . . . . . . 13  |-  ( X  e.  ZZ  ->  ( X  -  X )  =  0 )
109oveq2d 6211 . . . . . . . . . . . 12  |-  ( X  e.  ZZ  ->  (
0..^ ( X  -  X ) )  =  ( 0..^ 0 ) )
11103ad2ant2 1010 . . . . . . . . . . 11  |-  ( ( S  e.  _V  /\  X  e.  ZZ  /\  X  e.  ZZ )  ->  (
0..^ ( X  -  X ) )  =  ( 0..^ 0 ) )
12 fzo0 11685 . . . . . . . . . . 11  |-  ( 0..^ 0 )  =  (/)
1311, 12syl6eq 2509 . . . . . . . . . 10  |-  ( ( S  e.  _V  /\  X  e.  ZZ  /\  X  e.  ZZ )  ->  (
0..^ ( X  -  X ) )  =  (/) )
1413mpteq1d 4476 . . . . . . . . 9  |-  ( ( S  e.  _V  /\  X  e.  ZZ  /\  X  e.  ZZ )  ->  (
x  e.  ( 0..^ ( X  -  X
) )  |->  ( S `
 ( x  +  X ) ) )  =  ( x  e.  (/)  |->  ( S `  ( x  +  X
) ) ) )
15 mpt0 5641 . . . . . . . . 9  |-  ( x  e.  (/)  |->  ( S `  ( x  +  X
) ) )  =  (/)
1614, 15syl6eq 2509 . . . . . . . 8  |-  ( ( S  e.  _V  /\  X  e.  ZZ  /\  X  e.  ZZ )  ->  (
x  e.  ( 0..^ ( X  -  X
) )  |->  ( S `
 ( x  +  X ) ) )  =  (/) )
177, 16syl5eq 2505 . . . . . . 7  |-  ( ( S  e.  _V  /\  X  e.  ZZ  /\  X  e.  ZZ )  ->  if ( ( X..^ X
)  C_  dom  S , 
( x  e.  ( 0..^ ( X  -  X ) )  |->  ( S `  ( x  +  X ) ) ) ,  (/) )  =  (/) )
183, 17eqtrd 2493 . . . . . 6  |-  ( ( S  e.  _V  /\  X  e.  ZZ  /\  X  e.  ZZ )  ->  ( S substr  <. X ,  X >. )  =  (/) )
19183expb 1189 . . . . 5  |-  ( ( S  e.  _V  /\  ( X  e.  ZZ  /\  X  e.  ZZ ) )  ->  ( S substr  <. X ,  X >. )  =  (/) )
202, 19sylan2b 475 . . . 4  |-  ( ( S  e.  _V  /\  <. X ,  X >.  e.  ( ZZ  X.  ZZ ) )  ->  ( S substr  <. X ,  X >. )  =  (/) )
211, 20sylbi 195 . . 3  |-  ( <. S ,  <. X ,  X >. >.  e.  ( _V 
X.  ( ZZ  X.  ZZ ) )  ->  ( S substr  <. X ,  X >. )  =  (/) )
22 df-substr 12346 . . . 4  |- 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 6220 . . . . . 6  |-  ( 0..^ ( ( 2nd `  b
)  -  ( 1st `  b ) ) )  e.  _V
2423mptex 6052 . . . . 5  |-  ( x  e.  ( 0..^ ( ( 2nd `  b
)  -  ( 1st `  b ) ) ) 
|->  ( s `  (
x  +  ( 1st `  b ) ) ) )  e.  _V
25 0ex 4525 . . . . 5  |-  (/)  e.  _V
2624, 25ifex 3961 . . . 4  |-  if ( ( ( 1st `  b
)..^ ( 2nd `  b
) )  C_  dom  s ,  ( x  e.  ( 0..^ ( ( 2nd `  b )  -  ( 1st `  b
) ) )  |->  ( s `  ( x  +  ( 1st `  b
) ) ) ) ,  (/) )  e.  _V
2722, 26dmmpt2 6749 . . 3  |-  dom substr  =  ( _V  X.  ( ZZ 
X.  ZZ ) )
2821, 27eleq2s 2560 . 2  |-  ( <. S ,  <. X ,  X >. >.  e.  dom substr  ->  ( S substr  <. X ,  X >. )  =  (/) )
29 df-ov 6198 . . 3  |-  ( S substr  <. X ,  X >. )  =  ( substr  `  <. S ,  <. X ,  X >. >. )
30 ndmfv 5818 . . 3  |-  ( -. 
<. S ,  <. X ,  X >. >.  e.  dom substr  ->  ( substr  ` 
<. S ,  <. X ,  X >. >. )  =  (/) )
3129, 30syl5eq 2505 . 2  |-  ( -. 
<. S ,  <. X ,  X >. >.  e.  dom substr  ->  ( S substr  <. X ,  X >. )  =  (/) )
3228, 31pm2.61i 164 1  |-  ( S substr  <. X ,  X >. )  =  (/)
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    /\ wa 369    /\ w3a 965    = wceq 1370    e. wcel 1758   _Vcvv 3072    C_ wss 3431   (/)c0 3740   ifcif 3894   <.cop 3986    |-> cmpt 4453    X. cxp 4941   dom cdm 4943   ` cfv 5521  (class class class)co 6195   1stc1st 6680   2ndc2nd 6681   0cc0 9388    + caddc 9391    - cmin 9701   ZZcz 10752  ..^cfzo 11660   substr csubstr 12338
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1592  ax-4 1603  ax-5 1671  ax-6 1710  ax-7 1730  ax-8 1760  ax-9 1762  ax-10 1777  ax-11 1782  ax-12 1794  ax-13 1954  ax-ext 2431  ax-rep 4506  ax-sep 4516  ax-nul 4524  ax-pow 4573  ax-pr 4634  ax-un 6477  ax-cnex 9444  ax-resscn 9445  ax-1cn 9446  ax-icn 9447  ax-addcl 9448  ax-addrcl 9449  ax-mulcl 9450  ax-mulrcl 9451  ax-mulcom 9452  ax-addass 9453  ax-mulass 9454  ax-distr 9455  ax-i2m1 9456  ax-1ne0 9457  ax-1rid 9458  ax-rnegex 9459  ax-rrecex 9460  ax-cnre 9461  ax-pre-lttri 9462  ax-pre-lttrn 9463  ax-pre-ltadd 9464  ax-pre-mulgt0 9465
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 966  df-3an 967  df-tru 1373  df-ex 1588  df-nf 1591  df-sb 1703  df-eu 2265  df-mo 2266  df-clab 2438  df-cleq 2444  df-clel 2447  df-nfc 2602  df-ne 2647  df-nel 2648  df-ral 2801  df-rex 2802  df-reu 2803  df-rab 2805  df-v 3074  df-sbc 3289  df-csb 3391  df-dif 3434  df-un 3436  df-in 3438  df-ss 3445  df-pss 3447  df-nul 3741  df-if 3895  df-pw 3965  df-sn 3981  df-pr 3983  df-tp 3985  df-op 3987  df-uni 4195  df-iun 4276  df-br 4396  df-opab 4454  df-mpt 4455  df-tr 4489  df-eprel 4735  df-id 4739  df-po 4744  df-so 4745  df-fr 4782  df-we 4784  df-ord 4825  df-on 4826  df-lim 4827  df-suc 4828  df-xp 4949  df-rel 4950  df-cnv 4951  df-co 4952  df-dm 4953  df-rn 4954  df-res 4955  df-ima 4956  df-iota 5484  df-fun 5523  df-fn 5524  df-f 5525  df-f1 5526  df-fo 5527  df-f1o 5528  df-fv 5529  df-riota 6156  df-ov 6198  df-oprab 6199  df-mpt2 6200  df-om 6582  df-1st 6682  df-2nd 6683  df-recs 6937  df-rdg 6971  df-er 7206  df-en 7416  df-dom 7417  df-sdom 7418  df-pnf 9526  df-mnf 9527  df-xr 9528  df-ltxr 9529  df-le 9530  df-sub 9703  df-neg 9704  df-nn 10429  df-n0 10686  df-z 10753  df-uz 10968  df-fz 11550  df-fzo 11661  df-substr 12346
This theorem is referenced by:  swrdccatin1  12487  swrdccat3blem  12499  cshw0  12544
  Copyright terms: Public domain W3C validator