Metamath Proof Explorer


Theorem ballotlem1c

Description: If the first vote is for A, the vote on the first tie is for B. (Contributed by Thierry Arnoux, 4-Apr-2017)

Ref Expression
Hypotheses ballotth.m
|- M e. NN
ballotth.n
|- N e. NN
ballotth.o
|- O = { c e. ~P ( 1 ... ( M + N ) ) | ( # ` c ) = M }
ballotth.p
|- P = ( x e. ~P O |-> ( ( # ` x ) / ( # ` O ) ) )
ballotth.f
|- F = ( c e. O |-> ( i e. ZZ |-> ( ( # ` ( ( 1 ... i ) i^i c ) ) - ( # ` ( ( 1 ... i ) \ c ) ) ) ) )
ballotth.e
|- E = { c e. O | A. i e. ( 1 ... ( M + N ) ) 0 < ( ( F ` c ) ` i ) }
ballotth.mgtn
|- N < M
ballotth.i
|- I = ( c e. ( O \ E ) |-> inf ( { k e. ( 1 ... ( M + N ) ) | ( ( F ` c ) ` k ) = 0 } , RR , < ) )
Assertion ballotlem1c
|- ( ( C e. ( O \ E ) /\ 1 e. C ) -> -. ( I ` C ) e. C )

Proof

Step Hyp Ref Expression
1 ballotth.m
 |-  M e. NN
2 ballotth.n
 |-  N e. NN
3 ballotth.o
 |-  O = { c e. ~P ( 1 ... ( M + N ) ) | ( # ` c ) = M }
4 ballotth.p
 |-  P = ( x e. ~P O |-> ( ( # ` x ) / ( # ` O ) ) )
5 ballotth.f
 |-  F = ( c e. O |-> ( i e. ZZ |-> ( ( # ` ( ( 1 ... i ) i^i c ) ) - ( # ` ( ( 1 ... i ) \ c ) ) ) ) )
6 ballotth.e
 |-  E = { c e. O | A. i e. ( 1 ... ( M + N ) ) 0 < ( ( F ` c ) ` i ) }
7 ballotth.mgtn
 |-  N < M
8 ballotth.i
 |-  I = ( c e. ( O \ E ) |-> inf ( { k e. ( 1 ... ( M + N ) ) | ( ( F ` c ) ` k ) = 0 } , RR , < ) )
9 eldifi
 |-  ( C e. ( O \ E ) -> C e. O )
10 9 ad2antrr
 |-  ( ( ( C e. ( O \ E ) /\ 1 e. C ) /\ ( I ` C ) e. C ) -> C e. O )
11 1 2 3 4 5 6 7 8 ballotlemiex
 |-  ( C e. ( O \ E ) -> ( ( I ` C ) e. ( 1 ... ( M + N ) ) /\ ( ( F ` C ) ` ( I ` C ) ) = 0 ) )
12 11 simpld
 |-  ( C e. ( O \ E ) -> ( I ` C ) e. ( 1 ... ( M + N ) ) )
13 elfznn
 |-  ( ( I ` C ) e. ( 1 ... ( M + N ) ) -> ( I ` C ) e. NN )
14 12 13 syl
 |-  ( C e. ( O \ E ) -> ( I ` C ) e. NN )
15 14 adantr
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( I ` C ) e. NN )
16 1 2 3 4 5 6 7 8 ballotlemii
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( I ` C ) =/= 1 )
17 eluz2b3
 |-  ( ( I ` C ) e. ( ZZ>= ` 2 ) <-> ( ( I ` C ) e. NN /\ ( I ` C ) =/= 1 ) )
18 15 16 17 sylanbrc
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( I ` C ) e. ( ZZ>= ` 2 ) )
19 uz2m1nn
 |-  ( ( I ` C ) e. ( ZZ>= ` 2 ) -> ( ( I ` C ) - 1 ) e. NN )
20 18 19 syl
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( ( I ` C ) - 1 ) e. NN )
21 20 adantr
 |-  ( ( ( C e. ( O \ E ) /\ 1 e. C ) /\ ( I ` C ) e. C ) -> ( ( I ` C ) - 1 ) e. NN )
22 elnnuz
 |-  ( ( ( I ` C ) - 1 ) e. NN <-> ( ( I ` C ) - 1 ) e. ( ZZ>= ` 1 ) )
23 22 biimpi
 |-  ( ( ( I ` C ) - 1 ) e. NN -> ( ( I ` C ) - 1 ) e. ( ZZ>= ` 1 ) )
24 eluzfz1
 |-  ( ( ( I ` C ) - 1 ) e. ( ZZ>= ` 1 ) -> 1 e. ( 1 ... ( ( I ` C ) - 1 ) ) )
25 20 23 24 3syl
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> 1 e. ( 1 ... ( ( I ` C ) - 1 ) ) )
26 25 adantr
 |-  ( ( ( C e. ( O \ E ) /\ 1 e. C ) /\ ( I ` C ) e. C ) -> 1 e. ( 1 ... ( ( I ` C ) - 1 ) ) )
27 0le1
 |-  0 <_ 1
28 1e0p1
 |-  1 = ( 0 + 1 )
29 27 28 breqtri
 |-  0 <_ ( 0 + 1 )
30 1nn
 |-  1 e. NN
31 30 a1i
 |-  ( C e. ( O \ E ) -> 1 e. NN )
32 1 2 3 4 5 9 31 ballotlemfp1
 |-  ( C e. ( O \ E ) -> ( ( -. 1 e. C -> ( ( F ` C ) ` 1 ) = ( ( ( F ` C ) ` ( 1 - 1 ) ) - 1 ) ) /\ ( 1 e. C -> ( ( F ` C ) ` 1 ) = ( ( ( F ` C ) ` ( 1 - 1 ) ) + 1 ) ) ) )
33 32 simprd
 |-  ( C e. ( O \ E ) -> ( 1 e. C -> ( ( F ` C ) ` 1 ) = ( ( ( F ` C ) ` ( 1 - 1 ) ) + 1 ) ) )
34 33 imp
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( ( F ` C ) ` 1 ) = ( ( ( F ` C ) ` ( 1 - 1 ) ) + 1 ) )
35 1m1e0
 |-  ( 1 - 1 ) = 0
36 35 fveq2i
 |-  ( ( F ` C ) ` ( 1 - 1 ) ) = ( ( F ` C ) ` 0 )
37 36 oveq1i
 |-  ( ( ( F ` C ) ` ( 1 - 1 ) ) + 1 ) = ( ( ( F ` C ) ` 0 ) + 1 )
38 37 a1i
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( ( ( F ` C ) ` ( 1 - 1 ) ) + 1 ) = ( ( ( F ` C ) ` 0 ) + 1 ) )
39 1 2 3 4 5 ballotlemfval0
 |-  ( C e. O -> ( ( F ` C ) ` 0 ) = 0 )
40 9 39 syl
 |-  ( C e. ( O \ E ) -> ( ( F ` C ) ` 0 ) = 0 )
41 40 adantr
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( ( F ` C ) ` 0 ) = 0 )
42 41 oveq1d
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( ( ( F ` C ) ` 0 ) + 1 ) = ( 0 + 1 ) )
43 34 38 42 3eqtrrd
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> ( 0 + 1 ) = ( ( F ` C ) ` 1 ) )
44 29 43 breqtrid
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> 0 <_ ( ( F ` C ) ` 1 ) )
45 44 adantr
 |-  ( ( ( C e. ( O \ E ) /\ 1 e. C ) /\ ( I ` C ) e. C ) -> 0 <_ ( ( F ` C ) ` 1 ) )
