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 43671
Description: Lemma for irrapx1 43677. Divides the unit interval into 𝐵 half-open sections and using the pigeonhole principle fphpdo 43666 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 13624 . . . 4 (0...𝐵) ⊆ (ℤ‘0)
2 uzssz 12912 . . . . 5 (ℤ‘0) ⊆ ℤ
3 zssre 12626 . . . . 5 ℤ ⊆ ℝ
42, 3sstri 3943 . . . 4 (ℤ‘0) ⊆ ℝ
51, 4sstri 3943 . . 3 (0...𝐵) ⊆ ℝ
65a1i 11 . 2 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (0...𝐵) ⊆ ℝ)
7 ovexd 7452 . 2 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (0...(𝐵 − 1)) ∈ V)
8 nnm1nn0 12573 . . . . 5 (𝐵 ∈ ℕ → (𝐵 − 1) ∈ ℕ0)
98adantl 487 . . . 4 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (𝐵 − 1) ∈ ℕ0)
10 nn0uz 12929 . . . 4 0 = (ℤ‘0)
119, 10eleqtrdi 2872 . . 3 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (𝐵 − 1) ∈ (ℤ‘0))
12 nnz 12640 . . . 4 (𝐵 ∈ ℕ → 𝐵 ∈ ℤ)
1312adantl 487 . . 3 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → 𝐵 ∈ ℤ)
14 nnre 12268 . . . . 5 (𝐵 ∈ ℕ → 𝐵 ∈ ℝ)
1514adantl 487 . . . 4 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → 𝐵 ∈ ℝ)
1615ltm1d 12175 . . 3 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (𝐵 − 1) < 𝐵)
17 fzsdom2 14497 . . 3 ((((𝐵 − 1) ∈ (ℤ‘0) ∧ 𝐵 ∈ ℤ) ∧ (𝐵 − 1) < 𝐵) → (0...(𝐵 − 1)) ≺ (0...𝐵))
1811, 13, 16, 17syl21anc 851 . 2 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → (0...(𝐵 − 1)) ≺ (0...𝐵))
1914ad2antlr 740 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝐵 ∈ ℝ)
20 rpre 13055 . . . . . . . . 9 (𝐴 ∈ ℝ+𝐴 ∈ ℝ)
2120ad2antrr 739 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝐴 ∈ ℝ)
22 elfzelz 13582 . . . . . . . . . 10 (𝑎 ∈ (0...𝐵) → 𝑎 ∈ ℤ)
2322zred 12729 . . . . . . . . 9 (𝑎 ∈ (0...𝐵) → 𝑎 ∈ ℝ)
2423adantl 487 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝑎 ∈ ℝ)
2521, 24remulcld 11267 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐴 · 𝑎) ∈ ℝ)
26 1rp 13050 . . . . . . 7 1 ∈ ℝ+
27 modcl 13938 . . . . . . 7 (((𝐴 · 𝑎) ∈ ℝ ∧ 1 ∈ ℝ+) → ((𝐴 · 𝑎) mod 1) ∈ ℝ)
2825, 26, 27sylancl 598 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((𝐴 · 𝑎) mod 1) ∈ ℝ)
2919, 28remulcld 11267 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · ((𝐴 · 𝑎) mod 1)) ∈ ℝ)
3029flcld 13863 . . . 4 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℤ)
3119recnd 11265 . . . . . . . . 9 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝐵 ∈ ℂ)
3231mul01d 11437 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · 0) = 0)
33 modge0 13944 . . . . . . . . . 10 (((𝐴 · 𝑎) ∈ ℝ ∧ 1 ∈ ℝ+) → 0 ≤ ((𝐴 · 𝑎) mod 1))
3425, 26, 33sylancl 598 . . . . . . . . 9 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 ≤ ((𝐴 · 𝑎) mod 1))
35 0red 11239 . . . . . . . . . 10 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 ∈ ℝ)
36 nngt0 12295 . . . . . . . . . . 11 (𝐵 ∈ ℕ → 0 < 𝐵)
3736ad2antlr 740 . . . . . . . . . 10 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 < 𝐵)
38 lemul2 12096 . . . . . . . . . 10 ((0 ∈ ℝ ∧ ((𝐴 · 𝑎) mod 1) ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → (0 ≤ ((𝐴 · 𝑎) mod 1) ↔ (𝐵 · 0) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1))))
3935, 28, 19, 37, 38syl112anc 1401 . . . . . . . . 9 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (0 ≤ ((𝐴 · 𝑎) mod 1) ↔ (𝐵 · 0) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1))))
4034, 39mpbid 235 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · 0) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)))
4132, 40eqbrtrrd 5133 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)))
4235, 29lenltd 11384 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (0 ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)) ↔ ¬ (𝐵 · ((𝐴 · 𝑎) mod 1)) < 0))
4341, 42mpbid 235 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ¬ (𝐵 · ((𝐴 · 𝑎) mod 1)) < 0)
44 0z 12630 . . . . . . 7 0 ∈ ℤ
45 fllt 13871 . . . . . . 7 (((𝐵 · ((𝐴 · 𝑎) mod 1)) ∈ ℝ ∧ 0 ∈ ℤ) → ((𝐵 · ((𝐴 · 𝑎) mod 1)) < 0 ↔ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 0))
4629, 44, 45sylancl 598 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((𝐵 · ((𝐴 · 𝑎) mod 1)) < 0 ↔ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 0))
4743, 46mtbid 327 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ¬ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 0)
4830zred 12729 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℝ)
4935, 48lenltd 11384 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (0 ≤ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ↔ ¬ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 0))
5047, 49mpbird 260 . . . 4 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 0 ≤ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))))
51 elnn0z 12632 . . . 4 ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℕ0 ↔ ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℤ ∧ 0 ≤ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1)))))
5230, 50, 51sylanbrc 595 . . 3 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℕ0)
538ad2antlr 740 . . 3 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 − 1) ∈ ℕ0)
54 flle 13864 . . . . . . 7 ((𝐵 · ((𝐴 · 𝑎) mod 1)) ∈ ℝ → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)))
5529, 54syl 18 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 · ((𝐴 · 𝑎) mod 1)))
56 modlt 13945 . . . . . . . . 9 (((𝐴 · 𝑎) ∈ ℝ ∧ 1 ∈ ℝ+) → ((𝐴 · 𝑎) mod 1) < 1)
5725, 26, 56sylancl 598 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((𝐴 · 𝑎) mod 1) < 1)
58 1red 11237 . . . . . . . . 9 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 1 ∈ ℝ)
59 ltmul2 12094 . . . . . . . . 9 ((((𝐴 · 𝑎) mod 1) ∈ ℝ ∧ 1 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → (((𝐴 · 𝑎) mod 1) < 1 ↔ (𝐵 · ((𝐴 · 𝑎) mod 1)) < (𝐵 · 1)))
6028, 58, 19, 37, 59syl112anc 1401 . . . . . . . 8 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (((𝐴 · 𝑎) mod 1) < 1 ↔ (𝐵 · ((𝐴 · 𝑎) mod 1)) < (𝐵 · 1)))
6157, 60mpbid 235 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · ((𝐴 · 𝑎) mod 1)) < (𝐵 · 1))
6231mulridd 11254 . . . . . . 7 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · 1) = 𝐵)
6361, 62breqtrd 5135 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 · ((𝐴 · 𝑎) mod 1)) < 𝐵)
6448, 29, 19, 55, 63lelttrd 11396 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < 𝐵)
65 nncn 12269 . . . . . . 7 (𝐵 ∈ ℕ → 𝐵 ∈ ℂ)
66 ax-1cn 11186 . . . . . . 7 1 ∈ ℂ
67 npcan 11494 . . . . . . 7 ((𝐵 ∈ ℂ ∧ 1 ∈ ℂ) → ((𝐵 − 1) + 1) = 𝐵)
6865, 66, 67sylancl 598 . . . . . 6 (𝐵 ∈ ℕ → ((𝐵 − 1) + 1) = 𝐵)
6968ad2antlr 740 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((𝐵 − 1) + 1) = 𝐵)
7064, 69breqtrrd 5137 . . . 4 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < ((𝐵 − 1) + 1))
7112ad2antlr 740 . . . . . 6 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → 𝐵 ∈ ℤ)
72 1z 12652 . . . . . 6 1 ∈ ℤ
73 zsubcl 12664 . . . . . 6 ((𝐵 ∈ ℤ ∧ 1 ∈ ℤ) → (𝐵 − 1) ∈ ℤ)
7471, 72, 73sylancl 598 . . . . 5 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (𝐵 − 1) ∈ ℤ)
75 zleltp1 12673 . . . . 5 (((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℤ ∧ (𝐵 − 1) ∈ ℤ) → ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 − 1) ↔ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < ((𝐵 − 1) + 1)))
7630, 74, 75syl2anc 596 . . . 4 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 − 1) ↔ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) < ((𝐵 − 1) + 1)))
7770, 76mpbird 260 . . 3 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 − 1))
78 elfz2nn0 13677 . . 3 ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ (0...(𝐵 − 1)) ↔ ((⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ ℕ0 ∧ (𝐵 − 1) ∈ ℕ0 ∧ (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ≤ (𝐵 − 1)))
7952, 53, 77, 78syl3anbrc 1362 . 2 (((𝐴 ∈ ℝ+𝐵 ∈ ℕ) ∧ 𝑎 ∈ (0...𝐵)) → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) ∈ (0...(𝐵 − 1)))
80 oveq2 7425 . . . . 5 (𝑎 = 𝑥 → (𝐴 · 𝑎) = (𝐴 · 𝑥))
8180oveq1d 7432 . . . 4 (𝑎 = 𝑥 → ((𝐴 · 𝑎) mod 1) = ((𝐴 · 𝑥) mod 1))
8281oveq2d 7433 . . 3 (𝑎 = 𝑥 → (𝐵 · ((𝐴 · 𝑎) mod 1)) = (𝐵 · ((𝐴 · 𝑥) mod 1)))
8382fveq2d 6886 . 2 (𝑎 = 𝑥 → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) = (⌊‘(𝐵 · ((𝐴 · 𝑥) mod 1))))
84 oveq2 7425 . . . . 5 (𝑎 = 𝑦 → (𝐴 · 𝑎) = (𝐴 · 𝑦))
8584oveq1d 7432 . . . 4 (𝑎 = 𝑦 → ((𝐴 · 𝑎) mod 1) = ((𝐴 · 𝑦) mod 1))
8685oveq2d 7433 . . 3 (𝑎 = 𝑦 → (𝐵 · ((𝐴 · 𝑎) mod 1)) = (𝐵 · ((𝐴 · 𝑦) mod 1)))
8786fveq2d 6886 . 2 (𝑎 = 𝑦 → (⌊‘(𝐵 · ((𝐴 · 𝑎) mod 1))) = (⌊‘(𝐵 · ((𝐴 · 𝑦) mod 1))))
886, 7, 18, 79, 83, 87fphpdo 43666 1 ((𝐴 ∈ ℝ+𝐵 ∈ ℕ) → ∃𝑥 ∈ (0...𝐵)∃𝑦 ∈ (0...𝐵)(𝑥 < 𝑦 ∧ (⌊‘(𝐵 · ((𝐴 · 𝑥) mod 1))) = (⌊‘(𝐵 · ((𝐴 · 𝑦) mod 1)))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401   = wceq 1570  wcel 2145  wrex 3088  wss 3902   class class class wbr 5107  cfv 6537  (class class class)co 7417  csdm 8955  cc 11126  cr 11127  0cc0 11128  1c1 11129   + caddc 11131   · cmul 11133   < clt 11271  cle 11272  cmin 11469  cn 12261  0cn0 12532  cz 12619  cuz 12891  +crp 13046  ...cfz 13565  cfl 13855   mod cmo 13934
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7740  ax-cnex 11184  ax-resscn 11185  ax-1cn 11186  ax-icn 11187  ax-addcl 11188  ax-addrcl 11189  ax-mulcl 11190  ax-mulrcl 11191  ax-mulcom 11192  ax-addass 11193  ax-mulass 11194  ax-distr 11195  ax-i2m1 11196  ax-1ne0 11197  ax-1rid 11198  ax-rnegex 11199  ax-rrecex 11200  ax-cnre 11201  ax-pre-lttri 11202  ax-pre-lttrn 11203  ax-pre-ltadd 11204  ax-pre-mulgt0 11205  ax-pre-sup 11206
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-int 4911  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-riota 7374  df-ov 7420  df-oprab 7421  df-mpo 7422  df-om 7867  df-1st 7990  df-2nd 7991  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-1o 8459  df-oadd 8463  df-er 8700  df-en 8957  df-dom 8958  df-sdom 8959  df-fin 8960  df-sup 9416  df-inf 9417  df-card 9948  df-pnf 11273  df-mnf 11274  df-xr 11275  df-ltxr 11276  df-le 11277  df-sub 11471  df-neg 11472  df-div 11900  df-nn 12262  df-n0 12533  df-xnn0 12606  df-z 12620  df-uz 12892  df-rp 13047  df-fz 13566  df-fl 13857  df-mod 13935  df-hash 14399
This theorem is used by:  irrapxlem2  43672
  Copyright terms: Public domain W3C validator