ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  fzdifsuc Unicode version

Theorem fzdifsuc 9098
Description: Remove a successor from the end of a finite set of sequential integers. (Contributed by AV, 4-Sep-2019.)
Assertion
Ref Expression
fzdifsuc  |-  ( N  e.  ( ZZ>= `  M
)  ->  ( M ... N )  =  ( ( M ... ( N  +  1 ) )  \  { ( N  +  1 ) } ) )

Proof of Theorem fzdifsuc
Dummy variable  k is distinct from all other variables.
StepHypRef Expression
1 elfzelz 9045 . . 3  |-  ( k  e.  ( M ... N )  ->  k  e.  ZZ )
21adantl 271 . 2  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ( M ... N
) )  ->  k  e.  ZZ )
3 eldifi 3094 . . . 4  |-  ( k  e.  ( ( M ... ( N  + 
1 ) )  \  { ( N  + 
1 ) } )  ->  k  e.  ( M ... ( N  +  1 ) ) )
4 elfzelz 9045 . . . 4  |-  ( k  e.  ( M ... ( N  +  1
) )  ->  k  e.  ZZ )
53, 4syl 14 . . 3  |-  ( k  e.  ( ( M ... ( N  + 
1 ) )  \  { ( N  + 
1 ) } )  ->  k  e.  ZZ )
65adantl 271 . 2  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ( ( M ... ( N  +  1
) )  \  {
( N  +  1 ) } ) )  ->  k  e.  ZZ )
7 simpr 108 . . . 4  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  k  e.  ZZ )
8 eluzel2 8624 . . . . 5  |-  ( N  e.  ( ZZ>= `  M
)  ->  M  e.  ZZ )
98adantr 270 . . . 4  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  M  e.  ZZ )
10 eluzelz 8628 . . . . 5  |-  ( N  e.  ( ZZ>= `  M
)  ->  N  e.  ZZ )
1110adantr 270 . . . 4  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  N  e.  ZZ )
12 elfz 9035 . . . 4  |-  ( ( k  e.  ZZ  /\  M  e.  ZZ  /\  N  e.  ZZ )  ->  (
k  e.  ( M ... N )  <->  ( M  <_  k  /\  k  <_  N ) ) )
137, 9, 11, 12syl3anc 1169 . . 3  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  e.  ( M ... N )  <->  ( M  <_  k  /\  k  <_  N ) ) )
14 eldif 2982 . . . . . . 7  |-  ( k  e.  ( ( M ... ( N  + 
1 ) )  \  { ( N  + 
1 ) } )  <-> 
( k  e.  ( M ... ( N  +  1 ) )  /\  -.  k  e. 
{ ( N  + 
1 ) } ) )
1511peano2zd 8472 . . . . . . . . 9  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  ( N  +  1 )  e.  ZZ )
16 elfz 9035 . . . . . . . . 9  |-  ( ( k  e.  ZZ  /\  M  e.  ZZ  /\  ( N  +  1 )  e.  ZZ )  -> 
( k  e.  ( M ... ( N  +  1 ) )  <-> 
( M  <_  k  /\  k  <_  ( N  +  1 ) ) ) )
177, 9, 15, 16syl3anc 1169 . . . . . . . 8  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  e.  ( M ... ( N  + 
1 ) )  <->  ( M  <_  k  /\  k  <_ 
( N  +  1 ) ) ) )
18 velsn 3415 . . . . . . . . . . 11  |-  ( k  e.  { ( N  +  1 ) }  <-> 
k  =  ( N  +  1 ) )
1918notbii 626 . . . . . . . . . 10  |-  ( -.  k  e.  { ( N  +  1 ) }  <->  -.  k  =  ( N  +  1
) )
20 nesym 2290 . . . . . . . . . 10  |-  ( ( N  +  1 )  =/=  k  <->  -.  k  =  ( N  + 
1 ) )
2119, 20bitr4i 185 . . . . . . . . 9  |-  ( -.  k  e.  { ( N  +  1 ) }  <->  ( N  + 
1 )  =/=  k
)
2221a1i 9 . . . . . . . 8  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  ( -.  k  e.  { ( N  +  1 ) }  <->  ( N  + 
1 )  =/=  k
) )
2317, 22anbi12d 456 . . . . . . 7  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
( k  e.  ( M ... ( N  +  1 ) )  /\  -.  k  e. 
{ ( N  + 
1 ) } )  <-> 
( ( M  <_ 
k  /\  k  <_  ( N  +  1 ) )  /\  ( N  +  1 )  =/=  k ) ) )
2414, 23syl5bb 190 . . . . . 6  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  e.  ( ( M ... ( N  +  1 ) ) 
\  { ( N  +  1 ) } )  <->  ( ( M  <_  k  /\  k  <_  ( N  +  1 ) )  /\  ( N  +  1 )  =/=  k ) ) )
25 anass 393 . . . . . 6  |-  ( ( ( M  <_  k  /\  k  <_  ( N  +  1 ) )  /\  ( N  + 
1 )  =/=  k
)  <->  ( M  <_ 
k  /\  ( k  <_  ( N  +  1 )  /\  ( N  +  1 )  =/=  k ) ) )
2624, 25syl6bb 194 . . . . 5  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  e.  ( ( M ... ( N  +  1 ) ) 
\  { ( N  +  1 ) } )  <->  ( M  <_ 
k  /\  ( k  <_  ( N  +  1 )  /\  ( N  +  1 )  =/=  k ) ) ) )
27 zltlen 8426 . . . . . . 7  |-  ( ( k  e.  ZZ  /\  ( N  +  1
)  e.  ZZ )  ->  ( k  < 
( N  +  1 )  <->  ( k  <_ 
( N  +  1 )  /\  ( N  +  1 )  =/=  k ) ) )
287, 15, 27syl2anc 403 . . . . . 6  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  <  ( N  +  1 )  <->  ( k  <_  ( N  +  1 )  /\  ( N  +  1 )  =/=  k ) ) )
2928anbi2d 451 . . . . 5  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
( M  <_  k  /\  k  <  ( N  +  1 ) )  <-> 
( M  <_  k  /\  ( k  <_  ( N  +  1 )  /\  ( N  + 
1 )  =/=  k
) ) ) )
3026, 29bitr4d 189 . . . 4  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  e.  ( ( M ... ( N  +  1 ) ) 
\  { ( N  +  1 ) } )  <->  ( M  <_ 
k  /\  k  <  ( N  +  1 ) ) ) )
31 zleltp1 8406 . . . . . 6  |-  ( ( k  e.  ZZ  /\  N  e.  ZZ )  ->  ( k  <_  N  <->  k  <  ( N  + 
1 ) ) )
327, 11, 31syl2anc 403 . . . . 5  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  <_  N  <->  k  <  ( N  +  1 ) ) )
3332anbi2d 451 . . . 4  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
( M  <_  k  /\  k  <_  N )  <-> 
( M  <_  k  /\  k  <  ( N  +  1 ) ) ) )
3430, 33bitr4d 189 . . 3  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  e.  ( ( M ... ( N  +  1 ) ) 
\  { ( N  +  1 ) } )  <->  ( M  <_ 
k  /\  k  <_  N ) ) )
3513, 34bitr4d 189 . 2  |-  ( ( N  e.  ( ZZ>= `  M )  /\  k  e.  ZZ )  ->  (
k  e.  ( M ... N )  <->  k  e.  ( ( M ... ( N  +  1
) )  \  {
( N  +  1 ) } ) ) )
362, 6, 35eqrdav 2080 1  |-  ( N  e.  ( ZZ>= `  M
)  ->  ( M ... N )  =  ( ( M ... ( N  +  1 ) )  \  { ( N  +  1 ) } ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 102    <-> wb 103    = wceq 1284    e. wcel 1433    =/= wne 2245    \ cdif 2970   {csn 3398   class class class wbr 3785   ` cfv 4922  (class class class)co 5532   1c1 6982    + caddc 6984    < clt 7153    <_ cle 7154   ZZcz 8351   ZZ>=cuz 8619   ...cfz 9029
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 104  ax-ia2 105  ax-ia3 106  ax-in1 576  ax-in2 577  ax-io 662  ax-5 1376  ax-7 1377  ax-gen 1378  ax-ie1 1422  ax-ie2 1423  ax-8 1435  ax-10 1436  ax-11 1437  ax-i12 1438  ax-bndl 1439  ax-4 1440  ax-13 1444  ax-14 1445  ax-17 1459  ax-i9 1463  ax-ial 1467  ax-i5r 1468  ax-ext 2063  ax-sep 3896  ax-pow 3948  ax-pr 3964  ax-un 4188  ax-setind 4280  ax-cnex 7067  ax-resscn 7068  ax-1cn 7069  ax-1re 7070  ax-icn 7071  ax-addcl 7072  ax-addrcl 7073  ax-mulcl 7074  ax-mulrcl 7075  ax-addcom 7076  ax-mulcom 7077  ax-addass 7078  ax-mulass 7079  ax-distr 7080  ax-i2m1 7081  ax-0lt1 7082  ax-1rid 7083  ax-0id 7084  ax-rnegex 7085  ax-precex 7086  ax-cnre 7087  ax-pre-ltirr 7088  ax-pre-ltwlin 7089  ax-pre-lttrn 7090  ax-pre-apti 7091  ax-pre-ltadd 7092  ax-pre-mulgt0 7093
This theorem depends on definitions:  df-bi 115  df-3or 920  df-3an 921  df-tru 1287  df-fal 1290  df-nf 1390  df-sb 1686  df-eu 1944  df-mo 1945  df-clab 2068  df-cleq 2074  df-clel 2077  df-nfc 2208  df-ne 2246  df-nel 2340  df-ral 2353  df-rex 2354  df-reu 2355  df-rab 2357  df-v 2603  df-sbc 2816  df-dif 2975  df-un 2977  df-in 2979  df-ss 2986  df-pw 3384  df-sn 3404  df-pr 3405  df-op 3407  df-uni 3602  df-int 3637  df-br 3786  df-opab 3840  df-mpt 3841  df-id 4048  df-xp 4369  df-rel 4370  df-cnv 4371  df-co 4372  df-dm 4373  df-rn 4374  df-res 4375  df-ima 4376  df-iota 4887  df-fun 4924  df-fn 4925  df-f 4926  df-fv 4930  df-riota 5488  df-ov 5535  df-oprab 5536  df-mpt2 5537  df-pnf 7155  df-mnf 7156  df-xr 7157  df-ltxr 7158  df-le 7159  df-sub 7281  df-neg 7282  df-reap 7675  df-ap 7682  df-inn 8040  df-n0 8289  df-z 8352  df-uz 8620  df-fz 9030
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator