Documentation

Mathlib.RingTheory.HahnSeries.Lex

Lexicographical order on Hahn series #

In this file, we define lexicographical ordered Lex R⟦Γ⟧, and show this is a LinearOrder when Γ and R themselves are linearly ordered. Additionally, it is an ordered group or ring whenever R is.

Main definitions #

@[implicit_reducible]
instance HahnSeries.instPartialOrderLex {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [Zero R] [PartialOrder R] :
theorem HahnSeries.lt_iff {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [Zero R] [PartialOrder R] (a b : Lex (HahnSeries Γ R)) :
a < b ∃ (i : Γ), (∀ j < i, (ofLex a).coeff j = (ofLex b).coeff j) (ofLex a).coeff i < (ofLex b).coeff i
@[implicit_reducible]
noncomputable instance HahnSeries.instLinearOrderLex {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [Zero R] [LinearOrder R] :
@[simp]
theorem HahnSeries.leadingCoeff_pos_iff {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [Zero R] [LinearOrder R] {x : Lex (HahnSeries Γ R)} :
0 < (ofLex x).leadingCoeff 0 < x
@[simp]
theorem HahnSeries.leadingCoeff_nonneg_iff {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [Zero R] [LinearOrder R] {x : Lex (HahnSeries Γ R)} :
0 (ofLex x).leadingCoeff 0 x
@[simp]
theorem HahnSeries.leadingCoeff_neg_iff {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [Zero R] [LinearOrder R] {x : Lex (HahnSeries Γ R)} :
(ofLex x).leadingCoeff < 0 x < 0
@[simp]
theorem HahnSeries.leadingCoeff_nonpos_iff {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [Zero R] [LinearOrder R] {x : Lex (HahnSeries Γ R)} :
(ofLex x).leadingCoeff 0 x 0
theorem HahnSeries.order_abs {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [LinearOrder R] [AddCommGroup R] [IsOrderedAddMonoid R] [Zero Γ] (x : Lex (HahnSeries Γ R)) :

Finite archimedean classes of Lex R⟦Γ⟧ decompose into lexicographical pairs of order and the finite archimedean class of leadingCoeff.

Instances For

    The correspondence between finite archimedean classes of Lex R⟦Γ⟧ and lexicographical pairs of HahnSeries.orderTop and the finite archimedean class of HahnSeries.leadingCoeff.

    Instances For

      For Archimedean coefficients, there is a correspondence between finite archimedean classes and HahnSeries.orderTop without the top element.

      Instances For

        For Archimedean coefficients, there is a correspondence between archimedean classes (with top) and HahnSeries.orderTop.

        Instances For
          noncomputable def HahnSeries.embDomainOrderEmbedding {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [PartialOrder R] {Γ' : Type u_3} [LinearOrder Γ'] (f : Γ ↪o Γ') [Zero R] :

          HahnSeries.embDomain as an OrderEmbedding.

          Instances For
            @[simp]
            theorem HahnSeries.embDomainOrderEmbedding_apply {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [PartialOrder R] {Γ' : Type u_3} [LinearOrder Γ'] (f : Γ ↪o Γ') [Zero R] (a : Lex (HahnSeries Γ R)) :
            noncomputable def HahnSeries.embDomainOrderAddMonoidHom {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [PartialOrder R] {Γ' : Type u_3} [LinearOrder Γ'] (f : Γ ↪o Γ') [AddMonoid R] :

            HahnSeries.embDomain as an OrderAddMonoidHom.

            Instances For
              @[simp]
              theorem HahnSeries.embDomainOrderAddMonoidHom_apply {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [PartialOrder R] {Γ' : Type u_3} [LinearOrder Γ'] (f : Γ ↪o Γ') [AddMonoid R] (a✝ : Lex (HahnSeries Γ R)) :
              theorem HahnSeries.embDomainOrderAddMonoidHom_injective {Γ : Type u_1} {R : Type u_2} [LinearOrder Γ] [PartialOrder R] {Γ' : Type u_3} [LinearOrder Γ'] (f : Γ ↪o Γ') [AddMonoid R] :
              Function.Injective (embDomainOrderAddMonoidHom f)