Combine `Atomic e` and `StronglyAtomic e` into `Atomic s e` and introduce `HeadAtomic s e`.
I saw no need for `stuckness_flip`: strong atomicity always works, while weak atomicity works only for expressions that are not stuck. Since this seemed unclear, I split lemma `wp_atomic'` up into `wp_strong_atomic` (parametric in the WP's `s`) and `wp_weak_atomic` (not). The proof mode instance is stated in terms of the derived rule `wp_atomic` (parametric in `s`).
Showing
- theories/heap_lang/lifting.v 1 addition, 1 deletiontheories/heap_lang/lifting.v
- theories/heap_lang/tactics.v 7 additions, 9 deletionstheories/heap_lang/tactics.v
- theories/program_logic/ectx_language.v 7 additions, 14 deletionstheories/program_logic/ectx_language.v
- theories/program_logic/hoare.v 2 additions, 15 deletionstheories/program_logic/hoare.v
- theories/program_logic/language.v 9 additions, 9 deletionstheories/program_logic/language.v
- theories/program_logic/weakestpre.v 25 additions, 27 deletionstheories/program_logic/weakestpre.v
- theories/tests/ipm_paper.v 1 addition, 1 deletiontheories/tests/ipm_paper.v
Loading
Please register or sign in to comment