Users' Mathboxes Mathbox for Stefan O'Rear < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  irrapxlem1 Structured version   Visualization version   GIF version

Theorem irrapxlem1 37703
Description: Lemma for irrapx1 37709. Divides the unit interval into 𝐵 half-open sections and using the pigeonhole principle fphpdo 37698 finds two multiples of 𝐴 in the same section mod 1. (Contributed by Stefan O'Rear, 12-Sep-2014.)
Assertion
Ref Expression
irrapxlem1 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → ∃𝑥 ∈ (0...𝐵)∃𝑦 ∈ (0...𝐵)(𝑥 < 𝑦 ∧ (⌊‘(𝐵 · ((𝐴 · 𝑥) mod 1))) = (⌊‘(𝐵 · ((𝐴 · 𝑦) mod 1)))))
Distinct variable groups:   𝑥,𝐴,𝑦   𝑥,𝐵,𝑦

Proof of Theorem irrapxlem1
Dummy variable 𝑎 is distinct from all other variables.
StepHypRef Expression
1 fzssuz 12420 . . . 4 (0...𝐵) ⊆ (ℤ‘0)
2 uzssz 11745 . . . . 5 (ℤ‘0) ⊆ ℤ
3 zssre 11422 . . . . 5 ℤ ⊆ ℝ
42, 3sstri 3645 . . . 4 (ℤ‘0) ⊆ ℝ
51, 4sstri 3645 . . 3 (0...𝐵) ⊆ ℝ
65a1i 11 . 2 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (0...𝐵) ⊆ ℝ)
7 ovexd 6720 . 2 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (0...(𝐵 − 1)) ∈ V)
8 nnm1nn0 11372 . . . . 5 (𝐵 ∈ ℕ → (𝐵 − 1) ∈ ℕ0)
98adantl 481 . . . 4 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (𝐵 − 1) ∈ ℕ0)
10 nn0uz 11760 . . . 4 0 = (ℤ‘0)
119, 10syl6eleq 2740 . . 3 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (𝐵 − 1) ∈ (ℤ‘0))
12 nnz 11437 . . . 4 (𝐵 ∈ ℕ → 𝐵 ∈ ℤ)
1312adantl 481 . . 3 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → 𝐵 ∈ ℤ)
14 nnre 11065 . . . . 5 (𝐵 ∈ ℕ → 𝐵 ∈ ℝ)
1514adantl 481 . . . 4 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → 𝐵 ∈ ℝ)
1615ltm1d 10994 . . 3 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (𝐵 − 1) < 𝐵)
17 fzsdom2 13253 . . 3 ((((𝐵 − 1) ∈ (ℤ‘0) ∧ 𝐵 ∈ ℤ) ∧ (𝐵 − 1) < 𝐵) → (0...(𝐵 − 1)) ≺ (0...𝐵))
1811, 13, 16, 17syl21anc 1365 . 2 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (0...(𝐵 − 1)) ≺ (0...𝐵))
1914ad2antlr 763 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝐵 ∈ ℝ)
20 rpre 11877 . . . . . . . . 9 (𝐴 ∈ ℝ+𝐴 ∈ ℝ)
2120ad2antrr 762 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝐴 ∈ ℝ)
22 elfzelz 12380 . . . . . . . . . 10 (𝑎 ∈ (0...𝐵) → 𝑎 ∈ ℤ)
2322zred 11520 . . . . . . . . 9 (𝑎 ∈ (0...𝐵) → 𝑎 ∈ ℝ)
2423adantl 481 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝑎 ∈ ℝ)
2521, 24remulcld 10108 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐴 · 𝑎) ∈ ℝ)
26 1rp 11874 . . . . . . 7 1 ∈ ℝ+
27 modcl 12712 . . . . . . 7 (((𝐴 · 𝑎) ∈ ℝ ∧ 1 ∈ ℝ+) → ((𝐴 · 𝑎) mod 1) ∈ ℝ)
2825, 26, 27sylancl 695 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((𝐴 · 𝑎) mod 1) ∈ ℝ)
2919, 28remulcld 10108 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · ((𝐴 · 𝑎) mod 1)) ∈ ℝ)
3029flcld 12639 . . . 4 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℤ)
3119recnd 10106 . . . . . . . . 9 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝐵 ∈ ℂ)
3231mul01d 10273 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · 0) = 0)
33 modge0 12718 . . . . . . . . . 10 (((𝐴 · 𝑎) ∈ ℝ ∧ 1 ∈ ℝ+) → 0 ≤ ((𝐴 · 𝑎) mod 1))
3425, 26, 33sylancl 695 . . . . . . . . 9 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 ≤ ((𝐴 · 𝑎) mod 1))
35 0red 10079 . . . . . . . . . 10 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 ∈ ℝ)
36 nngt0 11087 . . . . . . . . . . 11 (𝐵 ∈ ℕ → 0 < 𝐵)
3736ad2antlr 763 . . . . . . . . . 10 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 < 𝐵)
38 lemul2 10914 . . . . . . . . . 10 ((0 ∈ ℝ ∧ ((𝐴 · 𝑎) mod 1) ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → (0 ≤ ((𝐴 · 𝑎) mod 1) ↔ (𝐵 · 0) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1))))
3935, 28, 19, 37, 38syl112anc 1370 . . . . . . . . 9 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (0 ≤ ((𝐴 · 𝑎) mod 1) ↔ (𝐵 · 0) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1))))
4034, 39mpbid 222 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · 0) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)))
4132, 40eqbrtrrd 4709 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)))
4235, 29lenltd 10221 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (0 ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)) ↔ ¬ (𝐵 · ((𝐴 · 𝑎) mod 1)) < 0))
4341, 42mpbid 222 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ¬ (𝐵 · ((𝐴 · 𝑎) mod 1)) < 0)
44 0z 11426 . . . . . . 7 0 ∈ ℤ
45 fllt 12647 . . . . . . 7 (((𝐵 · ((𝐴 · 𝑎) mod 1)) ∈ ℝ ∧ 0 ∈ ℤ) → ((𝐵 · ((𝐴 · 𝑎) mod 1)) < 0 ↔ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 0))
4629, 44, 45sylancl 695 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((𝐵 · ((𝐴 · 𝑎) mod 1)) < 0 ↔ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 0))
4743, 46mtbid 313 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ¬ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 0)
4830zred 11520 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℝ)
4935, 48lenltd 10221 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (0 ≤ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ↔ ¬ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 0))
5047, 49mpbird 247 . . . 4 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 ≤ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))))
51 elnn0z 11428 . . . 4 ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℕ0 ↔ ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℤ ∧ 0 ≤ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1)))))
5230, 50, 51sylanbrc 699 . . 3 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℕ0)
538ad2antlr 763 . . 3 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 − 1) ∈ ℕ0)
54 flle 12640 . . . . . . 7 ((𝐵 · ((𝐴 · 𝑎) mod 1)) ∈ ℝ → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)))
5529, 54syl 17 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)))
56 modlt 12719 . . . . . . . . 9 (((𝐴 · 𝑎) ∈ ℝ ∧ 1 ∈ ℝ+) → ((𝐴 · 𝑎) mod 1) < 1)
5725, 26, 56sylancl 695 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((𝐴 · 𝑎) mod 1) < 1)
58 1red 10093 . . . . . . . . 9 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 1 ∈ ℝ)
59 ltmul2 10912 . . . . . . . . 9 ((((𝐴 · 𝑎) mod 1) ∈ ℝ ∧ 1 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → (((𝐴 · 𝑎) mod 1) < 1 ↔ (𝐵 · ((𝐴 · 𝑎) mod 1)) < (𝐵 · 1)))
6028, 58, 19, 37, 59syl112anc 1370 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (((𝐴 · 𝑎) mod 1) < 1 ↔ (𝐵 · ((𝐴 · 𝑎) mod 1)) < (𝐵 · 1)))
6157, 60mpbid 222 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · ((𝐴 · 𝑎) mod 1)) < (𝐵 · 1))
6231mulid1d 10095 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · 1) = 𝐵)
6361, 62breqtrd 4711 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · ((𝐴 · 𝑎) mod 1)) < 𝐵)
6448, 29, 19, 55, 63lelttrd 10233 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 𝐵)
65 nncn 11066 . . . . . . 7 (𝐵 ∈ ℕ → 𝐵 ∈ ℂ)
66 ax-1cn 10032 . . . . . . 7 1 ∈ ℂ
67 npcan 10328 . . . . . . 7 ((𝐵 ∈ ℂ ∧ 1 ∈ ℂ) → ((𝐵 − 1) + 1) = 𝐵)
6865, 66, 67sylancl 695 . . . . . 6 (𝐵 ∈ ℕ → ((𝐵 − 1) + 1) = 𝐵)
6968ad2antlr 763 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((𝐵 − 1) + 1) = 𝐵)
7064, 69breqtrrd 4713 . . . 4 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < ((𝐵 − 1) + 1))
7112ad2antlr 763 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝐵 ∈ ℤ)
72 1z 11445 . . . . . 6 1 ∈ ℤ
73 zsubcl 11457 . . . . . 6 ((𝐵 ∈ ℤ ∧ 1 ∈ ℤ) → (𝐵 − 1) ∈ ℤ)
7471, 72, 73sylancl 695 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 − 1) ∈ ℤ)
75 zleltp1 11466 . . . . 5 (((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℤ ∧ (𝐵 − 1) ∈ ℤ) → ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 − 1) ↔ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < ((𝐵 − 1) + 1)))
7630, 74, 75syl2anc 694 . . . 4 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 − 1) ↔ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < ((𝐵 − 1) + 1)))
7770, 76mpbird 247 . . 3 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 − 1))
78 elfz2nn0 12469 . . 3 ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ (0...(𝐵 − 1)) ↔ ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℕ0 ∧ (𝐵 − 1) ∈ ℕ0 ∧ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 − 1)))
7952, 53, 77, 78syl3anbrc 1265 . 2 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ (0...(𝐵 − 1)))
80 oveq2 6698 . . . . 5 (𝑎 = 𝑥 → (𝐴 · 𝑎) = (𝐴 · 𝑥))
8180oveq1d 6705 . . . 4 (𝑎 = 𝑥 → ((𝐴 · 𝑎) mod 1) = ((𝐴 · 𝑥) mod 1))
8281oveq2d 6706 . . 3 (𝑎 = 𝑥 → (𝐵 · ((𝐴 · 𝑎) mod 1)) = (𝐵 · ((𝐴 · 𝑥) mod 1)))
8382fveq2d 6233 . 2 (𝑎 = 𝑥 → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) = (⌊‘(𝐵 · ((𝐴 · 𝑥) mod 1))))
84 oveq2 6698 . . . . 5 (𝑎 = 𝑦 → (𝐴 · 𝑎) = (𝐴 · 𝑦))
8584oveq1d 6705 . . . 4 (𝑎 = 𝑦 → ((𝐴 · 𝑎) mod 1) = ((𝐴 · 𝑦) mod 1))
8685oveq2d 6706 . . 3 (𝑎 = 𝑦 → (𝐵 · ((𝐴 · 𝑎) mod 1)) = (𝐵 · ((𝐴 · 𝑦) mod 1)))
8786fveq2d 6233 . 2 (𝑎 = 𝑦 → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) = (⌊‘(𝐵 · ((𝐴 · 𝑦) mod 1))))
886, 7, 18, 79, 83, 87fphpdo 37698 1 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → ∃𝑥 ∈ (0...𝐵)∃𝑦 ∈ (0...𝐵)(𝑥 < 𝑦 ∧ (⌊‘(𝐵 · ((𝐴 · 𝑥) mod 1))) = (⌊‘(𝐵 · ((𝐴 · 𝑦) mod 1)))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wa 383   = wceq 1523  wcel 2030  wrex 2942  wss 3607   class class class wbr 4685  cfv 5926  (class class class)co 6690  csdm 7996  cc 9972  cr 9973  0cc0 9974  1c1 9975   + caddc 9977   · cmul 9979   < clt 10112  cle 10113  cmin 10304  cn 11058  0cn0 11330  cz 11415  cuz 11725  +crp 11870  ...cfz 12364  cfl 12631   mod cmo 12708
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-rep 4804  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991  ax-cnex 10030  ax-resscn 10031  ax-1cn 10032  ax-icn 10033  ax-addcl 10034  ax-addrcl 10035  ax-mulcl 10036  ax-mulrcl 10037  ax-mulcom 10038  ax-addass 10039  ax-mulass 10040  ax-distr 10041  ax-i2m1 10042  ax-1ne0 10043  ax-1rid 10044  ax-rnegex 10045  ax-rrecex 10046  ax-cnre 10047  ax-pre-lttri 10048  ax-pre-lttrn 10049  ax-pre-ltadd 10050  ax-pre-mulgt0 10051  ax-pre-sup 10052
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3or 1055  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ne 2824  df-nel 2927  df-ral 2946  df-rex 2947  df-reu 2948  df-rmo 2949  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-pss 3623  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-tp 4215  df-op 4217  df-uni 4469  df-int 4508  df-iun 4554  df-br 4686  df-opab 4746  df-mpt 4763  df-tr 4786  df-id 5053  df-eprel 5058  df-po 5064  df-so 5065  df-fr 5102  df-we 5104  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-pred 5718  df-ord 5764  df-on 5765  df-lim 5766  df-suc 5767  df-iota 5889  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-fv 5934  df-riota 6651  df-ov 6693  df-oprab 6694  df-mpt2 6695  df-om 7108  df-1st 7210  df-2nd 7211  df-wrecs 7452  df-recs 7513  df-rdg 7551  df-1o 7605  df-oadd 7609  df-er 7787  df-en 7998  df-dom 7999  df-sdom 8000  df-fin 8001  df-sup 8389  df-inf 8390  df-card 8803  df-pnf 10114  df-mnf 10115  df-xr 10116  df-ltxr 10117  df-le 10118  df-sub 10306  df-neg 10307  df-div 10723  df-nn 11059  df-n0 11331  df-xnn0 11402  df-z 11416  df-uz 11726  df-rp 11871  df-fz 12365  df-fl 12633  df-mod 12709  df-hash 13158
This theorem is referenced by:  irrapxlem2  37704
  Copyright terms: Public domain W3C validator