theorem
List.Chain'.nodup_of_trans_irreflex
{α : Type u_1}
{l : List α}
{R : α → α → Prop}
(R_trans : Transitive R)
(R_irrefl : Irreflexive R)
(h_chain : List.Chain' R l)
:
l.Nodup
Equations
- ⋯ = ⋯
theorem
List.chains_finite
{α : Type u_1}
{R : α → α → Prop}
[DecidableEq α]
[Finite α]
(R_trans : Transitive R)
(R_irrefl : Irreflexive R)
:
Finite { l : List α // List.Chain' R l }
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
LO.Kripke.Frame.TreeUnravelling.not_nil
{F : LO.Kripke.Frame}
{r : F.World}
{c : (F.TreeUnravelling r).World}
:
↑c ≠ []
theorem
LO.Kripke.Frame.TreeUnravelling.rel_length
{F : LO.Kripke.Frame}
{r : F.World}
{x : (F.TreeUnravelling r).World}
{y : (F.TreeUnravelling r).World}
(h : x ≺ y)
:
(↑x).length < (↑y).length
theorem
LO.Kripke.Frame.TreeUnravelling.irreflexive
{F : LO.Kripke.Frame}
{r : F.World}
:
Irreflexive (F.TreeUnravelling r).Rel
theorem
LO.Kripke.Frame.TreeUnravelling.assymetric
{F : LO.Kripke.Frame}
{r : F.World}
:
Assymetric (F.TreeUnravelling r).Rel
def
LO.Kripke.Frame.TreeUnravelling.PMorphism
(F : LO.Kripke.Frame)
(r : F.World)
:
F.TreeUnravelling r →ₚ F
Equations
- LO.Kripke.Frame.TreeUnravelling.PMorphism F r = { toFun := fun (c : (F.TreeUnravelling r).World) => (↑c).getLast ⋯, forth := ⋯, back := ⋯ }
Instances For
@[reducible, inline]
Instances For
@[simp]
theorem
LO.Kripke.Frame.TransitiveTreeUnravelling.not_nil
{F : LO.Kripke.Frame}
{r : F.World}
{c : (F.TransitiveTreeUnravelling r).World}
:
↑c ≠ []
theorem
LO.Kripke.Frame.TransitiveTreeUnravelling.rel_length
{F : LO.Kripke.Frame}
{r : F.World}
{x : (F.TransitiveTreeUnravelling r).World}
{y : (F.TransitiveTreeUnravelling r).World}
(Rxy : x ≺ y)
:
(↑x).length < (↑y).length
theorem
LO.Kripke.Frame.TransitiveTreeUnravelling.rel_transitive
{F : LO.Kripke.Frame}
{r : F.World}
:
Transitive (F.TransitiveTreeUnravelling r).Rel
theorem
LO.Kripke.Frame.TransitiveTreeUnravelling.rel_asymmetric
{F : LO.Kripke.Frame}
{r : F.World}
:
Assymetric (F.TransitiveTreeUnravelling r).Rel
theorem
LO.Kripke.Frame.TransitiveTreeUnravelling.rel_def
{F : LO.Kripke.Frame}
{r : F.World}
{x : (F.TransitiveTreeUnravelling r).World}
{y : (F.TransitiveTreeUnravelling r).World}
:
theorem
LO.Kripke.Frame.TransitiveTreeUnravelling.rooted
{F : LO.Kripke.Frame}
{r : F.World}
:
(F.TransitiveTreeUnravelling r).isRooted ⟨[r], ⋯⟩
def
LO.Kripke.Frame.TransitiveTreeUnravelling.pMorphism
(F : LO.Kripke.Frame)
(F_trans : Transitive F.Rel)
(r : F.World)
:
F.TransitiveTreeUnravelling r →ₚ F
Equations
- LO.Kripke.Frame.TransitiveTreeUnravelling.pMorphism F F_trans r = (LO.Kripke.Frame.TreeUnravelling.PMorphism F r).TransitiveClosure F_trans
Instances For
Equations
- M.TreeUnravelling r = { Frame := M.Frame.TreeUnravelling r, Valuation := fun (c : (M.Frame.TreeUnravelling r).World) (a : α) => M.Valuation ((↑c).getLast ⋯) a }
Instances For
def
LO.Kripke.Model.TreeUnravelling.pMorphism
{α : Type u_1}
(M : LO.Kripke.Model α)
(r : M.World)
:
M.TreeUnravelling r →ₚ M
Equations
Instances For
def
LO.Kripke.Model.TransitiveTreeUnravelling
{α : Type u_1}
(M : LO.Kripke.Model α)
(r : M.World)
:
Equations
- M.TransitiveTreeUnravelling r = { Frame := M.Frame.TransitiveTreeUnravelling r, Valuation := fun (c : (M.Frame.TransitiveTreeUnravelling r).World) (a : α) => M.Valuation ((↑c).getLast ⋯) a }
Instances For
def
LO.Kripke.Model.TransitiveTreeUnravelling.pMorphism
{α : Type u_1}
(M : LO.Kripke.Model α)
(M_trans : Transitive M.Frame.Rel)
(r : M.World)
:
M.TransitiveTreeUnravelling r →ₚ M
Equations
- LO.Kripke.Model.TransitiveTreeUnravelling.pMorphism M M_trans r = LO.Kripke.Model.PseudoEpimorphism.mkAtomic (LO.Kripke.Frame.TransitiveTreeUnravelling.pMorphism M.Frame M_trans r) ⋯
Instances For
- World : Type u_1
- Rel : Rel self.World self.World
- World_nonempty : Nonempty self.World
- World_finite : Finite self.World
- root : self.World
- root_rooted : self.isRooted self.root
- default : self.World
- rel_assymetric : Assymetric self.Rel
- rel_transitive : Transitive self.Rel
Instances For
theorem
LO.Kripke.FiniteTransitiveTree.rel_assymetric
(self : LO.Kripke.FiniteTransitiveTree)
:
Assymetric self.Rel
theorem
LO.Kripke.FiniteTransitiveTree.rel_transitive
(self : LO.Kripke.FiniteTransitiveTree)
:
Transitive self.Rel
@[reducible, inline]
Instances For
@[reducible, inline]
Instances For
Equations
- LO.Kripke.«term_#» = Lean.ParserDescr.trailingNode `LO.Kripke.term_# 1024 1024 (Lean.ParserDescr.symbol "#")
Instances For
@[reducible, inline]
abbrev
LO.Kripke.Model.FiniteTransitiveTreeUnravelling
{α : Type u_1}
(M : LO.Kripke.Model α)
(r : M.World)
:
Instances For
- Valuation : LO.Kripke.Valuation self.Tree.toFrame α
Instances For
@[reducible, inline]
abbrev
LO.Kripke.FiniteTransitiveTreeModel.World
{α : Type u_1}
(M : LO.Kripke.FiniteTransitiveTreeModel α)
:
Type u_2
Equations
- M.World = M.Tree.World
Instances For
@[reducible, inline]
abbrev
LO.Kripke.FiniteTransitiveTreeModel.root
{α : Type u_1}
(M : LO.Kripke.FiniteTransitiveTreeModel α)
:
M.World
Equations
- M.root = M.Tree.root
Instances For
@[reducible, inline]
abbrev
LO.Kripke.FiniteTransitiveTreeModel.toFrame
{α : Type u_1}
(M : LO.Kripke.FiniteTransitiveTreeModel α)
:
Equations
- M.toFrame = M.Tree.toFrame
Instances For
@[reducible, inline]
abbrev
LO.Kripke.FiniteTransitiveTreeModel.toModel
{α : Type u_1}
(M : LO.Kripke.FiniteTransitiveTreeModel α)
:
Equations
- M.toModel = { Frame := M.toFrame, Valuation := M.Valuation }
Instances For
Equations
- LO.Kripke.FiniteTransitiveTreeModel.instCoeModel = { coe := LO.Kripke.FiniteTransitiveTreeModel.toModel }
Equations
- LO.Kripke.FiniteTransitiveTreeModel.instCoeSortType = { coe := LO.Kripke.FiniteTransitiveTreeModel.World }
@[reducible, inline]
abbrev
LO.Kripke.FiniteFrame.FiniteTransitiveTreeUnravelling
(F : LO.Kripke.FiniteFrame)
[DecidableEq F.World]
(F_trans : Transitive F.Rel)
(F_irrefl : Irreflexive F.Rel)
(r : F.World)
:
Equations
- One or more equations did not get rendered due to their size.