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.orderis the language consisting of a single relation representing≤.first_order.language.order_Structureis the structure on an ordered type, assigning the symbol representing≤to the actual relation≤.first_order.language.is_orderedpoints out a specific symbol in a language as representing≤.first_order.language.ordered_structureindicates that the≤symbol in an ordered language is interpreted as the actual relation≤in a particular structure.first_order.language.linear_order_theoryand similar define the theories of preorders, partial orders, and linear orders.first_order.language.DLOdefines the theory of dense linear orders without endpoints, a particularly useful example in model theory.
Main Results #
partial_orders model the theory of partial orders,linear_orders 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