46 fveq2
 |-  ( i = 1 -> ( ( F ` C ) ` i ) = ( ( F ` C ) ` 1 ) )
47 46 breq2d
 |-  ( i = 1 -> ( 0 <_ ( ( F ` C ) ` i ) <-> 0 <_ ( ( F ` C ) ` 1 ) ) )
48 47 rspcev
 |-  ( ( 1 e. ( 1 ... ( ( I ` C ) - 1 ) ) /\ 0 <_ ( ( F ` C ) ` 1 ) ) -> E. i e. ( 1 ... ( ( I ` C ) - 1 ) ) 0 <_ ( ( F ` C ) ` i ) )
49 26 45 48 syl2anc
 |-  ( ( ( C e. ( O \ E ) /\ 1 e. C ) /\ ( I ` C ) e. C ) -> E. i e. ( 1 ... ( ( I ` C ) - 1 ) ) 0 <_ ( ( F ` C ) ` i ) )
50 df-neg
 |-  -u 1 = ( 0 - 1 )
51 1 2 3 4 5 9 14 ballotlemfp1
 |-  ( C e. ( O \ E ) -> ( ( -. ( I ` C ) e. C -> ( ( F ` C ) ` ( I ` C ) ) = ( ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) - 1 ) ) /\ ( ( I ` C ) e. C -> ( ( F ` C ) ` ( I ` C ) ) = ( ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) + 1 ) ) ) )
