mirror of
https://github.com/GTBarkley/comm_alg.git
synced 2024-12-26 07:38:36 -06:00
Merge pull request #86 from GTBarkley/leo
removed dependency on false sorried lemma
This commit is contained in:
commit
253ac17bb6
2 changed files with 42 additions and 4 deletions
|
@ -95,8 +95,32 @@ lemma le_krullDim_iff (R : Type _) [CommRing R] (n : ℕ) :
|
|||
have : height I ≤ krullDim R := by apply height_le_krullDim
|
||||
exact le_trans h this
|
||||
|
||||
lemma le_krullDim_iff' (R : Type _) [CommRing R] (n : ℕ∞) :
|
||||
n ≤ krullDim R ↔ ∃ I : PrimeSpectrum R, n ≤ (height I : WithBot ℕ∞) := by sorry
|
||||
#check ENat.recTopCoe
|
||||
|
||||
/- terrible place for this lemma. Also this probably exists somewhere
|
||||
Also this is a terrible proof
|
||||
-/
|
||||
lemma eq_top_iff (n : WithBot ℕ∞) : n = ⊤ ↔ ∀ m : ℕ, m ≤ n := by
|
||||
aesop
|
||||
induction' n using WithBot.recBotCoe with n
|
||||
. exfalso
|
||||
have := (a 0)
|
||||
simp [not_lt_of_ge] at this
|
||||
induction' n using ENat.recTopCoe with n
|
||||
. rfl
|
||||
. have := a (n + 1)
|
||||
exfalso
|
||||
change (((n + 1) : ℕ∞) : WithBot ℕ∞) ≤ _ at this
|
||||
simp [WithBot.coe_le_coe] at this
|
||||
change ((n + 1) : ℕ∞) ≤ (n : ℕ∞) at this
|
||||
simp [ENat.add_one_le_iff] at this
|
||||
|
||||
lemma krullDim_eq_top_iff (R : Type _) [CommRing R] :
|
||||
krullDim R = ⊤ ↔ ∀ (n : ℕ), ∃ I : PrimeSpectrum R, n ≤ height I := by
|
||||
simp [eq_top_iff, le_krullDim_iff]
|
||||
change (∀ (m : ℕ), ∃ I, ((m : ℕ∞) : WithBot ℕ∞) ≤ height I) ↔ _
|
||||
simp [WithBot.coe_le_coe]
|
||||
|
||||
|
||||
/-- The Krull dimension of a local ring is the height of its maximal ideal. -/
|
||||
lemma krullDim_eq_height [LocalRing R] : krullDim R = height (closedPoint R) := by
|
||||
|
|
|
@ -132,7 +132,7 @@ lemma ht_adjoin_x_eq_ht_add_one [Nontrivial R] (I : PrimeSpectrum R) : height I
|
|||
apply hl.2
|
||||
exact hb
|
||||
|
||||
|
||||
#check (⊤ : ℕ∞)
|
||||
/-
|
||||
dim R + 1 ≤ dim R[X]
|
||||
-/
|
||||
|
@ -142,12 +142,26 @@ lemma dim_le_dim_polynomial_add_one [Nontrivial R] :
|
|||
rw [hn]
|
||||
change ↑(n + 1) ≤ krullDim R[X]
|
||||
have := le_of_eq hn.symm
|
||||
rw [le_krullDim_iff'] at this ⊢
|
||||
induction' n using ENat.recTopCoe with n
|
||||
. change krullDim R = ⊤ at hn
|
||||
change ⊤ ≤ krullDim R[X]
|
||||
rw [krullDim_eq_top_iff] at hn
|
||||
rw [top_le_iff, krullDim_eq_top_iff]
|
||||
intro n
|
||||
obtain ⟨I, hI⟩ := hn n
|
||||
use adjoin_x I
|
||||
calc n ≤ height I := hI
|
||||
_ ≤ height I + 1 := le_self_add
|
||||
_ ≤ height (adjoin_x I) := ht_adjoin_x_eq_ht_add_one I
|
||||
change n ≤ krullDim R at this
|
||||
change (n + 1 : ℕ) ≤ krullDim R[X]
|
||||
rw [le_krullDim_iff] at this ⊢
|
||||
obtain ⟨I, hI⟩ := this
|
||||
use adjoin_x I
|
||||
apply WithBot.coe_mono
|
||||
calc n + 1 ≤ height I + 1 := by
|
||||
apply add_le_add_right
|
||||
change ((n : ℕ∞) : WithBot ℕ∞) ≤ (height I) at hI
|
||||
rw [WithBot.coe_le_coe] at hI
|
||||
exact hI
|
||||
_ ≤ height (adjoin_x I) := ht_adjoin_x_eq_ht_add_one I
|
Loading…
Reference in a new issue