Metamath Proof Explorer


Theorem irrapxlem1

Description: Lemma for irrapx1 . Divides the unit interval into B half-open sections and using the pigeonhole principle fphpdo finds two multiples of A in the same section mod 1. (Contributed by Stefan O'Rear, 12-Sep-2014)

Ref Expression
Assertion irrapxlem1 ⊢ A ∈ ℝ + ∧ B ∈ ℕ → ∃ x ∈ 0 … B ∃ y ∈ 0 … B x < y ∧ B ⁢ A ⁢ x mod 1 = B ⁢ A ⁢ y mod 1

Proof

Step Hyp Ref Expression
1 fzssuz ⊢ 0 … B ⊆ ℤ ≥ 0
2 uzssz ⊢ ℤ ≥ 0 ⊆ ℤ
3 zssre ⊢ ℤ ⊆ ℝ
4 2 3 sstri ⊢ ℤ ≥ 0 ⊆ ℝ
5 1 4 sstri ⊢ 0 … B ⊆ ℝ
6 5 a1i ⊢ A ∈ ℝ + ∧ B ∈ ℕ → 0 … B ⊆ ℝ
7 ovexd ⊢ A ∈ ℝ + ∧ B ∈ ℕ → 0 … B − 1 ∈ V
8 nnm1nn0 ⊢ B ∈ ℕ → B − 1 ∈ ℕ 0
9 8 adantl ⊢ A ∈ ℝ + ∧ B ∈ ℕ → B − 1 ∈ ℕ 0
10 nn0uz ⊢ ℕ 0 = ℤ ≥ 0
11 9 10 eleqtrdi ⊢ A ∈ ℝ + ∧ B ∈ ℕ → B − 1 ∈ ℤ ≥ 0
12 nnz ⊢ B ∈ ℕ → B ∈ ℤ
13 12 adantl ⊢ A ∈ ℝ + ∧ B ∈ ℕ → B ∈ ℤ
14 nnre ⊢ B ∈ ℕ → B ∈ ℝ
15 14 adantl ⊢ A ∈ ℝ + ∧ B ∈ ℕ → B ∈ ℝ
16 15 ltm1d ⊢ A ∈ ℝ + ∧ B ∈ ℕ → B − 1 < B
17 fzsdom2 ⊢ B − 1 ∈ ℤ ≥ 0 ∧ B ∈ ℤ ∧ B − 1 < B → 0 … B − 1 ≺ 0 … B
18 11 13 16 17 syl21anc ⊢ A ∈ ℝ + ∧ B ∈ ℕ → 0 … B − 1 ≺ 0 … B
19 14 ad2antlr ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ∈ ℝ
20 rpre ⊢ A ∈ ℝ + → A ∈ ℝ
21 20 ad2antrr ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → A ∈ ℝ
22 elfzelz ⊢ a ∈ 0 … B → a ∈ ℤ
23 22 zred ⊢ a ∈ 0 … B → a ∈ ℝ
24 23 adantl ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → a ∈ ℝ
25 21 24 remulcld ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → A ⁢ a ∈ ℝ
26 1rp ⊢ 1 ∈ ℝ +
27 modcl ⊢ A ⁢ a ∈ ℝ ∧ 1 ∈ ℝ + → A ⁢ a mod 1 ∈ ℝ
28 25 26 27 sylancl ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → A ⁢ a mod 1 ∈ ℝ
29 19 28 remulcld ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 ∈ ℝ
30 29 flcld ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 ∈ ℤ
31 19 recnd ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ∈ ℂ
32 31 mul01d ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⋅ 0 = 0
33 modge0 ⊢ A ⁢ a ∈ ℝ ∧ 1 ∈ ℝ + → 0 ≤ A ⁢ a mod 1
34 25 26 33 sylancl ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 0 ≤ A ⁢ a mod 1
35 0red ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 0 ∈ ℝ
36 nngt0 ⊢ B ∈ ℕ → 0 < B
37 36 ad2antlr ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 0 < B
38 lemul2 ⊢ 0 ∈ ℝ ∧ A ⁢ a mod 1 ∈ ℝ ∧ B ∈ ℝ ∧ 0 < B → 0 ≤ A ⁢ a mod 1 ↔ B ⋅ 0 ≤ B ⁢ A ⁢ a mod 1
39 35 28 19 37 38 syl112anc ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 0 ≤ A ⁢ a mod 1 ↔ B ⋅ 0 ≤ B ⁢ A ⁢ a mod 1
40 34 39 mpbid ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⋅ 0 ≤ B ⁢ A ⁢ a mod 1
41 32 40 eqbrtrrd ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 0 ≤ B ⁢ A ⁢ a mod 1
42 35 29 lenltd ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 0 ≤ B ⁢ A ⁢ a mod 1 ↔ ¬ B ⁢ A ⁢ a mod 1 < 0
43 41 42 mpbid ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → ¬ B ⁢ A ⁢ a mod 1 < 0
44 0z ⊢ 0 ∈ ℤ
45 fllt ⊢ B ⁢ A ⁢ a mod 1 ∈ ℝ ∧ 0 ∈ ℤ → B ⁢ A ⁢ a mod 1 < 0 ↔ B ⁢ A ⁢ a mod 1 < 0
46 29 44 45 sylancl ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 < 0 ↔ B ⁢ A ⁢ a mod 1 < 0
47 43 46 mtbid ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → ¬ B ⁢ A ⁢ a mod 1 < 0
48 30 zred ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 ∈ ℝ
49 35 48 lenltd ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 0 ≤ B ⁢ A ⁢ a mod 1 ↔ ¬ B ⁢ A ⁢ a mod 1 < 0
50 47 49 mpbird ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 0 ≤ B ⁢ A ⁢ a mod 1
51 elnn0z ⊢ B ⁢ A ⁢ a mod 1 ∈ ℕ 0 ↔ B ⁢ A ⁢ a mod 1 ∈ ℤ ∧ 0 ≤ B ⁢ A ⁢ a mod 1
52 30 50 51 sylanbrc ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 ∈ ℕ 0
53 8 ad2antlr ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B − 1 ∈ ℕ 0
54 flle ⊢ B ⁢ A ⁢ a mod 1 ∈ ℝ → B ⁢ A ⁢ a mod 1 ≤ B ⁢ A ⁢ a mod 1
55 29 54 syl ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 ≤ B ⁢ A ⁢ a mod 1
56 modlt ⊢ A ⁢ a ∈ ℝ ∧ 1 ∈ ℝ + → A ⁢ a mod 1 < 1
57 25 26 56 sylancl ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → A ⁢ a mod 1 < 1
58 1red ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → 1 ∈ ℝ
59 ltmul2 ⊢ A ⁢ a mod 1 ∈ ℝ ∧ 1 ∈ ℝ ∧ B ∈ ℝ ∧ 0 < B → A ⁢ a mod 1 < 1 ↔ B ⁢ A ⁢ a mod 1 < B ⋅ 1
60 28 58 19 37 59 syl112anc ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → A ⁢ a mod 1 < 1 ↔ B ⁢ A ⁢ a mod 1 < B ⋅ 1
61 57 60 mpbid ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 < B ⋅ 1
62 31 mulridd ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⋅ 1 = B
63 61 62 breqtrd ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 < B
64 48 29 19 55 63 lelttrd ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 < B
65 nncn ⊢ B ∈ ℕ → B ∈ ℂ
66 ax-1cn ⊢ 1 ∈ ℂ
67 npcan ⊢ B ∈ ℂ ∧ 1 ∈ ℂ → B - 1 + 1 = B
68 65 66 67 sylancl ⊢ B ∈ ℕ → B - 1 + 1 = B
69 68 ad2antlr ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B - 1 + 1 = B
70 64 69 breqtrrd ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 < B - 1 + 1
71 12 ad2antlr ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ∈ ℤ
72 1z ⊢ 1 ∈ ℤ
73 zsubcl ⊢ B ∈ ℤ ∧ 1 ∈ ℤ → B − 1 ∈ ℤ
74 71 72 73 sylancl ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B − 1 ∈ ℤ
75 zleltp1 ⊢ B ⁢ A ⁢ a mod 1 ∈ ℤ ∧ B − 1 ∈ ℤ → B ⁢ A ⁢ a mod 1 ≤ B − 1 ↔ B ⁢ A ⁢ a mod 1 < B - 1 + 1
76 30 74 75 syl2anc ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 ≤ B − 1 ↔ B ⁢ A ⁢ a mod 1 < B - 1 + 1
77 70 76 mpbird ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 ≤ B − 1
78 elfz2nn0 ⊢ B ⁢ A ⁢ a mod 1 ∈ 0 … B − 1 ↔ B ⁢ A ⁢ a mod 1 ∈ ℕ 0 ∧ B − 1 ∈ ℕ 0 ∧ B ⁢ A ⁢ a mod 1 ≤ B − 1
79 52 53 77 78 syl3anbrc ⊢ A ∈ ℝ + ∧ B ∈ ℕ ∧ a ∈ 0 … B → B ⁢ A ⁢ a mod 1 ∈ 0 … B − 1
80 oveq2 ⊢ a = x → A ⁢ a = A ⁢ x
81 80 oveq1d ⊢ a = x → A ⁢ a mod 1 = A ⁢ x mod 1
82 81 oveq2d ⊢ a = x → B ⁢ A ⁢ a mod 1 = B ⁢ A ⁢ x mod 1
83 82 fveq2d ⊢ a = x → B ⁢ A ⁢ a mod 1 = B ⁢ A ⁢ x mod 1
84 oveq2 ⊢ a = y → A ⁢ a = A ⁢ y
85 84 oveq1d ⊢ a = y → A ⁢ a mod 1 = A ⁢ y mod 1
86 85 oveq2d ⊢ a = y → B ⁢ A ⁢ a mod 1 = B ⁢ A ⁢ y mod 1
87 86 fveq2d ⊢ a = y → B ⁢ A ⁢ a mod 1 = B ⁢ A ⁢ y mod 1
88 6 7 18 79 83 87 fphpdo ⊢ A ∈ ℝ + ∧ B ∈ ℕ → ∃ x ∈ 0 … B ∃ y ∈ 0 … B x < y ∧ B ⁢ A ⁢ x mod 1 = B ⁢ A ⁢ y mod 1