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

Theorem ballotfilemfmpn 13234
Description:  ( F `  C ) finishes counting at  ( M  -  N ). (Contributed by Thierry Arnoux, 25-Nov-2016.)
Hypotheses
Ref Expression
ballotth.m  |-  M  e.  NN
ballotth.n  |-  N  e.  NN
ballotfilem.o  |-  O  =  { c  e.  ( ~P ( 1 ... ( M  +  N
) )  i^i  Fin )  |  ( `  c
)  =  M }
ballotfilem.p  |-  P  =  ( x  e.  ( ~P O  i^i  Fin )  |->  ( ( `  x
)  /  ( `  O
) ) )
ballotth.f  |-  F  =  ( c  e.  O  |->  ( i  e.  ZZ  |->  ( ( `  ( (
1 ... i )  i^i  c ) )  -  ( `  ( ( 1 ... i )  \ 
c ) ) ) ) )
Assertion
Ref Expression
ballotfilemfmpn  |-  ( C  e.  O  ->  (
( F `  C
) `  ( M  +  N ) )  =  ( M  -  N
) )
Distinct variable groups:    M, c    N, c    O, c    i, M   
i, N    i, O, c    F, c, i    C, i
Allowed substitution hints:    C( x,  c)    P( x,  i,  c)    F( x)    M( x)    N( x)    O( x)

Proof of Theorem ballotfilemfmpn
Dummy variable  b is distinct from all other variables.
StepHypRef Expression
1 ballotth.m . . 3  |-  M  e.  NN
2 ballotth.n . . 3  |-  N  e.  NN
3 ballotfilem.o . . 3  |-  O  =  { c  e.  ( ~P ( 1 ... ( M  +  N
) )  i^i  Fin )  |  ( `  c
)  =  M }
4 ballotfilem.p . . 3  |-  P  =  ( x  e.  ( ~P O  i^i  Fin )  |->  ( ( `  x
)  /  ( `  O
) ) )
5 ballotth.f . . 3  |-  F  =  ( c  e.  O  |->  ( i  e.  ZZ  |->  ( ( `  ( (
1 ... i )  i^i  c ) )  -  ( `  ( ( 1 ... i )  \ 
c ) ) ) ) )
6 id 19 . . 3  |-  ( C  e.  O  ->  C  e.  O )
7 nnaddcl 9324 . . . . . 6  |-  ( ( M  e.  NN  /\  N  e.  NN )  ->  ( M  +  N
)  e.  NN )
81, 2, 7mp2an 430 . . . . 5  |-  ( M  +  N )  e.  NN
98nnzi 9665 . . . 4  |-  ( M  +  N )  e.  ZZ
109a1i 9 . . 3  |-  ( C  e.  O  ->  ( M  +  N )  e.  ZZ )
111, 2, 3, 4, 5, 6, 10ballotfilemfval 13229 . 2  |-  ( C  e.  O  ->  (
( F `  C
) `  ( M  +  N ) )  =  ( ( `  (
( 1 ... ( M  +  N )
)  i^i  C )
)  -  ( `  (
( 1 ... ( M  +  N )
)  \  C )
) ) )
123ssrab3 3334 . . . . . . . . 9  |-  O  C_  ( ~P ( 1 ... ( M  +  N
) )  i^i  Fin )
1312sseli 3244 . . . . . . . 8  |-  ( C  e.  O  ->  C  e.  ( ~P ( 1 ... ( M  +  N ) )  i^i 
Fin ) )
1413elin1d 3418 . . . . . . 7  |-  ( C  e.  O  ->  C  e.  ~P ( 1 ... ( M  +  N
) ) )
1514elpwid 3700 . . . . . 6  |-  ( C  e.  O  ->  C  C_  ( 1 ... ( M  +  N )
) )
16 sseqin2 3450 . . . . . 6  |-  ( C 
C_  ( 1 ... ( M  +  N
) )  <->  ( (
1 ... ( M  +  N ) )  i^i 
C )  =  C )
1715, 16sylib 122 . . . . 5  |-  ( C  e.  O  ->  (
( 1 ... ( M  +  N )
)  i^i  C )  =  C )
1817fveq2d 5699 . . . 4  |-  ( C  e.  O  ->  ( `  ( ( 1 ... ( M  +  N
) )  i^i  C
) )  =  ( `  C ) )
19 rabssab 3337 . . . . . . 7  |-  { c  e.  ( ~P (
1 ... ( M  +  N ) )  i^i 
Fin )  |  ( `  c )  =  M }  C_  { c  |  ( `  c )  =  M }
2019sseli 3244 . . . . . 6  |-  ( C  e.  { c  e.  ( ~P ( 1 ... ( M  +  N ) )  i^i 
Fin )  |  ( `  c )  =  M }  ->  C  e.  { c  |  ( `  c
)  =  M }
)
2120, 3eleq2s 2333 . . . . 5  |-  ( C  e.  O  ->  C  e.  { c  |  ( `  c )  =  M } )
22 fveqeq2 5704 . . . . . 6  |-  ( b  =  C  ->  (
( `  b )  =  M  <->  ( `  C )  =  M ) )
23 fveqeq2 5704 . . . . . . 7  |-  ( c  =  b  ->  (
( `  c )  =  M  <->  ( `  b )  =  M ) )
2423cbvabv 2365 . . . . . 6  |-  { c  |  ( `  c
)  =  M }  =  { b  |  ( `  b )  =  M }
2522, 24elab2g 2973 . . . . 5  |-  ( C  e.  O  ->  ( C  e.  { c  |  ( `  c )  =  M }  <->  ( `  C
)  =  M ) )
2621, 25mpbid 147 . . . 4  |-  ( C  e.  O  ->  ( `  C )  =  M )
2718, 26eqtrd 2271 . . 3  |-  ( C  e.  O  ->  ( `  ( ( 1 ... ( M  +  N
) )  i^i  C
) )  =  M )
28 1z 9670 . . . . . 6  |-  1  e.  ZZ
29 fzfig 10867 . . . . . 6  |-  ( ( 1  e.  ZZ  /\  ( M  +  N
)  e.  ZZ )  ->  ( 1 ... ( M  +  N
) )  e.  Fin )
3028, 9, 29mp2an 430 . . . . 5  |-  ( 1 ... ( M  +  N ) )  e. 
Fin
3113elin2d 3419 . . . . 5  |-  ( C  e.  O  ->  C  e.  Fin )
32 fihashssdif 11259 . . . . 5  |-  ( ( ( 1 ... ( M  +  N )
)  e.  Fin  /\  C  e.  Fin  /\  C  C_  ( 1 ... ( M  +  N )
) )  ->  ( `  ( ( 1 ... ( M  +  N
) )  \  C
) )  =  ( ( `  ( 1 ... ( M  +  N
) ) )  -  ( `  C ) ) )
3330, 31, 15, 32mp3an2i 1383 . . . 4  |-  ( C  e.  O  ->  ( `  ( ( 1 ... ( M  +  N
) )  \  C
) )  =  ( ( `  ( 1 ... ( M  +  N
) ) )  -  ( `  C ) ) )
348nnnn0i 9571 . . . . . 6  |-  ( M  +  N )  e. 
NN0
35 hashfz1 11222 . . . . . 6  |-  ( ( M  +  N )  e.  NN0  ->  ( `  (
1 ... ( M  +  N ) ) )  =  ( M  +  N ) )
3634, 35mp1i 10 . . . . 5  |-  ( C  e.  O  ->  ( `  ( 1 ... ( M  +  N )
) )  =  ( M  +  N ) )
3736, 26oveq12d 6103 . . . 4  |-  ( C  e.  O  ->  (
( `  ( 1 ... ( M  +  N
) ) )  -  ( `  C ) )  =  ( ( M  +  N )  -  M ) )
381nncni 9314 . . . . . 6  |-  M  e.  CC
392nncni 9314 . . . . . 6  |-  N  e.  CC
40 pncan2 8533 . . . . . 6  |-  ( ( M  e.  CC  /\  N  e.  CC )  ->  ( ( M  +  N )  -  M
)  =  N )
4138, 39, 40mp2an 430 . . . . 5  |-  ( ( M  +  N )  -  M )  =  N
4241a1i 9 . . . 4  |-  ( C  e.  O  ->  (
( M  +  N
)  -  M )  =  N )
4333, 37, 423eqtrd 2275 . . 3  |-  ( C  e.  O  ->  ( `  ( ( 1 ... ( M  +  N
) )  \  C
) )  =  N )
4427, 43oveq12d 6103 . 2  |-  ( C  e.  O  ->  (
( `  ( ( 1 ... ( M  +  N ) )  i^i 
C ) )  -  ( `  ( ( 1 ... ( M  +  N ) )  \  C ) ) )  =  ( M  -  N ) )
4511, 44eqtrd 2271 1  |-  ( C  e.  O  ->  (
( F `  C
) `  ( M  +  N ) )  =  ( M  -  N
) )
Colors of variables:    wff set class
This proof depends on syntax axioms:    -> wi 4    = wceq 1402    e. wcel 2209   {cab 2224   {crab 2532    \ cdif 3217    i^i cin 3219    C_ wss 3220   ~Pcpw 3688    |-> cmpt 4192   ` cfv 5377  (class class class)co 6085   Fincfn 7022   CCcc 8177   1c1 8180    + caddc 8182    - cmin 8497    / cdiv 9002   NNcn 9304   NN0cn0 9563   ZZcz 9644   ...cfz 10411  ♯chash 11214
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 623  ax-in2 624  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-coll 4246  ax-sep 4249  ax-nul 4259  ax-pow 4311  ax-pr 4346  ax-un 4578  ax-setind 4684  ax-iinf 4735  ax-cnex 8270  ax-resscn 8271  ax-1cn 8272  ax-1re 8273  ax-icn 8274  ax-addcl 8275  ax-addrcl 8276  ax-mulcl 8277  ax-addcom 8279  ax-addass 8281  ax-distr 8283  ax-i2m1 8284  ax-0lt1 8285  ax-0id 8287  ax-rnegex 8288  ax-cnre 8290  ax-pre-ltirr 8291  ax-pre-ltwlin 8292  ax-pre-lttrn 8293  ax-pre-apti 8294  ax-pre-ltadd 8295
This proof depends on definitions:  df-bi 117  df-dc 847  df-3or 1010  df-3an 1011  df-tru 1405  df-fal 1408  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ne 2421  df-nel 2516  df-ral 2533  df-rex 2534  df-reu 2535  df-rab 2537  df-v 2823  df-sbc 3052  df-csb 3148  df-dif 3222  df-un 3224  df-in 3226  df-ss 3233  df-nul 3521  df-if 3639  df-pw 3690  df-sn 3715  df-pr 3716  df-op 3718  df-uni 3936  df-int 3971  df-iun 4014  df-br 4131  df-opab 4193  df-mpt 4194  df-tr 4230  df-id 4438  df-iord 4511  df-on 4513  df-ilim 4514  df-suc 4516  df-iom 4738  df-xp 4780  df-rel 4781  df-cnv 4782  df-co 4783  df-dm 4784  df-rn 4785  df-res 4786  df-ima 4787  df-iota 5337  df-fun 5379  df-fn 5380  df-f 5381  df-f1 5382  df-fo 5383  df-f1o 5384  df-fv 5385  df-riota 6038  df-ov 6088  df-oprab 6089  df-mpo 6090  df-1st 6374  df-2nd 6375  df-recs 6576  df-irdg 6641  df-frec 6662  df-1o 6687  df-oadd 6691  df-er 6807  df-en 7023  df-dom 7024  df-fin 7025  df-pnf 8362  df-mnf 8363  df-xr 8364  df-ltxr 8365  df-le 8366  df-sub 8499  df-neg 8500  df-inn 9305  df-n0 9564  df-z 9645  df-uz 9922  df-fz 10412  df-ihash 11215
This theorem is used by:  ballotfilem5  13242
  Copyright terms: Public domain W3C validator