Monotone step-indexed predicates over ordered resources.
Copyright (c) The Iris-Lean Contributors.
@[instance_reducible]
Equations
- Iris.instCoeOutValidAt = { coe := fun (x : Iris.ValidAt M n) => x.val }
The data of a UPred object is an indexed proposition over M (Bundled version)
The proposition asserted at a step index and valid resource.
Instances For
@[reducible, inline]
abbrev
Iris.UPredOF
(F : (α : Type u_1) → (β : Type u_2) → [COFE α] → [COFE β] → Type u_3)
[URFunctor F]
(α : Type u_2)
(β : Type u_1)
[COFE α]
[COFE β]
:
Type u_3
The contravariant predicate functor induced by a unital resource functor.
Equations
- Iris.UPredOF F A B = Iris.UPred (F B A)
Instances For
Pull a monotone step-indexed predicate back along a resource morphism.
Equations
- Iris.uPredMap f = { f := fun (P : Iris.UPred α) => { holds := fun (n : Nat) (x : Iris.ValidAt β n) => P.holds n { val := f.f x.val, property := ⋯ }, mono := ⋯ }, ne := ⋯ }
Instances For
@[instance_reducible]
instance
Iris.instOFunctorUPredOF
{F : (α : Type u_1) → (β : Type u_2) → [COFE α] → [COFE β] → Type u_3}
[URFunctor F]
:
COFE.OFunctor (UPredOF F)
Equations
- One or more equations did not get rendered due to their size.
@[instance_reducible]
instance
Iris.instUPredOFunctorContractive
{F : (α : Type u_1) → (β : Type u_2) → [COFE α] → [COFE β] → Type u_3}
[URFunctorContractive F]
:
Equations
- Iris.instUPredOFunctorContractive = { toOFunctor := Iris.instOFunctorUPredOF, map_contractive := ⋯ }