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

Theorem fz1f1o 12467
Description: A lemma for working with finite sums. (Contributed by Mario Carneiro, 22-Apr-2014.)
Assertion
Ref Expression
fz1f1o  |-  ( A  e.  Fin  ->  ( A  =  (/)  \/  (
( # `  A )  e.  NN  /\  E. f  f : ( 1 ... ( # `  A ) ) -1-1-onto-> A ) ) )
Distinct variable group:    A, f

Proof of Theorem fz1f1o
StepHypRef Expression
1 hashcl 11602 . . . 4  |-  ( A  e.  Fin  ->  ( # `
 A )  e. 
NN0 )
2 elnn0 10187 . . . 4  |-  ( (
# `  A )  e.  NN0  <->  ( ( # `  A )  e.  NN  \/  ( # `  A
)  =  0 ) )
31, 2sylib 189 . . 3  |-  ( A  e.  Fin  ->  (
( # `  A )  e.  NN  \/  ( # `
 A )  =  0 ) )
43orcomd 378 . 2  |-  ( A  e.  Fin  ->  (
( # `  A )  =  0  \/  ( # `
 A )  e.  NN ) )
5 hasheq0 11607 . . 3  |-  ( A  e.  Fin  ->  (
( # `  A )  =  0  <->  A  =  (/) ) )
6 hashfz1 11593 . . . . . . 7  |-  ( (
# `  A )  e.  NN0  ->  ( # `  (
1 ... ( # `  A
) ) )  =  ( # `  A
) )
71, 6syl 16 . . . . . 6  |-  ( A  e.  Fin  ->  ( # `
 ( 1 ... ( # `  A
) ) )  =  ( # `  A
) )
8 fzfi 11274 . . . . . . 7  |-  ( 1 ... ( # `  A
) )  e.  Fin
9 hashen 11594 . . . . . . 7  |-  ( ( ( 1 ... ( # `
 A ) )  e.  Fin  /\  A  e.  Fin )  ->  (
( # `  ( 1 ... ( # `  A
) ) )  =  ( # `  A
)  <->  ( 1 ... ( # `  A
) )  ~~  A
) )
108, 9mpan 652 . . . . . 6  |-  ( A  e.  Fin  ->  (
( # `  ( 1 ... ( # `  A
) ) )  =  ( # `  A
)  <->  ( 1 ... ( # `  A
) )  ~~  A
) )
117, 10mpbid 202 . . . . 5  |-  ( A  e.  Fin  ->  (
1 ... ( # `  A
) )  ~~  A
)
12 bren 7084 . . . . 5  |-  ( ( 1 ... ( # `  A ) )  ~~  A 
<->  E. f  f : ( 1 ... ( # `
 A ) ) -1-1-onto-> A )
1311, 12sylib 189 . . . 4  |-  ( A  e.  Fin  ->  E. f 
f : ( 1 ... ( # `  A
) ) -1-1-onto-> A )
1413biantrud 494 . . 3  |-  ( A  e.  Fin  ->  (
( # `  A )  e.  NN  <->  ( ( # `
 A )  e.  NN  /\  E. f 
f : ( 1 ... ( # `  A
) ) -1-1-onto-> A ) ) )
155, 14orbi12d 691 . 2  |-  ( A  e.  Fin  ->  (
( ( # `  A
)  =  0  \/  ( # `  A
)  e.  NN )  <-> 
( A  =  (/)  \/  ( ( # `  A
)  e.  NN  /\  E. f  f : ( 1 ... ( # `  A ) ) -1-1-onto-> A ) ) ) )
164, 15mpbid 202 1  |-  ( A  e.  Fin  ->  ( A  =  (/)  \/  (
( # `  A )  e.  NN  /\  E. f  f : ( 1 ... ( # `  A ) ) -1-1-onto-> A ) ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 177    \/ wo 358    /\ wa 359   E.wex 1547    = wceq 1649    e. wcel 1721   (/)c0 3596   class class class wbr 4180   -1-1-onto->wf1o 5420   ` cfv 5421  (class class class)co 6048    ~~ cen 7073   Fincfn 7076   0cc0 8954   1c1 8955   NNcn 9964   NN0cn0 10185   ...cfz 11007   #chash 11581
This theorem is referenced by:  sumz  12479  fsumf1o  12480  fsumss  12482  fsumcl2lem  12488  fsumadd  12495  fsummulc2  12530  fsumconst  12536  fsumrelem  12549  gsumval3eu  15476  gsumzres  15480  gsumzcl  15481  gsumzf1o  15482  gsumzaddlem  15489  gsumconst  15495  gsumzmhm  15496  gsumzoppg  15502  gsumfsum  16729  prod1  25231  fprodf1o  25233  fprodss  25235  fprodcl2lem  25237  fprodmul  25245  fproddiv  25246  fprodconst  25263  fprodn0  25264  stoweidlem35  27659  stoweidlem39  27663
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1552  ax-5 1563  ax-17 1623  ax-9 1662  ax-8 1683  ax-13 1723  ax-14 1725  ax-6 1740  ax-7 1745  ax-11 1757  ax-12 1946  ax-ext 2393  ax-sep 4298  ax-nul 4306  ax-pow 4345  ax-pr 4371  ax-un 4668  ax-cnex 9010  ax-resscn 9011  ax-1cn 9012  ax-icn 9013  ax-addcl 9014  ax-addrcl 9015  ax-mulcl 9016  ax-mulrcl 9017  ax-mulcom 9018  ax-addass 9019  ax-mulass 9020  ax-distr 9021  ax-i2m1 9022  ax-1ne0 9023  ax-1rid 9024  ax-rnegex 9025  ax-rrecex 9026  ax-cnre 9027  ax-pre-lttri 9028  ax-pre-lttrn 9029  ax-pre-ltadd 9030  ax-pre-mulgt0 9031
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1325  df-ex 1548  df-nf 1551  df-sb 1656  df-eu 2266  df-mo 2267  df-clab 2399  df-cleq 2405  df-clel 2408  df-nfc 2537  df-ne 2577  df-nel 2578  df-ral 2679  df-rex 2680  df-reu 2681  df-rab 2683  df-v 2926  df-sbc 3130  df-csb 3220  df-dif 3291  df-un 3293  df-in 3295  df-ss 3302  df-pss 3304  df-nul 3597  df-if 3708  df-pw 3769  df-sn 3788  df-pr 3789  df-tp 3790  df-op 3791  df-uni 3984  df-int 4019  df-iun 4063  df-br 4181  df-opab 4235  df-mpt 4236  df-tr 4271  df-eprel 4462  df-id 4466  df-po 4471  df-so 4472  df-fr 4509  df-we 4511  df-ord 4552  df-on 4553  df-lim 4554  df-suc 4555  df-om 4813  df-xp 4851  df-rel 4852  df-cnv 4853  df-co 4854  df-dm 4855  df-rn 4856  df-res 4857  df-ima 4858  df-iota 5385  df-fun 5423  df-fn 5424  df-f 5425  df-f1 5426  df-fo 5427  df-f1o 5428  df-fv 5429  df-ov 6051  df-oprab 6052  df-mpt2 6053  df-1st 6316  df-2nd 6317  df-riota 6516  df-recs 6600  df-rdg 6635  df-1o 6691  df-er 6872  df-en 7077  df-dom 7078  df-sdom 7079  df-fin 7080  df-card 7790  df-pnf 9086  df-mnf 9087  df-xr 9088  df-ltxr 9089  df-le 9090  df-sub 9257  df-neg 9258  df-nn 9965  df-n0 10186  df-z 10247  df-uz 10453  df-fz 11008  df-hash 11582
  Copyright terms: Public domain W3C validator