| Step | Hyp | Ref
| Expression |
| 1 | | ballotlemfval.c |
. . 3
⊢ (𝜑 → 𝐶 ∈ 𝑂) |
| 2 | | simpl 109 |
. . . . . . . 8
⊢ ((𝑏 = 𝐶 ∧ 𝑖 ∈ ℤ) → 𝑏 = 𝐶) |
| 3 | 2 | ineq2d 3424 |
. . . . . . 7
⊢ ((𝑏 = 𝐶 ∧ 𝑖 ∈ ℤ) → ((1...𝑖) ∩ 𝑏) = ((1...𝑖) ∩ 𝐶)) |
| 4 | 3 | fveq2d 5676 |
. . . . . 6
⊢ ((𝑏 = 𝐶 ∧ 𝑖 ∈ ℤ) →
(♯‘((1...𝑖)
∩ 𝑏)) =
(♯‘((1...𝑖)
∩ 𝐶))) |
| 5 | 2 | difeq2d 3339 |
. . . . . . 7
⊢ ((𝑏 = 𝐶 ∧ 𝑖 ∈ ℤ) → ((1...𝑖) ∖ 𝑏) = ((1...𝑖) ∖ 𝐶)) |
| 6 | 5 | fveq2d 5676 |
. . . . . 6
⊢ ((𝑏 = 𝐶 ∧ 𝑖 ∈ ℤ) →
(♯‘((1...𝑖)
∖ 𝑏)) =
(♯‘((1...𝑖)
∖ 𝐶))) |
| 7 | 4, 6 | oveq12d 6070 |
. . . . 5
⊢ ((𝑏 = 𝐶 ∧ 𝑖 ∈ ℤ) →
((♯‘((1...𝑖)
∩ 𝑏)) −
(♯‘((1...𝑖)
∖ 𝑏))) =
((♯‘((1...𝑖)
∩ 𝐶)) −
(♯‘((1...𝑖)
∖ 𝐶)))) |
| 8 | 7 | mpteq2dva 4202 |
. . . 4
⊢ (𝑏 = 𝐶 → (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝑏)) −
(♯‘((1...𝑖)
∖ 𝑏)))) = (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝐶)) −
(♯‘((1...𝑖)
∖ 𝐶))))) |
| 9 | | ballotth.f |
. . . . 5
⊢ 𝐹 = (𝑐 ∈ 𝑂 ↦ (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝑐)) −
(♯‘((1...𝑖)
∖ 𝑐))))) |
| 10 | | ineq2 3418 |
. . . . . . . . 9
⊢ (𝑏 = 𝑐 → ((1...𝑖) ∩ 𝑏) = ((1...𝑖) ∩ 𝑐)) |
| 11 | 10 | fveq2d 5676 |
. . . . . . . 8
⊢ (𝑏 = 𝑐 → (♯‘((1...𝑖) ∩ 𝑏)) = (♯‘((1...𝑖) ∩ 𝑐))) |
| 12 | | difeq2 3333 |
. . . . . . . . 9
⊢ (𝑏 = 𝑐 → ((1...𝑖) ∖ 𝑏) = ((1...𝑖) ∖ 𝑐)) |
| 13 | 12 | fveq2d 5676 |
. . . . . . . 8
⊢ (𝑏 = 𝑐 → (♯‘((1...𝑖) ∖ 𝑏)) = (♯‘((1...𝑖) ∖ 𝑐))) |
| 14 | 11, 13 | oveq12d 6070 |
. . . . . . 7
⊢ (𝑏 = 𝑐 → ((♯‘((1...𝑖) ∩ 𝑏)) − (♯‘((1...𝑖) ∖ 𝑏))) = ((♯‘((1...𝑖) ∩ 𝑐)) − (♯‘((1...𝑖) ∖ 𝑐)))) |
| 15 | 14 | mpteq2dv 4203 |
. . . . . 6
⊢ (𝑏 = 𝑐 → (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝑏)) −
(♯‘((1...𝑖)
∖ 𝑏)))) = (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝑐)) −
(♯‘((1...𝑖)
∖ 𝑐))))) |
| 16 | 15 | cbvmptv 4208 |
. . . . 5
⊢ (𝑏 ∈ 𝑂 ↦ (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝑏)) −
(♯‘((1...𝑖)
∖ 𝑏))))) = (𝑐 ∈ 𝑂 ↦ (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝑐)) −
(♯‘((1...𝑖)
∖ 𝑐))))) |
| 17 | 9, 16 | eqtr4i 2258 |
. . . 4
⊢ 𝐹 = (𝑏 ∈ 𝑂 ↦ (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝑏)) −
(♯‘((1...𝑖)
∖ 𝑏))))) |
| 18 | | zex 9588 |
. . . . 5
⊢ ℤ
∈ V |
| 19 | 18 | mptex 5914 |
. . . 4
⊢ (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝐶)) −
(♯‘((1...𝑖)
∖ 𝐶)))) ∈
V |
| 20 | 8, 17, 19 | fvmpt 5756 |
. . 3
⊢ (𝐶 ∈ 𝑂 → (𝐹‘𝐶) = (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝐶)) −
(♯‘((1...𝑖)
∖ 𝐶))))) |
| 21 | 1, 20 | syl 14 |
. 2
⊢ (𝜑 → (𝐹‘𝐶) = (𝑖 ∈ ℤ ↦
((♯‘((1...𝑖)
∩ 𝐶)) −
(♯‘((1...𝑖)
∖ 𝐶))))) |
| 22 | | oveq2 6060 |
. . . . . 6
⊢ (𝑖 = 𝐽 → (1...𝑖) = (1...𝐽)) |
| 23 | 22 | ineq1d 3423 |
. . . . 5
⊢ (𝑖 = 𝐽 → ((1...𝑖) ∩ 𝐶) = ((1...𝐽) ∩ 𝐶)) |
| 24 | 23 | fveq2d 5676 |
. . . 4
⊢ (𝑖 = 𝐽 → (♯‘((1...𝑖) ∩ 𝐶)) = (♯‘((1...𝐽) ∩ 𝐶))) |
| 25 | 22 | difeq1d 3338 |
. . . . 5
⊢ (𝑖 = 𝐽 → ((1...𝑖) ∖ 𝐶) = ((1...𝐽) ∖ 𝐶)) |
| 26 | 25 | fveq2d 5676 |
. . . 4
⊢ (𝑖 = 𝐽 → (♯‘((1...𝑖) ∖ 𝐶)) = (♯‘((1...𝐽) ∖ 𝐶))) |
| 27 | 24, 26 | oveq12d 6070 |
. . 3
⊢ (𝑖 = 𝐽 → ((♯‘((1...𝑖) ∩ 𝐶)) − (♯‘((1...𝑖) ∖ 𝐶))) = ((♯‘((1...𝐽) ∩ 𝐶)) − (♯‘((1...𝐽) ∖ 𝐶)))) |
| 28 | 27 | adantl 277 |
. 2
⊢ ((𝜑 ∧ 𝑖 = 𝐽) → ((♯‘((1...𝑖) ∩ 𝐶)) − (♯‘((1...𝑖) ∖ 𝐶))) = ((♯‘((1...𝐽) ∩ 𝐶)) − (♯‘((1...𝐽) ∖ 𝐶)))) |
| 29 | | ballotlemfval.j |
. 2
⊢ (𝜑 → 𝐽 ∈ ℤ) |
| 30 | | ballotth.m |
. . . . . 6
⊢ 𝑀 ∈ ℕ |
| 31 | | ballotth.n |
. . . . . 6
⊢ 𝑁 ∈ ℕ |
| 32 | | ballotfi.o |
. . . . . 6
⊢ 𝑂 = {𝑐 ∈ (𝒫 (1...(𝑀 + 𝑁)) ∩ Fin) ∣ (♯‘𝑐) = 𝑀} |
| 33 | 30, 31, 32, 1, 29 | ballotfilemcinfi 13147 |
. . . . 5
⊢ (𝜑 → ((1...𝐽) ∩ 𝐶) ∈ Fin) |
| 34 | | hashcl 11148 |
. . . . 5
⊢
(((1...𝐽) ∩
𝐶) ∈ Fin →
(♯‘((1...𝐽)
∩ 𝐶)) ∈
ℕ0) |
| 35 | 33, 34 | syl 14 |
. . . 4
⊢ (𝜑 → (♯‘((1...𝐽) ∩ 𝐶)) ∈
ℕ0) |
| 36 | 35 | nn0zd 9701 |
. . 3
⊢ (𝜑 → (♯‘((1...𝐽) ∩ 𝐶)) ∈ ℤ) |
| 37 | 30, 31, 32, 1, 29 | ballotfilemdifcfi 13148 |
. . . . 5
⊢ (𝜑 → ((1...𝐽) ∖ 𝐶) ∈ Fin) |
| 38 | | hashcl 11148 |
. . . . 5
⊢
(((1...𝐽) ∖
𝐶) ∈ Fin →
(♯‘((1...𝐽)
∖ 𝐶)) ∈
ℕ0) |
| 39 | 37, 38 | syl 14 |
. . . 4
⊢ (𝜑 → (♯‘((1...𝐽) ∖ 𝐶)) ∈
ℕ0) |
| 40 | 39 | nn0zd 9701 |
. . 3
⊢ (𝜑 → (♯‘((1...𝐽) ∖ 𝐶)) ∈ ℤ) |
| 41 | 36, 40 | zsubcld 9708 |
. 2
⊢ (𝜑 →
((♯‘((1...𝐽)
∩ 𝐶)) −
(♯‘((1...𝐽)
∖ 𝐶))) ∈
ℤ) |
| 42 | 21, 28, 29, 41 | fvmptd 5760 |
1
⊢ (𝜑 → ((𝐹‘𝐶)‘𝐽) = ((♯‘((1...𝐽) ∩ 𝐶)) − (♯‘((1...𝐽) ∖ 𝐶)))) |