Metamath Proof Explorer


Theorem ballotlemsel1i

Description: The range ( 1 ... ( IC ) ) is invariant under ( SC ) . (Contributed by Thierry Arnoux, 28-Apr-2017)

Ref Expression
Hypotheses ballotth.m ⊢ M ∈ ℕ
ballotth.n ⊢ N ∈ ℕ
ballotth.o ⊢ O = c ∈ 𝒫 1 … M + N | c = M
ballotth.p ⊢ P = x ∈ 𝒫 O ⟼ x O
ballotth.f ⊢ F = c ∈ O ⟼ i ∈ ℤ ⟼ 1 … i ∩ c − 1 … i ∖ c
ballotth.e ⊢ E = c ∈ O | ∀ i ∈ 1 … M + N 0 < F ⁡ c ⁡ i
ballotth.mgtn ⊢ N < M
ballotth.i ⊢ I = c ∈ O ∖ E ⟼ inf k ∈ 1 … M + N | F ⁡ c ⁡ k = 0 ℝ <
ballotth.s ⊢ S = c ∈ O ∖ E ⟼ i ∈ 1 … M + N ⟼ if i ≤ I ⁡ c I ⁡ c + 1 - i i
Assertion ballotlemsel1i ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → S ⁡ C ⁡ J ∈ 1 … I ⁡ C

Proof

Step Hyp Ref Expression
1 ballotth.m ⊢ M ∈ ℕ
2 ballotth.n ⊢ N ∈ ℕ
3 ballotth.o ⊢ O = c ∈ 𝒫 1 … M + N | c = M
4 ballotth.p ⊢ P = x ∈ 𝒫 O ⟼ x O
5 ballotth.f ⊢ F = c ∈ O ⟼ i ∈ ℤ ⟼ 1 … i ∩ c − 1 … i ∖ c
6 ballotth.e ⊢ E = c ∈ O | ∀ i ∈ 1 … M + N 0 < F ⁡ c ⁡ i
7 ballotth.mgtn ⊢ N < M
8 ballotth.i ⊢ I = c ∈ O ∖ E ⟼ inf k ∈ 1 … M + N | F ⁡ c ⁡ k = 0 ℝ <
9 ballotth.s ⊢ S = c ∈ O ∖ E ⟼ i ∈ 1 … M + N ⟼ if i ≤ I ⁡ c I ⁡ c + 1 - i i
10 1zzd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → 1 ∈ ℤ
11 1 2 3 4 5 6 7 8 ballotlemiex ⊢ C ∈ O ∖ E → I ⁡ C ∈ 1 … M + N ∧ F ⁡ C ⁡ I ⁡ C = 0
12 11 simpld ⊢ C ∈ O ∖ E → I ⁡ C ∈ 1 … M + N
13 12 elfzelzd ⊢ C ∈ O ∖ E → I ⁡ C ∈ ℤ
14 13 adantr ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → I ⁡ C ∈ ℤ
15 nnaddcl ⊢ M ∈ ℕ ∧ N ∈ ℕ → M + N ∈ ℕ
16 1 2 15 mp2an ⊢ M + N ∈ ℕ
17 16 nnzi ⊢ M + N ∈ ℤ
18 17 a1i ⊢ C ∈ O ∖ E → M + N ∈ ℤ
19 elfzle2 ⊢ I ⁡ C ∈ 1 … M + N → I ⁡ C ≤ M + N
20 12 19 syl ⊢ C ∈ O ∖ E → I ⁡ C ≤ M + N
21 eluz2 ⊢ M + N ∈ ℤ ≥ I ⁡ C ↔ I ⁡ C ∈ ℤ ∧ M + N ∈ ℤ ∧ I ⁡ C ≤ M + N
22 13 18 20 21 syl3anbrc ⊢ C ∈ O ∖ E → M + N ∈ ℤ ≥ I ⁡ C
23 fzss2 ⊢ M + N ∈ ℤ ≥ I ⁡ C → 1 … I ⁡ C ⊆ 1 … M + N
24 22 23 syl ⊢ C ∈ O ∖ E → 1 … I ⁡ C ⊆ 1 … M + N
25 24 sselda ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → J ∈ 1 … M + N
26 1 2 3 4 5 6 7 8 9 ballotlemsdom ⊢ C ∈ O ∖ E ∧ J ∈ 1 … M + N → S ⁡ C ⁡ J ∈ 1 … M + N
27 25 26 syldan ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → S ⁡ C ⁡ J ∈ 1 … M + N
28 27 elfzelzd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → S ⁡ C ⁡ J ∈ ℤ
29 elfzelz ⊢ J ∈ 1 … I ⁡ C → J ∈ ℤ
30 29 adantl ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → J ∈ ℤ
31 30 zred ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → J ∈ ℝ
32 14 zred ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → I ⁡ C ∈ ℝ
33 1red ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → 1 ∈ ℝ
34 32 33 readdcld ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → I ⁡ C + 1 ∈ ℝ
35 elfzle2 ⊢ J ∈ 1 … I ⁡ C → J ≤ I ⁡ C
36 35 adantl ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → J ≤ I ⁡ C
37 14 zcnd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → I ⁡ C ∈ ℂ
38 1cnd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → 1 ∈ ℂ
39 37 38 pncand ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → I ⁡ C + 1 - 1 = I ⁡ C
40 36 39 breqtrrd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → J ≤ I ⁡ C + 1 - 1
41 31 34 33 40 lesubd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → 1 ≤ I ⁡ C + 1 - J
42 1 2 3 4 5 6 7 8 9 ballotlemsv ⊢ C ∈ O ∖ E ∧ J ∈ 1 … M + N → S ⁡ C ⁡ J = if J ≤ I ⁡ C I ⁡ C + 1 - J J
43 25 42 syldan ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → S ⁡ C ⁡ J = if J ≤ I ⁡ C I ⁡ C + 1 - J J
44 36 iftrued ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → if J ≤ I ⁡ C I ⁡ C + 1 - J J = I ⁡ C + 1 - J
45 43 44 eqtrd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → S ⁡ C ⁡ J = I ⁡ C + 1 - J
46 41 45 breqtrrd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → 1 ≤ S ⁡ C ⁡ J
47 13 adantr ⊢ C ∈ O ∖ E ∧ J ∈ 1 … M + N → I ⁡ C ∈ ℤ
48 elfznn ⊢ J ∈ 1 … M + N → J ∈ ℕ
49 48 adantl ⊢ C ∈ O ∖ E ∧ J ∈ 1 … M + N → J ∈ ℕ
50 47 49 ltesubnnd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … M + N → I ⁡ C + 1 - J ≤ I ⁡ C
51 25 50 syldan ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → I ⁡ C + 1 - J ≤ I ⁡ C
52 45 51 eqbrtrd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → S ⁡ C ⁡ J ≤ I ⁡ C
53 10 14 28 46 52 elfzd ⊢ C ∈ O ∖ E ∧ J ∈ 1 … I ⁡ C → S ⁡ C ⁡ J ∈ 1 … I ⁡ C