Ordered First-Ordered Structures #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4. This file defines ordered first-order languages and structures, as well as their theories.
Main Definitions #
first_order.language.order
is the language consisting of a single relation representing≤
.first_order.language.order_Structure
is the structure on an ordered type, assigning the symbol representing≤
to the actual relation≤
.first_order.language.is_ordered
points out a specific symbol in a language as representing≤
.first_order.language.ordered_structure
indicates that the≤
symbol in an ordered language is interpreted as the actual relation≤
in a particular structure.first_order.language.linear_order_theory
and similar define the theories of preorders, partial orders, and linear orders.first_order.language.DLO
defines the theory of dense linear orders without endpoints, a particularly useful example in model theory.
Main Results #
partial_order
s model the theory of partial orders,linear_order
s model the theory of linear orders, and dense linear orders without endpoints modelTheory.DLO
.
The language consisting of a single relation representing ≤
.
Instances for first_order.language.order
- le_symb : L.relations 2
A language is ordered if it has a symbol representing ≤
.
Instances of this typeclass
Instances of other typeclasses for first_order.language.is_ordered
- first_order.language.is_ordered.has_sizeof_inst
Joins two terms t₁, t₂
in a formula representing t₁ ≤ t₂
.
Equations
- t₁.le t₂ = first_order.language.is_ordered.le_symb.bounded_formula₂ t₁ t₂
Joins two terms t₁, t₂
in a formula representing t₁ < t₂
.
The language homomorphism sending the unique symbol ≤
of language.order
to ≤
in an ordered
language.
Equations
Instances for first_order.language.order_Lhom
Equations
The theory of preorders.
Equations
Instances for first_order.language.preorder_theory
The theory of partial orders.
Equations
Instances for first_order.language.partial_order_theory
The theory of linear orders.
Equations
Instances for first_order.language.linear_order_theory
A sentence indicating that an order has no top element: $\forall x, \exists y, \neg y \le x$.
Equations
- L.no_top_order_sentence = (((first_order.language.term.var ∘ sum.inr) 1).le ((first_order.language.term.var ∘ sum.inr) 0)).not.ex.all
A sentence indicating that an order has no bottom element: $\forall x, \exists y, \neg x \le y$.
Equations
- L.no_bot_order_sentence = (((first_order.language.term.var ∘ sum.inr) 0).le ((first_order.language.term.var ∘ sum.inr) 1)).not.ex.all
A sentence indicating that an order is dense: $\forall x, \forall y, x < y \to \exists z, x < z \wedge z < y$.
Equations
- L.densely_ordered_sentence = ((((first_order.language.term.var ∘ sum.inr) 0).lt ((first_order.language.term.var ∘ sum.inr) 1)).imp (((first_order.language.term.var ∘ sum.inr) 0).lt ((first_order.language.term.var ∘ sum.inr) 2) ⊓ ((first_order.language.term.var ∘ sum.inr) 2).lt ((first_order.language.term.var ∘ sum.inr) 1)).ex).all.all
The theory of dense linear orders without endpoints.
Equations
Instances for first_order.language.DLO
A structure is ordered if its language has a ≤
symbol whose interpretation is