def
Iris.COFE.OFunctor.Fix.Impl.A'
(F : (α β : Type u) → [OFE α] → [OFE β] → Type u)
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
:
Equations
- Iris.COFE.OFunctor.Fix.Impl.A' F 0 = ⟨ULift Unit, inferInstance⟩
- Iris.COFE.OFunctor.Fix.Impl.A' F n.succ = match Iris.COFE.OFunctor.Fix.Impl.A' F n with | ⟨A, snd⟩ => ⟨F A A, inferInstance⟩
Instances For
instance
Iris.COFE.OFunctor.Fix.Impl.instA'
{F : (α β : Type u) → [OFE α] → [OFE β] → Type u}
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
(n : Nat)
:
Equations
instance
Iris.COFE.OFunctor.Fix.Impl.instA
{F : (α β : Type u) → [OFE α] → [OFE β] → Type u}
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
(n : Nat)
:
Equations
def
Iris.COFE.OFunctor.Fix.Impl.up
(F : (α β : Type u) → [OFE α] → [OFE β] → Type u)
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
[inh : Inhabited (F (ULift Unit) (ULift Unit))]
(k : Nat)
:
Equations
- Iris.COFE.OFunctor.Fix.Impl.up F 0 = { f := fun (x : Iris.COFE.OFunctor.Fix.Impl.A F 0) => default, ne := ⋯ }
- Iris.COFE.OFunctor.Fix.Impl.up F n.succ = Iris.COFE.OFunctor.map (Iris.COFE.OFunctor.Fix.Impl.down F n) (Iris.COFE.OFunctor.Fix.Impl.up F n)
Instances For
def
Iris.COFE.OFunctor.Fix.Impl.down
(F : (α β : Type u) → [OFE α] → [OFE β] → Type u)
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
[inh : Inhabited (F (ULift Unit) (ULift Unit))]
(k : Nat)
:
Equations
- Iris.COFE.OFunctor.Fix.Impl.down F 0 = { f := fun (x : Iris.COFE.OFunctor.Fix.Impl.A F (0 + 1)) => { down := () }, ne := ⋯ }
- Iris.COFE.OFunctor.Fix.Impl.down F n.succ = Iris.COFE.OFunctor.map (Iris.COFE.OFunctor.Fix.Impl.up F n) (Iris.COFE.OFunctor.Fix.Impl.down F n)
Instances For
def
Iris.COFE.OFunctor.Fix.Impl.Tower.proj
{F : (α β : Type u) → [OFE α] → [OFE β] → Type u}
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
[inh : Inhabited (F (ULift Unit) (ULift Unit))]
(k : Nat)
:
Equations
- Iris.COFE.OFunctor.Fix.Impl.Tower.proj k = { f := fun (x : Iris.COFE.OFunctor.Fix.Impl.Tower F) => x.val k, ne := ⋯ }
Instances For
def
Iris.COFE.OFunctor.Fix.Impl.embed
{F : (α β : Type u) → [OFE α] → [OFE β] → Type u}
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
[inh : Inhabited (F (ULift Unit) (ULift Unit))]
{k i : Nat}
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Iris.COFE.OFunctor.Fix.Impl.Tower.embed
{F : (α β : Type u) → [OFE α] → [OFE β] → Type u}
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
[inh : Inhabited (F (ULift Unit) (ULift Unit))]
(k : Nat)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
Iris.COFE.OFunctor.Fix.Impl.Tower.embed_up
{F : (α β : Type u) → [OFE α] → [OFE β] → Type u}
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
[inh : Inhabited (F (ULift Unit) (ULift Unit))]
{k : Nat}
(x : A F k)
:
OFE.Equiv ((Tower.embed (k + 1)).f ((up F k).f x)) ((Tower.embed k).f x)
instance
Iris.COFE.OFunctor.Fix.Impl.instInhabitedTower
{F : (α β : Type u) → [OFE α] → [OFE β] → Type u}
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
[inh : Inhabited (F (ULift Unit) (ULift Unit))]
:
Equations
- Iris.COFE.OFunctor.Fix.Impl.instInhabitedTower = { default := (Iris.COFE.OFunctor.Fix.Impl.Tower.embed 0).f { down := () } }
def
Iris.COFE.OFunctor.Fix.Impl.unfoldChain
{F : (α β : Type u) → [OFE α] → [OFE β] → Type u}
[OFunctorContractive F]
[(α : Type u) → [inst : COFE α] → IsCOFE (F α α)]
[inh : Inhabited (F (ULift Unit) (ULift Unit))]
(X : Tower F)
:
Equations
- One or more equations did not get rendered due to their size.