| 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 |
|
ballotth.s |
|- S = ( c e. ( O \ E ) |-> ( i e. ( 1 ... ( M + N ) ) |-> if ( i <_ ( I ` c ) , ( ( ( I ` c ) + 1 ) - i ) , i ) ) ) |
| 10 |
|
ballotth.r |
|- R = ( c e. ( O \ E ) |-> ( ( S ` c ) " c ) ) |
| 11 |
|
ssrab2 |
|- { c e. O | A. i e. ( 1 ... ( M + N ) ) 0 < ( ( F ` c ) ` i ) } C_ O |
| 12 |
6 11
|
eqsstri |
|- E C_ O |
| 13 |
|
fzfi |
|- ( 1 ... ( M + N ) ) e. Fin |
| 14 |
|
pwfi |
|- ( ( 1 ... ( M + N ) ) e. Fin <-> ~P ( 1 ... ( M + N ) ) e. Fin ) |
| 15 |
13 14
|
mpbi |
|- ~P ( 1 ... ( M + N ) ) e. Fin |
| 16 |
|
ssrab2 |
|- { c e. ~P ( 1 ... ( M + N ) ) | ( # ` c ) = M } C_ ~P ( 1 ... ( M + N ) ) |
| 17 |
3 16
|
eqsstri |
|- O C_ ~P ( 1 ... ( M + N ) ) |
| 18 |
|
ssfi |
|- ( ( ~P ( 1 ... ( M + N ) ) e. Fin /\ O C_ ~P ( 1 ... ( M + N ) ) ) -> O e. Fin ) |
| 19 |
15 17 18
|
mp2an |
|- O e. Fin |
| 20 |
|
ssfi |
|- ( ( O e. Fin /\ E C_ O ) -> E e. Fin ) |
| 21 |
19 12 20
|
mp2an |
|- E e. Fin |
| 22 |
21
|
elexi |
|- E e. _V |
| 23 |
22
|
elpw |
|- ( E e. ~P O <-> E C_ O ) |
| 24 |
|
fveq2 |
|- ( x = E -> ( # ` x ) = ( # ` E ) ) |
| 25 |
24
|
oveq1d |
|- ( x = E -> ( ( # ` x ) / ( # ` O ) ) = ( ( # ` E ) / ( # ` O ) ) ) |
| 26 |
|
ovex |
|- ( ( # ` E ) / ( # ` O ) ) e. _V |
| 27 |
25 4 26
|
fvmpt |
|- ( E e. ~P O -> ( P ` E ) = ( ( # ` E ) / ( # ` O ) ) ) |
| 28 |
23 27
|
sylbir |
|- ( E C_ O -> ( P ` E ) = ( ( # ` E ) / ( # ` O ) ) ) |
| 29 |
12 28
|
ax-mp |
|- ( P ` E ) = ( ( # ` E ) / ( # ` O ) ) |
| 30 |
|
hashssdif |
|- ( ( O e. Fin /\ E C_ O ) -> ( # ` ( O \ E ) ) = ( ( # ` O ) - ( # ` E ) ) ) |
| 31 |
19 12 30
|
mp2an |
|- ( # ` ( O \ E ) ) = ( ( # ` O ) - ( # ` E ) ) |
| 32 |
31
|
eqcomi |
|- ( ( # ` O ) - ( # ` E ) ) = ( # ` ( O \ E ) ) |
| 33 |
|
hashcl |
|- ( O e. Fin -> ( # ` O ) e. NN0 ) |
| 34 |
19 33
|
ax-mp |
|- ( # ` O ) e. NN0 |
| 35 |
34
|
nn0cni |
|- ( # ` O ) e. CC |
| 36 |
|
hashcl |
|- ( E e. Fin -> ( # ` E ) e. NN0 ) |
| 37 |
21 36
|
ax-mp |
|- ( # ` E ) e. NN0 |
| 38 |
37
|
nn0cni |
|- ( # ` E ) e. CC |
| 39 |
|
difss |
|- ( O \ E ) C_ O |
| 40 |
|
ssfi |
|- ( ( O e. Fin /\ ( O \ E ) C_ O ) -> ( O \ E ) e. Fin ) |
| 41 |
19 39 40
|
mp2an |
|- ( O \ E ) e. Fin |
| 42 |
|
hashcl |
|- ( ( O \ E ) e. Fin -> ( # ` ( O \ E ) ) e. NN0 ) |
| 43 |
41 42
|
ax-mp |
|- ( # ` ( O \ E ) ) e. NN0 |
| 44 |
43
|
nn0cni |
|- ( # ` ( O \ E ) ) e. CC |
| 45 |
35 38 44
|
subsub23i |
|- ( ( ( # ` O ) - ( # ` E ) ) = ( # ` ( O \ E ) ) <-> ( ( # ` O ) - ( # ` ( O \ E ) ) ) = ( # ` E ) ) |
| 46 |
32 45
|
mpbi |
|- ( ( # ` O ) - ( # ` ( O \ E ) ) ) = ( # ` E ) |
| 47 |
46
|
oveq1i |
|- ( ( ( # ` O ) - ( # ` ( O \ E ) ) ) / ( # ` O ) ) = ( ( # ` E ) / ( # ` O ) ) |
| 48 |
29 47
|
eqtr4i |
|- ( P ` E ) = ( ( ( # ` O ) - ( # ` ( O \ E ) ) ) / ( # ` O ) ) |
| 49 |
1 2 3
|
ballotlem1 |
|- ( # ` O ) = ( ( M + N ) _C M ) |
| 50 |
1
|
nnnn0i |
|- M e. NN0 |
| 51 |
|
nnaddcl |
|- ( ( M e. NN /\ N e. NN ) -> ( M + N ) e. NN ) |
| 52 |
1 2 51
|
mp2an |
|- ( M + N ) e. NN |
| 53 |
52
|
nnnn0i |
|- ( M + N ) e. NN0 |
| 54 |
1
|
nnrei |
|- M e. RR |
| 55 |
2
|
nnnn0i |
|- N e. NN0 |
| 56 |
54 55
|
nn0addge1i |
|- M <_ ( M + N ) |
| 57 |
|
elfz2nn0 |
|- ( M e. ( 0 ... ( M + N ) ) <-> ( M e. NN0 /\ ( M + N ) e. NN0 /\ M <_ ( M + N ) ) ) |
| 58 |
50 53 56 57
|
mpbir3an |
|- M e. ( 0 ... ( M + N ) ) |
| 59 |
|
bccl2 |
|- ( M e. ( 0 ... ( M + N ) ) -> ( ( M + N ) _C M ) e. NN ) |
| 60 |
58 59
|
ax-mp |
|- ( ( M + N ) _C M ) e. NN |
| 61 |
60
|
nnne0i |
|- ( ( M + N ) _C M ) =/= 0 |
| 62 |
49 61
|
eqnetri |
|- ( # ` O ) =/= 0 |
| 63 |
35 62
|
pm3.2i |
|- ( ( # ` O ) e. CC /\ ( # ` O ) =/= 0 ) |
| 64 |
|
divsubdir |
|- ( ( ( # ` O ) e. CC /\ ( # ` ( O \ E ) ) e. CC /\ ( ( # ` O ) e. CC /\ ( # ` O ) =/= 0 ) ) -> ( ( ( # ` O ) - ( # ` ( O \ E ) ) ) / ( # ` O ) ) = ( ( ( # ` O ) / ( # ` O ) ) - ( ( # ` ( O \ E ) ) / ( # ` O ) ) ) ) |
| 65 |
35 44 63 64
|
mp3an |
|- ( ( ( # ` O ) - ( # ` ( O \ E ) ) ) / ( # ` O ) ) = ( ( ( # ` O ) / ( # ` O ) ) - ( ( # ` ( O \ E ) ) / ( # ` O ) ) ) |
| 66 |
35 62
|
dividi |
|- ( ( # ` O ) / ( # ` O ) ) = 1 |
| 67 |
66
|
oveq1i |
|- ( ( ( # ` O ) / ( # ` O ) ) - ( ( # ` ( O \ E ) ) / ( # ` O ) ) ) = ( 1 - ( ( # ` ( O \ E ) ) / ( # ` O ) ) ) |
| 68 |
48 65 67
|
3eqtri |
|- ( P ` E ) = ( 1 - ( ( # ` ( O \ E ) ) / ( # ` O ) ) ) |
| 69 |
1 2 3 4 5 6 7 8 9 10
|
ballotlem8 |
|- ( # ` { c e. ( O \ E ) | 1 e. c } ) = ( # ` { c e. ( O \ E ) | -. 1 e. c } ) |
| 70 |
69
|
oveq1i |
|- ( ( # ` { c e. ( O \ E ) | 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) = ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) |
| 71 |
70
|
oveq1i |
|- ( ( ( # ` { c e. ( O \ E ) | 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) / ( # ` O ) ) = ( ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) / ( # ` O ) ) |
| 72 |
|
rabxm |
|- ( O \ E ) = ( { c e. ( O \ E ) | 1 e. c } u. { c e. ( O \ E ) | -. 1 e. c } ) |
| 73 |
72
|
fveq2i |
|- ( # ` ( O \ E ) ) = ( # ` ( { c e. ( O \ E ) | 1 e. c } u. { c e. ( O \ E ) | -. 1 e. c } ) ) |
| 74 |
|
ssrab2 |
|- { c e. ( O \ E ) | 1 e. c } C_ ( O \ E ) |
| 75 |
74 39
|
sstri |
|- { c e. ( O \ E ) | 1 e. c } C_ O |
| 76 |
75 17
|
sstri |
|- { c e. ( O \ E ) | 1 e. c } C_ ~P ( 1 ... ( M + N ) ) |
| 77 |
|
ssfi |
|- ( ( ~P ( 1 ... ( M + N ) ) e. Fin /\ { c e. ( O \ E ) | 1 e. c } C_ ~P ( 1 ... ( M + N ) ) ) -> { c e. ( O \ E ) | 1 e. c } e. Fin ) |
| 78 |
15 76 77
|
mp2an |
|- { c e. ( O \ E ) | 1 e. c } e. Fin |
| 79 |
|
ssrab2 |
|- { c e. ( O \ E ) | -. 1 e. c } C_ ( O \ E ) |
| 80 |
79 39
|
sstri |
|- { c e. ( O \ E ) | -. 1 e. c } C_ O |
| 81 |
80 17
|
sstri |
|- { c e. ( O \ E ) | -. 1 e. c } C_ ~P ( 1 ... ( M + N ) ) |
| 82 |
|
ssfi |
|- ( ( ~P ( 1 ... ( M + N ) ) e. Fin /\ { c e. ( O \ E ) | -. 1 e. c } C_ ~P ( 1 ... ( M + N ) ) ) -> { c e. ( O \ E ) | -. 1 e. c } e. Fin ) |
| 83 |
15 81 82
|
mp2an |
|- { c e. ( O \ E ) | -. 1 e. c } e. Fin |
| 84 |
|
rabnc |
|- ( { c e. ( O \ E ) | 1 e. c } i^i { c e. ( O \ E ) | -. 1 e. c } ) = (/) |
| 85 |
|
hashun |
|- ( ( { c e. ( O \ E ) | 1 e. c } e. Fin /\ { c e. ( O \ E ) | -. 1 e. c } e. Fin /\ ( { c e. ( O \ E ) | 1 e. c } i^i { c e. ( O \ E ) | -. 1 e. c } ) = (/) ) -> ( # ` ( { c e. ( O \ E ) | 1 e. c } u. { c e. ( O \ E ) | -. 1 e. c } ) ) = ( ( # ` { c e. ( O \ E ) | 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) ) |
| 86 |
78 83 84 85
|
mp3an |
|- ( # ` ( { c e. ( O \ E ) | 1 e. c } u. { c e. ( O \ E ) | -. 1 e. c } ) ) = ( ( # ` { c e. ( O \ E ) | 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) |
| 87 |
73 86
|
eqtri |
|- ( # ` ( O \ E ) ) = ( ( # ` { c e. ( O \ E ) | 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) |
| 88 |
87
|
oveq1i |
|- ( ( # ` ( O \ E ) ) / ( # ` O ) ) = ( ( ( # ` { c e. ( O \ E ) | 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) / ( # ` O ) ) |
| 89 |
|
ssrab2 |
|- { c e. O | -. 1 e. c } C_ O |
| 90 |
19
|
elexi |
|- O e. _V |
| 91 |
90
|
elpw2 |
|- ( { c e. O | -. 1 e. c } e. ~P O <-> { c e. O | -. 1 e. c } C_ O ) |
| 92 |
89 91
|
mpbir |
|- { c e. O | -. 1 e. c } e. ~P O |
| 93 |
|
fveq2 |
|- ( x = { c e. O | -. 1 e. c } -> ( # ` x ) = ( # ` { c e. O | -. 1 e. c } ) ) |
| 94 |
93
|
oveq1d |
|- ( x = { c e. O | -. 1 e. c } -> ( ( # ` x ) / ( # ` O ) ) = ( ( # ` { c e. O | -. 1 e. c } ) / ( # ` O ) ) ) |
| 95 |
|
ovex |
|- ( ( # ` { c e. O | -. 1 e. c } ) / ( # ` O ) ) e. _V |
| 96 |
94 4 95
|
fvmpt |
|- ( { c e. O | -. 1 e. c } e. ~P O -> ( P ` { c e. O | -. 1 e. c } ) = ( ( # ` { c e. O | -. 1 e. c } ) / ( # ` O ) ) ) |
| 97 |
92 96
|
ax-mp |
|- ( P ` { c e. O | -. 1 e. c } ) = ( ( # ` { c e. O | -. 1 e. c } ) / ( # ` O ) ) |
| 98 |
1 2 3 4
|
ballotlem2 |
|- ( P ` { c e. O | -. 1 e. c } ) = ( N / ( M + N ) ) |
| 99 |
|
nfrab1 |
|- F/_ c { c e. O | -. 1 e. c } |
| 100 |
|
nfrab1 |
|- F/_ c { c e. ( O \ E ) | -. 1 e. c } |
| 101 |
99 100
|
dfssf |
|- ( { c e. O | -. 1 e. c } C_ { c e. ( O \ E ) | -. 1 e. c } <-> A. c ( c e. { c e. O | -. 1 e. c } -> c e. { c e. ( O \ E ) | -. 1 e. c } ) ) |
| 102 |
1 2 3 4 5 6
|
ballotlem4 |
|- ( c e. O -> ( -. 1 e. c -> -. c e. E ) ) |
| 103 |
102
|
imdistani |
|- ( ( c e. O /\ -. 1 e. c ) -> ( c e. O /\ -. c e. E ) ) |
| 104 |
|
rabid |
|- ( c e. { c e. O | -. 1 e. c } <-> ( c e. O /\ -. 1 e. c ) ) |
| 105 |
|
eldif |
|- ( c e. ( O \ E ) <-> ( c e. O /\ -. c e. E ) ) |
| 106 |
103 104 105
|
3imtr4i |
|- ( c e. { c e. O | -. 1 e. c } -> c e. ( O \ E ) ) |
| 107 |
104
|
simprbi |
|- ( c e. { c e. O | -. 1 e. c } -> -. 1 e. c ) |
| 108 |
|
rabid |
|- ( c e. { c e. ( O \ E ) | -. 1 e. c } <-> ( c e. ( O \ E ) /\ -. 1 e. c ) ) |
| 109 |
106 107 108
|
sylanbrc |
|- ( c e. { c e. O | -. 1 e. c } -> c e. { c e. ( O \ E ) | -. 1 e. c } ) |
| 110 |
101 109
|
mpgbir |
|- { c e. O | -. 1 e. c } C_ { c e. ( O \ E ) | -. 1 e. c } |
| 111 |
|
rabss2 |
|- ( ( O \ E ) C_ O -> { c e. ( O \ E ) | -. 1 e. c } C_ { c e. O | -. 1 e. c } ) |
| 112 |
39 111
|
ax-mp |
|- { c e. ( O \ E ) | -. 1 e. c } C_ { c e. O | -. 1 e. c } |
| 113 |
110 112
|
eqssi |
|- { c e. O | -. 1 e. c } = { c e. ( O \ E ) | -. 1 e. c } |
| 114 |
113
|
fveq2i |
|- ( # ` { c e. O | -. 1 e. c } ) = ( # ` { c e. ( O \ E ) | -. 1 e. c } ) |
| 115 |
114
|
oveq1i |
|- ( ( # ` { c e. O | -. 1 e. c } ) / ( # ` O ) ) = ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) / ( # ` O ) ) |
| 116 |
97 98 115
|
3eqtr3i |
|- ( N / ( M + N ) ) = ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) / ( # ` O ) ) |
| 117 |
116
|
oveq2i |
|- ( 2 x. ( N / ( M + N ) ) ) = ( 2 x. ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) / ( # ` O ) ) ) |
| 118 |
|
2cn |
|- 2 e. CC |
| 119 |
|
hashcl |
|- ( { c e. ( O \ E ) | -. 1 e. c } e. Fin -> ( # ` { c e. ( O \ E ) | -. 1 e. c } ) e. NN0 ) |
| 120 |
83 119
|
ax-mp |
|- ( # ` { c e. ( O \ E ) | -. 1 e. c } ) e. NN0 |
| 121 |
120
|
nn0cni |
|- ( # ` { c e. ( O \ E ) | -. 1 e. c } ) e. CC |
| 122 |
118 121 35 62
|
divassi |
|- ( ( 2 x. ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) / ( # ` O ) ) = ( 2 x. ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) / ( # ` O ) ) ) |
| 123 |
121
|
2timesi |
|- ( 2 x. ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) = ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) |
| 124 |
123
|
oveq1i |
|- ( ( 2 x. ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) / ( # ` O ) ) = ( ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) / ( # ` O ) ) |
| 125 |
117 122 124
|
3eqtr2i |
|- ( 2 x. ( N / ( M + N ) ) ) = ( ( ( # ` { c e. ( O \ E ) | -. 1 e. c } ) + ( # ` { c e. ( O \ E ) | -. 1 e. c } ) ) / ( # ` O ) ) |
| 126 |
71 88 125
|
3eqtr4ri |
|- ( 2 x. ( N / ( M + N ) ) ) = ( ( # ` ( O \ E ) ) / ( # ` O ) ) |
| 127 |
126
|
oveq2i |
|- ( 1 - ( 2 x. ( N / ( M + N ) ) ) ) = ( 1 - ( ( # ` ( O \ E ) ) / ( # ` O ) ) ) |
| 128 |
52
|
nncni |
|- ( M + N ) e. CC |
| 129 |
2
|
nncni |
|- N e. CC |
| 130 |
118 129
|
mulcli |
|- ( 2 x. N ) e. CC |
| 131 |
52
|
nnne0i |
|- ( M + N ) =/= 0 |
| 132 |
128 131
|
pm3.2i |
|- ( ( M + N ) e. CC /\ ( M + N ) =/= 0 ) |
| 133 |
|
divsubdir |
|- ( ( ( M + N ) e. CC /\ ( 2 x. N ) e. CC /\ ( ( M + N ) e. CC /\ ( M + N ) =/= 0 ) ) -> ( ( ( M + N ) - ( 2 x. N ) ) / ( M + N ) ) = ( ( ( M + N ) / ( M + N ) ) - ( ( 2 x. N ) / ( M + N ) ) ) ) |
| 134 |
128 130 132 133
|
mp3an |
|- ( ( ( M + N ) - ( 2 x. N ) ) / ( M + N ) ) = ( ( ( M + N ) / ( M + N ) ) - ( ( 2 x. N ) / ( M + N ) ) ) |
| 135 |
129
|
2timesi |
|- ( 2 x. N ) = ( N + N ) |
| 136 |
135
|
oveq2i |
|- ( ( M + N ) - ( 2 x. N ) ) = ( ( M + N ) - ( N + N ) ) |
| 137 |
1
|
nncni |
|- M e. CC |
| 138 |
137 129 129 129
|
addsub4i |
|- ( ( M + N ) - ( N + N ) ) = ( ( M - N ) + ( N - N ) ) |
| 139 |
129
|
subidi |
|- ( N - N ) = 0 |
| 140 |
139
|
oveq2i |
|- ( ( M - N ) + ( N - N ) ) = ( ( M - N ) + 0 ) |
| 141 |
137 129
|
subcli |
|- ( M - N ) e. CC |
| 142 |
141
|
addridi |
|- ( ( M - N ) + 0 ) = ( M - N ) |
| 143 |
138 140 142
|
3eqtri |
|- ( ( M + N ) - ( N + N ) ) = ( M - N ) |
| 144 |
136 143
|
eqtri |
|- ( ( M + N ) - ( 2 x. N ) ) = ( M - N ) |
| 145 |
144
|
oveq1i |
|- ( ( ( M + N ) - ( 2 x. N ) ) / ( M + N ) ) = ( ( M - N ) / ( M + N ) ) |
| 146 |
128 131
|
dividi |
|- ( ( M + N ) / ( M + N ) ) = 1 |
| 147 |
118 129 128 131
|
divassi |
|- ( ( 2 x. N ) / ( M + N ) ) = ( 2 x. ( N / ( M + N ) ) ) |
| 148 |
146 147
|
oveq12i |
|- ( ( ( M + N ) / ( M + N ) ) - ( ( 2 x. N ) / ( M + N ) ) ) = ( 1 - ( 2 x. ( N / ( M + N ) ) ) ) |
| 149 |
134 145 148
|
3eqtr3ri |
|- ( 1 - ( 2 x. ( N / ( M + N ) ) ) ) = ( ( M - N ) / ( M + N ) ) |
| 150 |
68 127 149
|
3eqtr2i |
|- ( P ` E ) = ( ( M - N ) / ( M + N ) ) |