Skip to content

Commit

Permalink
docs
Browse files Browse the repository at this point in the history
  • Loading branch information
artie2000 committed Dec 19, 2024
1 parent 779d77a commit 199239d
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions RealClosedField/RealClosedField/RingOrdering/Basic.lean
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,9 @@ Authors: Florent Schaffhauser, Artie Khovanov
-/

import RealClosedField.RealClosedField.RingOrdering.Defns
import Mathlib.Order.Chain
import Mathlib.Tactic.Ring
import Mathlib.Algebra.CharP.Defs
import Mathlib.Tactic.FieldSimp
import Mathlib.Tactic.Polyrith
import Mathlib.RingTheory.Ideal.Maps
import Mathlib.Tactic.LinearCombination
import Mathlib.Tactic.FieldSimp

variable {S R : Type*} [CommRing R] [SetLike S R] [RingPreorderingClass S R] {P : S}

Expand Down Expand Up @@ -169,6 +166,7 @@ theorem mem_comap {P : RingPreordering B} {f : A →+* B} {x : A} : x ∈ P.coma
theorem comap_comap (P : RingPreordering C) (g : B →+* C) (f : A →+* B) :
(P.comap g).comap f = P.comap (g.comp f) := rfl

/-- The preimage of an ordering along a ring homomorphism is an ordering. -/
instance comap.instIsOrdering (P : RingPreordering B) [IsOrdering P] (f : A →+* B) :
IsOrdering (comap f P) where
mem_or_neg_mem' x := by have := mem_or_neg_mem P (f x); aesop
Expand Down Expand Up @@ -196,6 +194,7 @@ theorem comap_support' {P : RingPreordering B} [HasIdealSupport P] {f : A →+*
Ideal.preordering_support (P.comap f) = (Ideal.preordering_support P).comap f :=
by ext; simp

/-- The preimage of a prime ordering along a ring homomorphism is a prime ordering. -/
instance comap.instIsPrimeOrdering (P : RingPreordering B) [IsPrimeOrdering P] (f : A →+* B) :
IsPrimeOrdering (comap f P) := by
have : (Ideal.preordering_support (P.comap f)).IsPrime := by rw [comap_support']; infer_instance
Expand All @@ -204,7 +203,7 @@ instance comap.instIsPrimeOrdering (P : RingPreordering B) [IsPrimeOrdering P] (
/-! ## map -/

/-- The image of a preordering `P` along a surjective ring homomorphism
with kernel contained in the support of `P` is a subring. -/
with kernel contained in the support of `P` is a preordering. -/
def map {f : A →+* B} {P : RingPreordering A} (hf : Function.Surjective f)
(hsupp : (RingHom.ker f : Set A) ⊆ AddSubgroup.preordering_support P) : RingPreordering B where
__ := P.toSubsemiring.map f
Expand All @@ -227,6 +226,8 @@ theorem mem_map {f : A →+* B} {P : RingPreordering A} (hf : Function.Surjectiv
(hsupp : (RingHom.ker f : Set A) ⊆ AddSubgroup.preordering_support P) :
y ∈ map hf hsupp ↔ ∃ x ∈ P, f x = y := Iff.rfl

/-- The image of an ordering `P` along a surjective ring homomorphism
with kernel contained in the support of `P` is an ordering. -/
instance map.instIsOrdering {f : A →+* B} {P : RingPreordering A} [IsOrdering P]
(hf : Function.Surjective f)
(hsupp : (RingHom.ker f : Set A) ⊆ AddSubgroup.preordering_support P) :
Expand Down Expand Up @@ -278,6 +279,8 @@ theorem map_support' {f : A →+* B} {P : RingPreordering A} [HasIdealSupport P]
· rcases h with ⟨x', hx', rfl⟩; exact Ideal.mem_map_of_mem f hx'
· exact Ideal.mem_image_of_mem_map_of_surjective f hf h

/-- The image of a prime ordering `P` along a surjective ring homomorphism
with kernel contained in the support of `P` is a prime ordering. -/
instance map.instIsPrimeOrdering {f : A →+* B} {P : RingPreordering A} [IsPrimeOrdering P]
(hf : Function.Surjective f)
(hsupp : (RingHom.ker f : Set A) ⊆ AddSubgroup.preordering_support P) :
Expand Down

0 comments on commit 199239d

Please sign in to comment.