Metamath Proof Explorer


Theorem aaliou2

Description: Liouville's approximation theorem for algebraic numbers per se. (Contributed by Stefan O'Rear, 16-Nov-2014)

Ref Expression
Assertion aaliou2 ⊢ A ∈ 𝔸 ∩ ℝ → ∃ k ∈ ℕ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q

Proof

Step Hyp Ref Expression
1 elin ⊢ A ∈ 𝔸 ∩ ℝ ↔ A ∈ 𝔸 ∧ A ∈ ℝ
2 elaa ⊢ A ∈ 𝔸 ↔ A ∈ ℂ ∧ ∃ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 a ⁡ A = 0
3 eldifn ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 → ¬ a ∈ 0 𝑝
4 3 3ad2ant1 ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → ¬ a ∈ 0 𝑝
5 simpr ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → a = ℂ × a ⁡ 0
6 fveq1 ⊢ a = ℂ × a ⁡ 0 → a ⁡ A = ℂ × a ⁡ 0 ⁡ A
7 6 adantl ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → a ⁡ A = ℂ × a ⁡ 0 ⁡ A
8 simpl2 ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → a ⁡ A = 0
9 simpl3 ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → A ∈ ℝ
10 9 recnd ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → A ∈ ℂ
11 fvex ⊢ a ⁡ 0 ∈ V
12 11 fvconst2 ⊢ A ∈ ℂ → ℂ × a ⁡ 0 ⁡ A = a ⁡ 0
13 10 12 syl ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → ℂ × a ⁡ 0 ⁡ A = a ⁡ 0
14 7 8 13 3eqtr3rd ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → a ⁡ 0 = 0
15 14 sneqd ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → a ⁡ 0 = 0
16 15 xpeq2d ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → ℂ × a ⁡ 0 = ℂ × 0
17 5 16 eqtrd ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → a = ℂ × 0
18 df-0p ⊢ 0 𝑝 = ℂ × 0
19 17 18 eqtr4di ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → a = 0 𝑝
20 velsn ⊢ a ∈ 0 𝑝 ↔ a = 0 𝑝
21 19 20 sylibr ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ ∧ a = ℂ × a ⁡ 0 → a ∈ 0 𝑝
22 4 21 mtand ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → ¬ a = ℂ × a ⁡ 0
23 eldifi ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 → a ∈ Poly ⁡ ℤ
24 23 3ad2ant1 ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → a ∈ Poly ⁡ ℤ
25 0dgrb ⊢ a ∈ Poly ⁡ ℤ → deg ⁡ a = 0 ↔ a = ℂ × a ⁡ 0
26 24 25 syl ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → deg ⁡ a = 0 ↔ a = ℂ × a ⁡ 0
27 22 26 mtbird ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → ¬ deg ⁡ a = 0
28 dgrcl ⊢ a ∈ Poly ⁡ ℤ → deg ⁡ a ∈ ℕ 0
29 24 28 syl ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → deg ⁡ a ∈ ℕ 0
30 elnn0 ⊢ deg ⁡ a ∈ ℕ 0 ↔ deg ⁡ a ∈ ℕ ∨ deg ⁡ a = 0
31 29 30 sylib ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → deg ⁡ a ∈ ℕ ∨ deg ⁡ a = 0
32 orel2 ⊢ ¬ deg ⁡ a = 0 → deg ⁡ a ∈ ℕ ∨ deg ⁡ a = 0 → deg ⁡ a ∈ ℕ
33 27 31 32 sylc ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → deg ⁡ a ∈ ℕ
34 eqid ⊢ deg ⁡ a = deg ⁡ a
35 simp3 ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → A ∈ ℝ
36 simp2 ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → a ⁡ A = 0
37 34 24 33 35 36 aaliou ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q deg ⁡ a < A − p q
38 oveq2 ⊢ k = deg ⁡ a → q k = q deg ⁡ a
39 38 oveq2d ⊢ k = deg ⁡ a → x q k = x q deg ⁡ a
40 39 breq1d ⊢ k = deg ⁡ a → x q k < A − p q ↔ x q deg ⁡ a < A − p q
41 40 orbi2d ⊢ k = deg ⁡ a → A = p q ∨ x q k < A − p q ↔ A = p q ∨ x q deg ⁡ a < A − p q
42 41 2ralbidv ⊢ k = deg ⁡ a → ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q ↔ ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q deg ⁡ a < A − p q
43 42 rexbidv ⊢ k = deg ⁡ a → ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q ↔ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q deg ⁡ a < A − p q
44 43 rspcev ⊢ deg ⁡ a ∈ ℕ ∧ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q deg ⁡ a < A − p q → ∃ k ∈ ℕ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q
45 33 37 44 syl2anc ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 ∧ a ⁡ A = 0 ∧ A ∈ ℝ → ∃ k ∈ ℕ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q
46 45 3exp ⊢ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 → a ⁡ A = 0 → A ∈ ℝ → ∃ k ∈ ℕ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q
47 46 rexlimiv ⊢ ∃ a ∈ Poly ⁡ ℤ ∖ 0 𝑝 a ⁡ A = 0 → A ∈ ℝ → ∃ k ∈ ℕ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q
48 2 47 simplbiim ⊢ A ∈ 𝔸 → A ∈ ℝ → ∃ k ∈ ℕ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q
49 48 imp ⊢ A ∈ 𝔸 ∧ A ∈ ℝ → ∃ k ∈ ℕ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q
50 1 49 sylbi ⊢ A ∈ 𝔸 ∩ ℝ → ∃ k ∈ ℕ ∃ x ∈ ℝ + ∀ p ∈ ℤ ∀ q ∈ ℕ A = p q ∨ x q k < A − p q