Ordered First-Ordered Structures #
This file defines ordered first-order languages and structures, as well as their theories.
Main Definitions #
FirstOrder.Language.order
is the language consisting of a single relation representing≤
.FirstOrder.Language.orderStructure
is the structure on an ordered type, assigning the symbol representing≤
to the actual relation≤
.FirstOrder.Language.IsOrdered
points out a specific symbol in a language as representing≤
.FirstOrder.Language.OrderedStructure
indicates that the≤
symbol in an ordered language is interpreted as the actual relation≤
in a particular structure.FirstOrder.Language.linearOrderTheory
and similar define the theories of preorders, partial orders, and linear orders.FirstOrder.Language.dlo
defines the theory of dense linear orders without endpoints, a particularly useful example in model theory.
Main Results #
PartialOrder
s model the theory of partial orders,LinearOrder
s model the theory of linear orders, and dense linear orders without endpoints modelLanguage.dlo
.
The language consisting of a single relation representing ≤
.
Instances For
Equations
- FirstOrder.Language.orderStructure = FirstOrder.Language.Structure.mk₂ Empty.elim Empty.elim Empty.elim Empty.elim fun (x : Unit) (x x_1 : M) => x ≤ x_1
Equations
- (_ : Subsingleton (FirstOrder.Language.order.Relations n)) = (_ : Subsingleton ((FirstOrder.Language.mk₂ Empty Empty Empty Empty Unit).Relations n))
A language is ordered if it has a symbol representing ≤
.
- leSymb : L.Relations 2
Instances
Joins two terms t₁, t₂
in a formula representing t₁ ≤ t₂
.
Equations
- FirstOrder.Language.Term.le t₁ t₂ = FirstOrder.Language.Relations.boundedFormula₂ FirstOrder.Language.leSymb t₁ t₂
Instances For
Joins two terms t₁, t₂
in a formula representing t₁ < t₂
.
Equations
Instances For
The language homomorphism sending the unique symbol ≤
of Language.order
to ≤
in an ordered
language.
Equations
- FirstOrder.Language.orderLHom L = FirstOrder.Language.LHom.mk₂ Empty.elim Empty.elim Empty.elim Empty.elim fun (x : Unit) => FirstOrder.Language.leSymb
Instances For
Equations
- FirstOrder.Language.instIsOrderedOrder = { leSymb := () }
The theory of preorders.
Equations
- FirstOrder.Language.preorderTheory L = {FirstOrder.Language.Relations.reflexive FirstOrder.Language.leSymb, FirstOrder.Language.Relations.transitive FirstOrder.Language.leSymb}
Instances For
The theory of partial orders.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The theory of linear orders.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A sentence indicating that an order has no top element: $\forall x, \exists y, \neg y \le x$.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A sentence indicating that an order has no bottom element: $\forall x, \exists y, \neg x \le y$.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A sentence indicating that an order is dense: $\forall x, \forall y, x < y \to \exists z, x < z \wedge z < y$.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The theory of dense linear orders without endpoints.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A structure is ordered if its language has a ≤
symbol whose interpretation is