52 51 simprd
 |-  ( C e. ( O \ E ) -> ( ( I ` C ) e. C -> ( ( F ` C ) ` ( I ` C ) ) = ( ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) + 1 ) ) )
53 52 imp
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( ( F ` C ) ` ( I ` C ) ) = ( ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) + 1 ) )
54 11 simprd
 |-  ( C e. ( O \ E ) -> ( ( F ` C ) ` ( I ` C ) ) = 0 )
55 54 adantr
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( ( F ` C ) ` ( I ` C ) ) = 0 )
56 53 55 eqtr3d
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) + 1 ) = 0 )
57 0cnd
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> 0 e. CC )
58 1cnd
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> 1 e. CC )
59 9 adantr
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> C e. O )
60 14 nnzd
 |-  ( C e. ( O \ E ) -> ( I ` C ) e. ZZ )
61 60 adantr
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( I ` C ) e. ZZ )
62 1zzd
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> 1 e. ZZ )
63 61 62 zsubcld
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( ( I ` C ) - 1 ) e. ZZ )
64 1 2 3 4 5 59 63 ballotlemfelz
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) e. ZZ )
65 64 zcnd
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) e. CC )
66 57 58 65 subadd2d
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( ( 0 - 1 ) = ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) <-> ( ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) + 1 ) = 0 ) )
67 56 66 mpbird
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( 0 - 1 ) = ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) )
68 50 67 syl5eq
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> -u 1 = ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) )
69 neg1lt0
 |-  -u 1 < 0
70 68 69 eqbrtrrdi
 |-  ( ( C e. ( O \ E ) /\ ( I ` C ) e. C ) -> ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) < 0 )
71 70 adantlr
 |-  ( ( ( C e. ( O \ E ) /\ 1 e. C ) /\ ( I ` C ) e. C ) -> ( ( F ` C ) ` ( ( I ` C ) - 1 ) ) < 0 )
72 1 2 3 4 5 10 21 49 71 ballotlemfcc
 |-  ( ( ( C e. ( O \ E ) /\ 1 e. C ) /\ ( I ` C ) e. C ) -> E. k e. ( 1 ... ( ( I ` C ) - 1 ) ) ( ( F ` C ) ` k ) = 0 )
73 1 2 3 4 5 6 7 8 ballotlemimin
 |-  ( C e. ( O \ E ) -> -. E. k e. ( 1 ... ( ( I ` C ) - 1 ) ) ( ( F ` C ) ` k ) = 0 )
74 73 ad2antrr
 |-  ( ( ( C e. ( O \ E ) /\ 1 e. C ) /\ ( I ` C ) e. C ) -> -. E. k e. ( 1 ... ( ( I ` C ) - 1 ) ) ( ( F ` C ) ` k ) = 0 )
75 72 74 pm2.65da
 |-  ( ( C e. ( O \ E ) /\ 1 e. C ) -> -. ( I ` C ) e. C )