Documentation

Mathlib.Algebra.Order.Ring.Cone

Construct ordered rings from rings with a specified positive cone. #

In this file we provide the structure RingCone that encodes axioms of OrderedRing and LinearOrderedRing in terms of the subset of non-negative elements.

We also provide constructors that convert between cones in rings and the corresponding ordered rings.

class RingConeClass (S : Type u_1) (R : outParam (Type u_2)) [Ring R] [SetLike S R] extends AddGroupConeClass S R, SubsemiringClass S R :

RingConeClass S R says that S is a type of cones in R.

Instances
    structure RingCone (R : Type u_1) [Ring R] extends Subsemiring R, AddGroupCone R :
    Type u_1

    A (positive) cone in a ring is a subsemiring that does not contain both a and -a for any nonzero a. This is equivalent to being the set of non-negative elements of some order making the ring into a partially ordered ring.

    Instances For
      instance RingCone.instSetLike (R : Type u_1) [Ring R] :
      Equations
        @[simp]
        theorem RingCone.mem_mk {R : Type u_1} [Ring R] {toSubsemiring : Subsemiring R} (eq_zero_of_mem_of_neg_mem : ∀ {a : R}, a toSubsemiring.carrier-a toSubsemiring.carriera = 0) {x : R} :
        x { toSubsemiring := toSubsemiring, eq_zero_of_mem_of_neg_mem' := eq_zero_of_mem_of_neg_mem } x toSubsemiring
        @[simp]
        theorem RingCone.coe_set_mk {R : Type u_1} [Ring R] {toSubsemiring : Subsemiring R} (eq_zero_of_mem_of_neg_mem : ∀ {a : R}, a toSubsemiring.carrier-a toSubsemiring.carriera = 0) :
        { toSubsemiring := toSubsemiring, eq_zero_of_mem_of_neg_mem' := eq_zero_of_mem_of_neg_mem } = toSubsemiring

        Construct a cone from the set of non-negative elements of a partially ordered ring.

        Equations
          Instances For
            @[simp]
            theorem RingCone.mem_nonneg {T : Type u_1} [Ring T] [PartialOrder T] [IsOrderedRing T] {a : T} :
            a nonneg T 0 a
            @[simp]
            theorem RingCone.coe_nonneg {T : Type u_1} [Ring T] [PartialOrder T] [IsOrderedRing T] :
            (nonneg T) = {x : T | 0 x}
            theorem IsOrderedRing.mkOfCone {S : Type u_1} {R : Type u_2} [Ring R] [SetLike S R] (C : S) [RingConeClass S R] :

            Construct a partially ordered ring by designating a cone in a ring.