Entails #
Logic #
instance
Iris.BI.instLeftIdBiEntailsPureFalseOr
{PROP : Type u_1}
[BI PROP]
:
Std.LeftId BiEntails iprop(False) or
instance
Iris.BI.instRightIdBiEntailsPureFalseOr
{PROP : Type u_1}
[BI PROP]
:
Std.RightId BiEntails iprop(False) or
BI #
Pure #
Affine #
Affine instances #
Absorbing #
Absorbing instances #
Affine / Absorbing Propositions #
instance
Iris.BI.instLeftIdBiEntailsPureTrueSepOfBIAffine
{PROP : Type u_1}
[BI PROP]
[BIAffine PROP]
:
instance
Iris.BI.instRightIdBiEntailsPureTrueSepOfBIAffine
{PROP : Type u_1}
[BI PROP]
[BIAffine PROP]
:
instance
Iris.BI.instBIPositiveOfBIAffine
{PROP : Type u_1}
[BI PROP]
[BIAffine PROP]
:
BIPositive PROP
Properties of the persistence modality #
Persistence instances #
instance
Iris.BI.and_persistent
{PROP : Type u_1}
[BI PROP]
(P Q : PROP)
[Persistent P]
[Persistent Q]
:
Persistent iprop(P ∧ Q)
instance
Iris.BI.or_persistent
{PROP : Type u_1}
[BI PROP]
(P Q : PROP)
[Persistent P]
[Persistent Q]
:
Persistent iprop(P ∨ Q)
theorem
Iris.BI.sForall_persistent
{PROP : Type u_1}
[BI PROP]
[h : BIPersistentlyForall PROP]
(Ψ : PROP → Prop)
(H : ∀ (p : PROP), Ψ p → Persistent p)
:
Persistent (sForall Ψ)
instance
Iris.BI.forall_persistent
{PROP : Type u_1}
{α : Sort u_2}
[BI PROP]
[BIPersistentlyForall PROP]
(Ψ : α → PROP)
[h : ∀ (x : α), Persistent (Ψ x)]
:
Persistent («forall» fun (x : α) => Ψ x)
theorem
Iris.BI.sExists_persistent
{PROP : Type u_1}
[BI PROP]
(Ψ : PROP → Prop)
(H : ∀ (p : PROP), Ψ p → Persistent p)
:
Persistent (sExists Ψ)
instance
Iris.BI.exists_persistent
{PROP : Type u_1}
{α : Sort u_2}
[BI PROP]
(Ψ : α → PROP)
[h : ∀ (x : α), Persistent (Ψ x)]
:
Persistent («exists» fun (x : α) => Ψ x)
instance
Iris.BI.sep_persistent
{PROP : Type u_1}
[BI PROP]
(P Q : PROP)
[Persistent P]
[Persistent Q]
:
Persistent iprop(P ∗ Q)
The intuitionistic modality #
theorem
Iris.BI.intuitionistically_of_intuitionistic
{PROP : Type u_1}
[BI PROP]
{P : PROP}
[Affine P]
[Persistent P]
:
Conditional affinely modality #
instance
Iris.BI.affinelyIf_persistent
{PROP : Type u_1}
(p : Bool)
[BI PROP]
(P : PROP)
[Persistent P]
:
theorem
Iris.BI.affinelyIf_idem
{PROP : Type u_1}
{p : Bool}
[BI PROP]
[BIPositive PROP]
{P : PROP}
:
Conditional absorbingly modality #
instance
Iris.BI.absorbinglyIf_persistent
{PROP : Type u_1}
(p : Bool)
[BI PROP]
(P : PROP)
[Persistent P]
:
theorem
Iris.BI.affinelyIf_absorbinglyIf
{PROP : Type u_1}
{p : Bool}
[BI PROP]
[BIPositive PROP]
{P : PROP}
:
Conditional persistently #
theorem
Iris.BI.persistentlyIf_idem
{PROP : Type u_1}
{p : Bool}
[BI PROP]
[BIPositive PROP]
{P : PROP}
:
Conditional intuitionistically #
Properties of persistent propositions #
theorem
Iris.BI.persistently_iff
{PROP : Type u_1}
[BI PROP]
{P : PROP}
[Persistent P]
[Absorbing P]
:
theorem
Iris.BI.persistently_intro''
{PROP : Type u_1}
{Q : PROP}
[BI PROP]
{P : PROP}
[Persistent P]
(h : P ⊢ Q)
:
theorem
Iris.BI.persistent_and_affinely_sep_l_1
{PROP : Type u_1}
[BI PROP]
{P Q : PROP}
[Persistent P]
:
theorem
Iris.BI.persistent_and_affinely_sep_r_1
{PROP : Type u_1}
[BI PROP]
{P Q : PROP}
[Persistent Q]
:
theorem
Iris.BI.persistent_and_affinely_sep_l
{PROP : Type u_1}
[BI PROP]
{P Q : PROP}
[Persistent P]
[Absorbing P]
:
theorem
Iris.BI.persistent_and_affinely_sep_r
{PROP : Type u_1}
[BI PROP]
{P Q : PROP}
[Persistent Q]
[Absorbing Q]
:
theorem
Iris.BI.persistent_and_sep_1
{PROP : Type u_1}
[BI PROP]
{P Q : PROP}
[Std.TCOr (Persistent P) (Persistent Q)]
:
theorem
Iris.BI.absorbingly_affinely_intro_of_persistent
{PROP : Type u_1}
[BI PROP]
{P : PROP}
[Persistent P]
:
Reduction to boolean comparisons #
Later #
instance
Iris.BI.later_persistent
{PROP : Type u_1}
[BI PROP]
{P : PROP}
[Persistent P]
:
Persistent (later P)