Proof of Theorem ballotlemic
| Step | Hyp | Ref
| Expression |
| 1 | | ballotth.m |
. . 3
⊢ 𝑀 ∈ ℕ |
| 2 | | ballotth.n |
. . 3
⊢ 𝑁 ∈ ℕ |
| 3 | | ballotth.o |
. . 3
⊢ 𝑂 = {𝑐 ∈ 𝒫 (1...(𝑀 + 𝑁)) ∣ (♯‘𝑐) = 𝑀} |
| 4 | | ballotth.p |
. . 3
⊢ 𝑃 = (𝑥 ∈ 𝒫 𝑂 ↦ ((♯‘𝑥) / (♯‘𝑂))) |
| 5 | | ballotth.f |
. . 3
⊢ 𝐹 = (𝑐 ∈ 𝑂 ↦ (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝑐)) −
(♯‘((1...𝑖)
∖ 𝑐))))) |
| 6 | | eldifi 4131 |
. . . 4
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → 𝐶 ∈ 𝑂) |
| 7 | 6 | ad2antrr 726 |
. . 3
⊢ (((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 𝐶 ∈ 𝑂) |
| 8 | | ballotth.e |
. . . . . . . . . 10
⊢ 𝐸 = {𝑐 ∈ 𝑂 ∣ ∀𝑖 ∈ (1...(𝑀 + 𝑁))0 < ((𝐹‘𝑐)‘𝑖)} |
| 9 | | ballotth.mgtn |
. . . . . . . . . 10
⊢ 𝑁 < 𝑀 |
| 10 | | ballotth.i |
. . . . . . . . . 10
⊢ 𝐼 = (𝑐 ∈ (𝑂 ∖ 𝐸) ↦ inf({𝑘 ∈ (1...(𝑀 + 𝑁)) ∣ ((𝐹‘𝑐)‘𝑘) = 0}, ℝ, < )) |
| 11 | 1, 2, 3, 4, 5, 8, 9, 10 | ballotlemiex 34504 |
. . . . . . . . 9
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → ((𝐼‘𝐶) ∈ (1...(𝑀 + 𝑁)) ∧ ((𝐹‘𝐶)‘(𝐼‘𝐶)) = 0)) |
| 12 | 11 | simpld 494 |
. . . . . . . 8
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → (𝐼‘𝐶) ∈ (1...(𝑀 + 𝑁))) |
| 13 | | elfznn 13593 |
. . . . . . . 8
⊢ ((𝐼‘𝐶) ∈ (1...(𝑀 + 𝑁)) → (𝐼‘𝐶) ∈ ℕ) |
| 14 | 12, 13 | syl 17 |
. . . . . . 7
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → (𝐼‘𝐶) ∈ ℕ) |
| 15 | 14 | adantr 480 |
. . . . . 6
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → (𝐼‘𝐶) ∈ ℕ) |
| 16 | 1, 2, 3, 4, 5, 8, 9, 10 | ballotlemi1 34505 |
. . . . . 6
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → (𝐼‘𝐶) ≠ 1) |
| 17 | | eluz2b3 12964 |
. . . . . 6
⊢ ((𝐼‘𝐶) ∈ (ℤ≥‘2)
↔ ((𝐼‘𝐶) ∈ ℕ ∧ (𝐼‘𝐶) ≠ 1)) |
| 18 | 15, 16, 17 | sylanbrc 583 |
. . . . 5
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → (𝐼‘𝐶) ∈
(ℤ≥‘2)) |
| 19 | | uz2m1nn 12965 |
. . . . 5
⊢ ((𝐼‘𝐶) ∈ (ℤ≥‘2)
→ ((𝐼‘𝐶) − 1) ∈
ℕ) |
| 20 | 18, 19 | syl 17 |
. . . 4
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → ((𝐼‘𝐶) − 1) ∈
ℕ) |
| 21 | 20 | adantr 480 |
. . 3
⊢ (((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ((𝐼‘𝐶) − 1) ∈
ℕ) |
| 22 | | elnnuz 12922 |
. . . . . . 7
⊢ (((𝐼‘𝐶) − 1) ∈ ℕ ↔ ((𝐼‘𝐶) − 1) ∈
(ℤ≥‘1)) |
| 23 | 22 | biimpi 216 |
. . . . . 6
⊢ (((𝐼‘𝐶) − 1) ∈ ℕ → ((𝐼‘𝐶) − 1) ∈
(ℤ≥‘1)) |
| 24 | | eluzfz1 13571 |
. . . . . 6
⊢ (((𝐼‘𝐶) − 1) ∈
(ℤ≥‘1) → 1 ∈ (1...((𝐼‘𝐶) − 1))) |
| 25 | 20, 23, 24 | 3syl 18 |
. . . . 5
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → 1 ∈ (1...((𝐼‘𝐶) − 1))) |
| 26 | 25 | adantr 480 |
. . . 4
⊢ (((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 1 ∈ (1...((𝐼‘𝐶) − 1))) |
| 27 | | 1nn 12277 |
. . . . . . . . . . 11
⊢ 1 ∈
ℕ |
| 28 | 27 | a1i 11 |
. . . . . . . . . 10
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → 1 ∈ ℕ) |
| 29 | 1, 2, 3, 4, 5, 6, 28 | ballotlemfp1 34494 |
. . . . . . . . 9
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → ((¬ 1 ∈ 𝐶 → ((𝐹‘𝐶)‘1) = (((𝐹‘𝐶)‘(1 − 1)) − 1)) ∧ (1
∈ 𝐶 → ((𝐹‘𝐶)‘1) = (((𝐹‘𝐶)‘(1 − 1)) +
1)))) |
| 30 | 29 | simpld 494 |
. . . . . . . 8
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → (¬ 1 ∈ 𝐶 → ((𝐹‘𝐶)‘1) = (((𝐹‘𝐶)‘(1 − 1)) −
1))) |
| 31 | 30 | imp 406 |
. . . . . . 7
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → ((𝐹‘𝐶)‘1) = (((𝐹‘𝐶)‘(1 − 1)) −
1)) |
| 32 | | 1m1e0 12338 |
. . . . . . . . . 10
⊢ (1
− 1) = 0 |
| 33 | 32 | fveq2i 6909 |
. . . . . . . . 9
⊢ ((𝐹‘𝐶)‘(1 − 1)) = ((𝐹‘𝐶)‘0) |
| 34 | 33 | oveq1i 7441 |
. . . . . . . 8
⊢ (((𝐹‘𝐶)‘(1 − 1)) − 1) = (((𝐹‘𝐶)‘0) − 1) |
| 35 | 34 | a1i 11 |
. . . . . . 7
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → (((𝐹‘𝐶)‘(1 − 1)) − 1) = (((𝐹‘𝐶)‘0) − 1)) |
| 36 | 1, 2, 3, 4, 5 | ballotlemfval0 34498 |
. . . . . . . . . 10
⊢ (𝐶 ∈ 𝑂 → ((𝐹‘𝐶)‘0) = 0) |
| 37 | 6, 36 | syl 17 |
. . . . . . . . 9
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → ((𝐹‘𝐶)‘0) = 0) |
| 38 | 37 | adantr 480 |
. . . . . . . 8
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → ((𝐹‘𝐶)‘0) = 0) |
| 39 | 38 | oveq1d 7446 |
. . . . . . 7
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → (((𝐹‘𝐶)‘0) − 1) = (0 −
1)) |
| 40 | 31, 35, 39 | 3eqtrrd 2782 |
. . . . . 6
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → (0 − 1) = ((𝐹‘𝐶)‘1)) |
| 41 | | 0le1 11786 |
. . . . . . 7
⊢ 0 ≤
1 |
| 42 | | 0re 11263 |
. . . . . . . 8
⊢ 0 ∈
ℝ |
| 43 | | 1re 11261 |
. . . . . . . 8
⊢ 1 ∈
ℝ |
| 44 | | suble0 11777 |
. . . . . . . 8
⊢ ((0
∈ ℝ ∧ 1 ∈ ℝ) → ((0 − 1) ≤ 0 ↔ 0
≤ 1)) |
| 45 | 42, 43, 44 | mp2an 692 |
. . . . . . 7
⊢ ((0
− 1) ≤ 0 ↔ 0 ≤ 1) |
| 46 | 41, 45 | mpbir 231 |
. . . . . 6
⊢ (0
− 1) ≤ 0 |
| 47 | 40, 46 | eqbrtrrdi 5183 |
. . . . 5
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → ((𝐹‘𝐶)‘1) ≤ 0) |
| 48 | 47 | adantr 480 |
. . . 4
⊢ (((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ((𝐹‘𝐶)‘1) ≤ 0) |
| 49 | | fveq2 6906 |
. . . . . 6
⊢ (𝑖 = 1 → ((𝐹‘𝐶)‘𝑖) = ((𝐹‘𝐶)‘1)) |
| 50 | 49 | breq1d 5153 |
. . . . 5
⊢ (𝑖 = 1 → (((𝐹‘𝐶)‘𝑖) ≤ 0 ↔ ((𝐹‘𝐶)‘1) ≤ 0)) |
| 51 | 50 | rspcev 3622 |
. . . 4
⊢ ((1
∈ (1...((𝐼‘𝐶) − 1)) ∧ ((𝐹‘𝐶)‘1) ≤ 0) → ∃𝑖 ∈ (1...((𝐼‘𝐶) − 1))((𝐹‘𝐶)‘𝑖) ≤ 0) |
| 52 | 26, 48, 51 | syl2anc 584 |
. . 3
⊢ (((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ∃𝑖 ∈ (1...((𝐼‘𝐶) − 1))((𝐹‘𝐶)‘𝑖) ≤ 0) |
| 53 | | 0lt1 11785 |
. . . . 5
⊢ 0 <
1 |
| 54 | | 1p0e1 12390 |
. . . . . 6
⊢ (1 + 0) =
1 |
| 55 | 1, 2, 3, 4, 5, 6, 14 | ballotlemfp1 34494 |
. . . . . . . . . 10
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → ((¬ (𝐼‘𝐶) ∈ 𝐶 → ((𝐹‘𝐶)‘(𝐼‘𝐶)) = (((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)) − 1)) ∧ ((𝐼‘𝐶) ∈ 𝐶 → ((𝐹‘𝐶)‘(𝐼‘𝐶)) = (((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)) + 1)))) |
| 56 | 55 | simpld 494 |
. . . . . . . . 9
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → (¬ (𝐼‘𝐶) ∈ 𝐶 → ((𝐹‘𝐶)‘(𝐼‘𝐶)) = (((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)) − 1))) |
| 57 | 56 | imp 406 |
. . . . . . . 8
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ((𝐹‘𝐶)‘(𝐼‘𝐶)) = (((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)) − 1)) |
| 58 | 11 | simprd 495 |
. . . . . . . . 9
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → ((𝐹‘𝐶)‘(𝐼‘𝐶)) = 0) |
| 59 | 58 | adantr 480 |
. . . . . . . 8
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ((𝐹‘𝐶)‘(𝐼‘𝐶)) = 0) |
| 60 | 57, 59 | eqtr3d 2779 |
. . . . . . 7
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → (((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)) − 1) =
0) |
| 61 | 6 | adantr 480 |
. . . . . . . . . 10
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 𝐶 ∈ 𝑂) |
| 62 | 14 | nnzd 12640 |
. . . . . . . . . . . 12
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → (𝐼‘𝐶) ∈ ℤ) |
| 63 | 62 | adantr 480 |
. . . . . . . . . . 11
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → (𝐼‘𝐶) ∈ ℤ) |
| 64 | | 1zzd 12648 |
. . . . . . . . . . 11
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 1 ∈ ℤ) |
| 65 | 63, 64 | zsubcld 12727 |
. . . . . . . . . 10
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ((𝐼‘𝐶) − 1) ∈
ℤ) |
| 66 | 1, 2, 3, 4, 5, 61,
65 | ballotlemfelz 34493 |
. . . . . . . . 9
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)) ∈
ℤ) |
| 67 | 66 | zcnd 12723 |
. . . . . . . 8
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)) ∈
ℂ) |
| 68 | | 1cnd 11256 |
. . . . . . . 8
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 1 ∈ ℂ) |
| 69 | | 0cnd 11254 |
. . . . . . . 8
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 0 ∈ ℂ) |
| 70 | 67, 68, 69 | subaddd 11638 |
. . . . . . 7
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ((((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)) − 1) = 0 ↔ (1 + 0)
= ((𝐹‘𝐶)‘((𝐼‘𝐶) − 1)))) |
| 71 | 60, 70 | mpbid 232 |
. . . . . 6
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → (1 + 0) = ((𝐹‘𝐶)‘((𝐼‘𝐶) − 1))) |
| 72 | 54, 71 | eqtr3id 2791 |
. . . . 5
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 1 = ((𝐹‘𝐶)‘((𝐼‘𝐶) − 1))) |
| 73 | 53, 72 | breqtrid 5180 |
. . . 4
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 0 < ((𝐹‘𝐶)‘((𝐼‘𝐶) − 1))) |
| 74 | 73 | adantlr 715 |
. . 3
⊢ (((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → 0 < ((𝐹‘𝐶)‘((𝐼‘𝐶) − 1))) |
| 75 | 1, 2, 3, 4, 5, 7, 21, 52, 74 | ballotlemfc0 34495 |
. 2
⊢ (((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ∃𝑘 ∈ (1...((𝐼‘𝐶) − 1))((𝐹‘𝐶)‘𝑘) = 0) |
| 76 | 1, 2, 3, 4, 5, 8, 9, 10 | ballotlemimin 34508 |
. . 3
⊢ (𝐶 ∈ (𝑂 ∖ 𝐸) → ¬ ∃𝑘 ∈ (1...((𝐼‘𝐶) − 1))((𝐹‘𝐶)‘𝑘) = 0) |
| 77 | 76 | ad2antrr 726 |
. 2
⊢ (((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) ∧ ¬ (𝐼‘𝐶) ∈ 𝐶) → ¬ ∃𝑘 ∈ (1...((𝐼‘𝐶) − 1))((𝐹‘𝐶)‘𝑘) = 0) |
| 78 | 75, 77 | condan 818 |
1
⊢ ((𝐶 ∈ (𝑂 ∖ 𝐸) ∧ ¬ 1 ∈ 𝐶) → (𝐼‘𝐶) ∈ 𝐶) |