Generalize update tactics into iMod and iModIntro for modalities.
There are now two proof mode tactics for dealing with modalities: - `iModIntro` : introduction of a modality - `iMod pm_trm as (x1 ... xn) "ipat"` : eliminate a modality The behavior of these tactics can be controlled by instances of the `IntroModal` and `ElimModal` type class. We have declared instances for later, except 0, basic updates and fancy updates. The tactic `iMod` is flexible enough that it can also eliminate an updates around a weakest pre, and so forth. The corresponding introduction patterns of these tactics are `!>` and `>`. These tactics replace the tactics `iUpdIntro`, `iUpd` and `iTimeless`. Source of backwards incompatability: the introduction pattern `!>` is used for introduction of arbitrary modalities. It used to introduce laters by stripping of a later of each hypotheses.
Showing
- ProofMode.md 19 additions, 14 deletionsProofMode.md
- heap_lang/adequacy.v 1 addition, 1 deletionheap_lang/adequacy.v
- heap_lang/heap.v 14 additions, 14 deletionsheap_lang/heap.v
- heap_lang/lib/barrier/proof.v 22 additions, 22 deletionsheap_lang/lib/barrier/proof.v
- heap_lang/lib/counter.v 24 additions, 24 deletionsheap_lang/lib/counter.v
- heap_lang/lib/par.v 1 addition, 1 deletionheap_lang/lib/par.v
- heap_lang/lib/spawn.v 7 additions, 7 deletionsheap_lang/lib/spawn.v
- heap_lang/lib/spin_lock.v 8 additions, 8 deletionsheap_lang/lib/spin_lock.v
- heap_lang/lib/ticket_lock.v 19 additions, 19 deletionsheap_lang/lib/ticket_lock.v
- program_logic/adequacy.v 15 additions, 15 deletionsprogram_logic/adequacy.v
- program_logic/auth.v 9 additions, 9 deletionsprogram_logic/auth.v
- program_logic/boxes.v 16 additions, 16 deletionsprogram_logic/boxes.v
- program_logic/cancelable_invariants.v 3 additions, 3 deletionsprogram_logic/cancelable_invariants.v
- program_logic/counter_examples.v 11 additions, 11 deletionsprogram_logic/counter_examples.v
- program_logic/ectx_lifting.v 1 addition, 1 deletionprogram_logic/ectx_lifting.v
- program_logic/fancy_updates.v 19 additions, 17 deletionsprogram_logic/fancy_updates.v
- program_logic/hoare.v 2 additions, 2 deletionsprogram_logic/hoare.v
- program_logic/invariants.v 6 additions, 6 deletionsprogram_logic/invariants.v
- program_logic/lifting.v 9 additions, 9 deletionsprogram_logic/lifting.v
- program_logic/sts.v 8 additions, 8 deletionsprogram_logic/sts.v
Loading
Please register or sign in to comment