Language of first-order logic #
This file defines the language of first-order logic.
LO.FirstOrder.Language.emptyis the empty language.LO.FirstOrder.Language.constant Cis a language with only constants of the elementC.LO.FirstOrder.Language.oRing,ℒₒᵣis the language of ordered ring.
Instances
instance
LO.FirstOrder.Language.instInhabitedFuncOfNatNatOfConstantInhabited
{L : Language}
[L.ConstantInhabited]
 :
Inhabited (L.Func 0)
Equations
- LO.FirstOrder.Language.empty = { Func := fun (x : ℕ) => PEmpty.{?u.5 + 1}, Rel := fun (x : ℕ) => PEmpty.{?u.5 + 1} }
 
Instances For
Equations
- LO.FirstOrder.Language.instInhabited = { default := LO.FirstOrder.Language.empty }
 
Equations
- LO.FirstOrder.Language.graph = { Func := LO.FirstOrder.Language.GraphFunc, Rel := LO.FirstOrder.Language.GraphRel }
 
Instances For
Equations
- LO.FirstOrder.Language.binary = { Func := fun (x : ℕ) => Empty, Rel := LO.FirstOrder.Language.BinaryRel }
 
Instances For
@[reducible]
Equations
- LO.FirstOrder.Language.equal = { Func := fun (x : ℕ) => Empty, Rel := LO.FirstOrder.Language.EqRel }
 
Instances For
Equations
- LO.FirstOrder.Language.instToStringFuncEqual k = { toString := fun (x : LO.FirstOrder.Language.equal.Func k) => "" }
 
Equations
- LO.FirstOrder.Language.instToStringRelEqual k = { toString := fun (x : LO.FirstOrder.Language.equal.Rel k) => "\\mathrm{Eq}" }
 
Equations
- LO.FirstOrder.Language.instDecidableEqFuncEqual k a b = Empty.casesOn (fun (x : LO.FirstOrder.Language.equal.Func k) => Decidable (x = b)) a
 
Equations
- One or more equations did not get rendered due to their size.
 
@[reducible]
Equations
- ℒₒᵣ = { Func := LO.FirstOrder.Language.ORing.Func, Rel := LO.FirstOrder.Language.ORing.Rel }
 
Instances For
Equations
- LO.FirstOrder.Language.termℒₒᵣ = Lean.ParserDescr.node `LO.FirstOrder.Language.termℒₒᵣ 1024 (Lean.ParserDescr.symbol "ℒₒᵣ")
 
Instances For
Equations
- One or more equations did not get rendered due to their size.
 
Equations
- One or more equations did not get rendered due to their size.
 
Equations
- One or more equations did not get rendered due to their size.
 
Equations
- One or more equations did not get rendered due to their size.
 
Equations
- One or more equations did not get rendered due to their size.
 
Equations
- One or more equations did not get rendered due to their size.
 
Equations
- LO.FirstOrder.Language.constant C = { Func := LO.FirstOrder.Language.Constant.Func C, Rel := fun (x : ℕ) => PEmpty.{?u.11 + 1} }
 
Instances For
Equations
@[reducible, inline]
Instances For
Equations
- LO.FirstOrder.Language.ofFunc F = { Func := F, Rel := fun (x : ℕ) => PEmpty.{?u.12 + 1} }
 
Instances For
Equations
Equations
- LO.FirstOrder.Language.sigma L = { Func := fun (k : ℕ) => (i : ι) × (L i).Func k, Rel := fun (k : ℕ) => (i : ι) × (L i).Rel k }
 
Instances For
Equations
Equations
- L.instStarAdd S = { star := Sum.inr LO.FirstOrder.Language.Star.star }
 
Equations
- L.instZeroAdd S = { zero := Sum.inl LO.FirstOrder.Language.Zero.zero }
 
Equations
- L.instOneAdd S = { one := Sum.inl LO.FirstOrder.Language.One.one }
 
Equations
- L.instAddAdd S = { add := Sum.inl LO.FirstOrder.Language.Add.add }
 
Equations
- L.instMulAdd S = { mul := Sum.inl LO.FirstOrder.Language.Mul.mul }
 
Equations
- L.instEqAdd S = { eq := Sum.inl LO.FirstOrder.Language.Eq.eq }
 
Equations
- L.instLTAdd S = { lt := Sum.inl LO.FirstOrder.Language.LT.lt }
 
Equations
- LO.FirstOrder.«term_→ᵥ_» = Lean.ParserDescr.trailingNode `LO.FirstOrder.«term_→ᵥ_» 25 26 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " →ᵥ ") (Lean.ParserDescr.cat `term 26))
 
Instances For
Instances For
Equations
Instances For
Equations
Instances For
def
LO.FirstOrder.Language.Hom.sigma
{ι : Type u_1}
(L : ι → Language)
(i : ι)
 :
(L i).Hom (Language.sigma L)
Equations
- LO.FirstOrder.Language.Hom.sigma L i = { func := fun {k : ℕ} (f : (L i).Func k) => ⟨i, f⟩, rel := fun {k : ℕ} (r : (L i).Rel k) => ⟨i, r⟩ }
 
Instances For
Equations
- One or more equations did not get rendered due to their size.
 
Instances For
- func (k : ℕ) : DecidableEq (L.Func k)
 - rel (k : ℕ) : DecidableEq (L.Rel k)
 
Instances
instance
LO.FirstOrder.instDecidableEqOfFuncOfDecidableEqRel
(L : Language)
[(k : ℕ) → DecidableEq (L.Func k)]
[(k : ℕ) → DecidableEq (L.Rel k)]
 :
L.DecidableEq
Equations
- LO.FirstOrder.instDecidableEqOfFuncOfDecidableEqRel L = { func := fun (x : ℕ) => inferInstance, rel := fun (x : ℕ) => inferInstance }
 
instance
LO.FirstOrder.instDecidableEqFuncOfDecidableEq
(L : Language)
[L.DecidableEq]
(k : ℕ)
 :
DecidableEq (L.Func k)
instance
LO.FirstOrder.instDecidableEqRelOfDecidableEq
(L : Language)
[L.DecidableEq]
(k : ℕ)
 :
DecidableEq (L.Rel k)
instance
LO.FirstOrder.instDecidableEqRelOfDecidableEq_1
(L : Language)
[L.DecidableEq]
(k : ℕ)
 :
DecidableEq (L.Rel k)