Make `iDestruct ... as (cpat) "..."` work on '⌜φ⌝ ∧ P` and `⌜φ⌝ ∗ P`.
The advantage is that we can directly use a Coq introduction pattern `cpat` to perform actions to the pure assertion. Before, this had to be done in several steps: iDestruct ... as "[Htmp ...]"; iDestruct "Htmp" as %cpat. That is, one had to introduce a temporary name. I expect this to be quite useful in various developments as many of e.g. our invariants are written as: ∃ x1 .. x2, ⌜ pure stuff ⌝ ∗ spacial stuff.
Showing
- theories/base_logic/lib/boxes.v 9 additions, 9 deletionstheories/base_logic/lib/boxes.v
- theories/base_logic/lib/invariants.v 2 additions, 2 deletionstheories/base_logic/lib/invariants.v
- theories/base_logic/lib/wsat.v 2 additions, 2 deletionstheories/base_logic/lib/wsat.v
- theories/heap_lang/lib/spawn.v 1 addition, 1 deletiontheories/heap_lang/lib/spawn.v
- theories/heap_lang/lib/spin_lock.v 2 additions, 2 deletionstheories/heap_lang/lib/spin_lock.v
- theories/heap_lang/lib/ticket_lock.v 3 additions, 3 deletionstheories/heap_lang/lib/ticket_lock.v
- theories/program_logic/adequacy.v 3 additions, 4 deletionstheories/program_logic/adequacy.v
- theories/program_logic/ownp.v 2 additions, 2 deletionstheories/program_logic/ownp.v
- theories/proofmode/class_instances.v 13 additions, 0 deletionstheories/proofmode/class_instances.v
- theories/proofmode/classes.v 27 additions, 0 deletionstheories/proofmode/classes.v
- theories/tests/list_reverse.v 1 addition, 1 deletiontheories/tests/list_reverse.v
- theories/tests/tree_sum.v 1 addition, 1 deletiontheories/tests/tree_sum.v
Loading
Please register or sign in to comment