Skip to content

Commit

Permalink
feat(ring_theory/algebraic data/real/irrational): add a proof that a …
Browse files Browse the repository at this point in the history
…transcendental real number is irrational (#6721)


Zulip:
https://leanprover.zulipchat.com/#narrow/stream/263328-triage
  • Loading branch information
adomani committed Mar 17, 2021
1 parent 4b1d588 commit 1345319
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
6 changes: 6 additions & 0 deletions src/data/real/irrational.lean
Expand Up @@ -9,6 +9,7 @@ import ring_theory.int.basic
import data.polynomial.eval
import data.polynomial.degree
import tactic.interval_cases
import ring_theory.algebraic
/-!
# Irrational real numbers
Expand All @@ -28,6 +29,11 @@ lemma irrational_iff_ne_rational (x : ℝ) : irrational x ↔ ∀ a b : ℤ, x
by simp only [irrational, rat.forall, cast_mk, not_exists, set.mem_range, cast_coe_int, cast_div,
eq_comm]

/-- A transcendental real number is irrational. -/
lemma transcendental.irrational {r : ℝ} (tr : transcendental ℚ r) :
irrational r :=
by { rintro ⟨a, rfl⟩, exact tr (is_algebraic_algebra_map a) }

/-!
### Irrationality of roots of integer and rational numbers
-/
Expand Down
6 changes: 6 additions & 0 deletions src/ring_theory/algebraic.lean
Expand Up @@ -74,6 +74,12 @@ variables (R : Type u) {A : Type v} [comm_ring R] [nontrivial R] [ring A] [algeb
lemma is_integral.is_algebraic {x : A} (h : is_integral R x) : is_algebraic R x :=
by { rcases h with ⟨p, hp, hpx⟩, exact ⟨p, hp.ne_zero, hpx⟩ }

variables {R}

/-- An element of `R` is algebraic, when viewed as an element of the `R`-algebra `A`. -/
lemma is_algebraic_algebra_map (a : R) : is_algebraic R (algebra_map R A a) :=
⟨X - C a, X_sub_C_ne_zero a, by simp only [aeval_C, aeval_X, alg_hom.map_sub, sub_self]⟩

end zero_ne_one

section field
Expand Down

0 comments on commit 1345319

Please sign in to comment.