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

Theorem hashfz 12459
Description: Value of the numeric cardinality of a nonempty integer range. (Contributed by Stefan O'Rear, 12-Sep-2014.) (Proof shortened by Mario Carneiro, 15-Apr-2015.)
Assertion
Ref Expression
hashfz  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( # `  ( A ... B ) )  =  ( ( B  -  A )  +  1 ) )

Proof of Theorem hashfz
StepHypRef Expression
1 eluzel2 11090 . . . . 5  |-  ( B  e.  ( ZZ>= `  A
)  ->  A  e.  ZZ )
2 eluzelz 11094 . . . . 5  |-  ( B  e.  ( ZZ>= `  A
)  ->  B  e.  ZZ )
3 1z 10895 . . . . . 6  |-  1  e.  ZZ
4 zsubcl 10907 . . . . . 6  |-  ( ( 1  e.  ZZ  /\  A  e.  ZZ )  ->  ( 1  -  A
)  e.  ZZ )
53, 1, 4sylancr 663 . . . . 5  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( 1  -  A )  e.  ZZ )
6 fzen 11707 . . . . 5  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  (
1  -  A )  e.  ZZ )  -> 
( A ... B
)  ~~  ( ( A  +  ( 1  -  A ) ) ... ( B  +  ( 1  -  A
) ) ) )
71, 2, 5, 6syl3anc 1227 . . . 4  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( A ... B )  ~~  (
( A  +  ( 1  -  A ) ) ... ( B  +  ( 1  -  A ) ) ) )
81zcnd 10970 . . . . . 6  |-  ( B  e.  ( ZZ>= `  A
)  ->  A  e.  CC )
9 ax-1cn 9548 . . . . . 6  |-  1  e.  CC
10 pncan3 9828 . . . . . 6  |-  ( ( A  e.  CC  /\  1  e.  CC )  ->  ( A  +  ( 1  -  A ) )  =  1 )
118, 9, 10sylancl 662 . . . . 5  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( A  +  ( 1  -  A ) )  =  1 )
122zcnd 10970 . . . . . . 7  |-  ( B  e.  ( ZZ>= `  A
)  ->  B  e.  CC )
13 1cnd 9610 . . . . . . 7  |-  ( B  e.  ( ZZ>= `  A
)  ->  1  e.  CC )
1412, 13, 8addsub12d 9954 . . . . . 6  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( B  +  ( 1  -  A ) )  =  ( 1  +  ( B  -  A ) ) )
1512, 8subcld 9931 . . . . . . 7  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( B  -  A )  e.  CC )
16 addcom 9764 . . . . . . 7  |-  ( ( 1  e.  CC  /\  ( B  -  A
)  e.  CC )  ->  ( 1  +  ( B  -  A
) )  =  ( ( B  -  A
)  +  1 ) )
179, 15, 16sylancr 663 . . . . . 6  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( 1  +  ( B  -  A ) )  =  ( ( B  -  A )  +  1 ) )
1814, 17eqtrd 2482 . . . . 5  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( B  +  ( 1  -  A ) )  =  ( ( B  -  A )  +  1 ) )
1911, 18oveq12d 6295 . . . 4  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( ( A  +  ( 1  -  A ) ) ... ( B  +  ( 1  -  A
) ) )  =  ( 1 ... (
( B  -  A
)  +  1 ) ) )
207, 19breqtrd 4457 . . 3  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( A ... B )  ~~  (
1 ... ( ( B  -  A )  +  1 ) ) )
21 hasheni 12395 . . 3  |-  ( ( A ... B ) 
~~  ( 1 ... ( ( B  -  A )  +  1 ) )  ->  ( # `
 ( A ... B ) )  =  ( # `  (
1 ... ( ( B  -  A )  +  1 ) ) ) )
2220, 21syl 16 . 2  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( # `  ( A ... B ) )  =  ( # `  (
1 ... ( ( B  -  A )  +  1 ) ) ) )
23 uznn0sub 11116 . . 3  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( B  -  A )  e.  NN0 )
24 peano2nn0 10837 . . 3  |-  ( ( B  -  A )  e.  NN0  ->  ( ( B  -  A )  +  1 )  e. 
NN0 )
25 hashfz1 12393 . . 3  |-  ( ( ( B  -  A
)  +  1 )  e.  NN0  ->  ( # `  ( 1 ... (
( B  -  A
)  +  1 ) ) )  =  ( ( B  -  A
)  +  1 ) )
2623, 24, 253syl 20 . 2  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( # `  (
1 ... ( ( B  -  A )  +  1 ) ) )  =  ( ( B  -  A )  +  1 ) )
2722, 26eqtrd 2482 1  |-  ( B  e.  ( ZZ>= `  A
)  ->  ( # `  ( A ... B ) )  =  ( ( B  -  A )  +  1 ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    = wceq 1381    e. wcel 1802   class class class wbr 4433   ` cfv 5574  (class class class)co 6277    ~~ cen 7511   CCcc 9488   1c1 9491    + caddc 9493    - cmin 9805   NN0cn0 10796   ZZcz 10865   ZZ>=cuz 11085   ...cfz 11676   #chash 12379
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1603  ax-4 1616  ax-5 1689  ax-6 1732  ax-7 1774  ax-8 1804  ax-9 1806  ax-10 1821  ax-11 1826  ax-12 1838  ax-13 1983  ax-ext 2419  ax-sep 4554  ax-nul 4562  ax-pow 4611  ax-pr 4672  ax-un 6573  ax-cnex 9546  ax-resscn 9547  ax-1cn 9548  ax-icn 9549  ax-addcl 9550  ax-addrcl 9551  ax-mulcl 9552  ax-mulrcl 9553  ax-mulcom 9554  ax-addass 9555  ax-mulass 9556  ax-distr 9557  ax-i2m1 9558  ax-1ne0 9559  ax-1rid 9560  ax-rnegex 9561  ax-rrecex 9562  ax-cnre 9563  ax-pre-lttri 9564  ax-pre-lttrn 9565  ax-pre-ltadd 9566  ax-pre-mulgt0 9567
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 973  df-3an 974  df-tru 1384  df-ex 1598  df-nf 1602  df-sb 1725  df-eu 2270  df-mo 2271  df-clab 2427  df-cleq 2433  df-clel 2436  df-nfc 2591  df-ne 2638  df-nel 2639  df-ral 2796  df-rex 2797  df-reu 2798  df-rab 2800  df-v 3095  df-sbc 3312  df-csb 3418  df-dif 3461  df-un 3463  df-in 3465  df-ss 3472  df-pss 3474  df-nul 3768  df-if 3923  df-pw 3995  df-sn 4011  df-pr 4013  df-tp 4015  df-op 4017  df-uni 4231  df-int 4268  df-iun 4313  df-br 4434  df-opab 4492  df-mpt 4493  df-tr 4527  df-eprel 4777  df-id 4781  df-po 4786  df-so 4787  df-fr 4824  df-we 4826  df-ord 4867  df-on 4868  df-lim 4869  df-suc 4870  df-xp 4991  df-rel 4992  df-cnv 4993  df-co 4994  df-dm 4995  df-rn 4996  df-res 4997  df-ima 4998  df-iota 5537  df-fun 5576  df-fn 5577  df-f 5578  df-f1 5579  df-fo 5580  df-f1o 5581  df-fv 5582  df-riota 6238  df-ov 6280  df-oprab 6281  df-mpt2 6282  df-om 6682  df-1st 6781  df-2nd 6782  df-recs 7040  df-rdg 7074  df-1o 7128  df-er 7309  df-en 7515  df-dom 7516  df-sdom 7517  df-fin 7518  df-card 8318  df-pnf 9628  df-mnf 9629  df-xr 9630  df-ltxr 9631  df-le 9632  df-sub 9807  df-neg 9808  df-nn 10538  df-n0 10797  df-z 10866  df-uz 11086  df-fz 11677  df-hash 12380
This theorem is referenced by:  fzsdom2  12460  hashfzo  12461  hashfz0  12464  0sgmppw  23338  logfaclbnd  23362  ballotlem2  28293  subfacp1lem5  28494  fzisoeu  31445  stoweidlem11  31678  stoweidlem26  31693
  Copyright terms: Public domain W3C validator