Remove basic updates from the Iris model, and define them using plainly.
We define basic updates as: |==> P := (∀ Q, (P -∗ ■ Q) -∗ ■ Q) From this definitions, we can prove all laws of basic updates, apart from those related to frame preserving updates. For that, we need the following primitive rule: x ~~>: Φ → uPred_ownM x ∗ (∀ y, ⌜Φ y⌝ -∗ uPred_ownM y -∗ ■ R) ⊢ ■ R. So, in total, this gets rid of 1 primitive connective (|==>) and 5 primitive rules (those of `|==>`), which is replaced by one new primitive rule.
Showing
- _CoqProject 0 additions, 1 deletion_CoqProject
- theories/base_logic/bi.v 4 additions, 17 deletionstheories/base_logic/bi.v
- theories/base_logic/derived.v 34 additions, 0 deletionstheories/base_logic/derived.v
- theories/base_logic/double_negation.v 0 additions, 370 deletionstheories/base_logic/double_negation.v
- theories/base_logic/upred.v 10 additions, 61 deletionstheories/base_logic/upred.v
Loading
Please register or sign in to comment