Ordered ring homomorphisms #
Homomorphisms between ordered (semi)rings that respect the ordering.
Main definitions #
OrderRingHom
: Monotone semiring homomorphisms.OrderRingIso
: Monotone semiring isomorphisms.
Notation #
→+*o
: Ordered ring homomorphisms.≃+*o
: Ordered ring isomorphisms.
Tags #
ordered ring homomorphism, order homomorphism
OrderRingHom α β
is the type of monotone semiring homomorphisms from α
to β
.
When possible, instead of parametrizing results over (f : OrderRingHom α β)
,
you should parametrize over (F : Type*) [OrderRingHomClass F α β] (f : F)
.
When you extend this structure, make sure to extend OrderRingHomClass
.
- toFun : α → β
- map_one' : (↑↑self.toRingHom).toFun 1 = 1
- map_zero' : (↑↑self.toRingHom).toFun 0 = 0
- monotone' : Monotone self.toFun
The proposition that the function preserves the order.
Instances For
OrderRingHom α β
is the type of monotone semiring homomorphisms from α
to β
.
When possible, instead of parametrizing results over (f : OrderRingHom α β)
,
you should parametrize over (F : Type*) [OrderRingHomClass F α β] (f : F)
.
When you extend this structure, make sure to extend OrderRingHomClass
.
Equations
- «term_→+*o_» = Lean.ParserDescr.trailingNode `term_→+*o_ 25 25 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " →+*o ") (Lean.ParserDescr.cat `term 26))
Instances For
OrderRingHom α β
is the type of order-preserving semiring isomorphisms between α
and β
.
When possible, instead of parametrizing results over (f : OrderRingIso α β)
,
you should parametrize over (F : Type*) [OrderRingIsoClass F α β] (f : F)
.
When you extend this structure, make sure to extend OrderRingIsoClass
.
- toFun : α → β
- invFun : β → α
- left_inv : Function.LeftInverse self.invFun self.toFun
- right_inv : Function.RightInverse self.invFun self.toFun
The proposition that the function preserves the order bijectively.
Instances For
OrderRingHom α β
is the type of order-preserving semiring isomorphisms between α
and β
.
When possible, instead of parametrizing results over (f : OrderRingIso α β)
,
you should parametrize over (F : Type*) [OrderRingIsoClass F α β] (f : F)
.
When you extend this structure, make sure to extend OrderRingIsoClass
.
Equations
- «term_≃+*o_» = Lean.ParserDescr.trailingNode `term_≃+*o_ 25 25 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " ≃+*o ") (Lean.ParserDescr.cat `term 26))
Instances For
OrderRingHomClass F α β
states that F
is a type of ordered semiring homomorphisms.
You should extend this typeclass when you extend OrderRingHom
.
- map_one : ∀ (f : F), f 1 = 1
- map_zero : ∀ (f : F), f 0 = 0
- monotone : ∀ (f : F), Monotone ⇑f
The proposition that the function preserves the order.
Instances
OrderRingIsoClass F α β
states that F
is a type of ordered semiring isomorphisms.
You should extend this class when you extend OrderRingIso
.
The proposition that the function preserves the order bijectively.
Instances
Equations
- (_ : OrderAddMonoidHomClass F α β) = (_ : OrderAddMonoidHomClass F α β)
Equations
- (_ : OrderMonoidWithZeroHomClass F α β) = (_ : OrderMonoidWithZeroHomClass F α β)
Equations
- (_ : OrderIsoClass F α β) = (_ : OrderIsoClass F α β)
Equations
- (_ : OrderRingHomClass F α β) = (_ : OrderRingHomClass F α β)
Turn an element of a type F
satisfying OrderRingHomClass F α β
into an actual
OrderRingHom
. This is declared as the default coercion from F
to α →+*o β
.
Instances For
Any type satisfying OrderRingHomClass
can be cast into OrderRingHom
via
OrderRingHomClass.toOrderRingHom
.
Equations
- instCoeTCOrderRingHom = { coe := OrderRingHomClass.toOrderRingHom }
Turn an element of a type F
satisfying OrderRingIsoClass F α β
into an actual
OrderRingIso
. This is declared as the default coercion from F
to α ≃+*o β
.
Equations
Instances For
Any type satisfying OrderRingIsoClass
can be cast into OrderRingIso
via
OrderRingIsoClass.toOrderRingIso
.
Equations
- instCoeTCOrderRingIso = { coe := OrderRingIsoClass.toOrderRingIso }
Ordered ring homomorphisms #
Reinterpret an ordered ring homomorphism as an ordered additive monoid homomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Reinterpret an ordered ring homomorphism as an order homomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : OrderRingHomClass (α →+*o β) α β) = (_ : OrderRingHomClass (α →+*o β) α β)
Copy of an OrderRingHom
with a new toFun
equal to the old one. Useful to fix definitional
equalities.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The identity as an ordered ring homomorphism.
Equations
- OrderRingHom.id α = let src := RingHom.id α; let src_1 := OrderHom.id; { toRingHom := src, monotone' := (_ : Monotone src_1.toFun) }
Instances For
Equations
- OrderRingHom.instInhabitedOrderRingHom α = { default := OrderRingHom.id α }
Composition of two OrderRingHom
s as an OrderRingHom
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- OrderRingHom.instPreorderOrderRingHom = Preorder.lift DFunLike.coe
Equations
- OrderRingHom.instPartialOrderOrderRingHomToPreorder = PartialOrder.lift (fun (f : α →+*o β) => ⇑f) (_ : Function.Injective fun (f : α →+*o β) => ⇑f)
Ordered ring isomorphisms #
Equations
- (_ : OrderRingIsoClass (α ≃+*o β) α β) = (_ : OrderRingIsoClass (α ≃+*o β) α β)
Equations
- OrderRingIso.instInhabitedOrderRingIso α = { default := OrderRingIso.refl α }
Composition of OrderRingIso
s as an OrderRingIso
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Reinterpret an ordered ring isomorphism as an ordered ring homomorphism.
Equations
- OrderRingIso.toOrderRingHom f = { toRingHom := RingEquiv.toRingHom f.toRingEquiv, monotone' := (_ : ∀ (x x_1 : α), x ≤ x_1 → f x ≤ f x_1) }
Instances For
Uniqueness #
There is at most one ordered ring homomorphism from a linear ordered field to an archimedean linear ordered field. Reciprocally, such an ordered ring homomorphism exists when the codomain is further conditionally complete.
There is at most one ordered ring homomorphism from a linear ordered field to an archimedean linear ordered field.
Equations
- (_ : Subsingleton (α →+*o β)) = (_ : Subsingleton (α →+*o β))
There is at most one ordered ring isomorphism between a linear ordered field and an archimedean linear ordered field.
Equations
- (_ : Subsingleton (α ≃+*o β)) = (_ : Subsingleton (α ≃+*o β))
There is at most one ordered ring isomorphism between an archimedean linear ordered field and a linear ordered field.
Equations
- (_ : Subsingleton (α ≃+*o β)) = (_ : Subsingleton (α ≃+*o β))