- Feb 15, 2016
- Feb 14, 2016
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
This works better with class interference.
-
Ralf Jung authored
-
Ralf Jung authored
-
- Feb 13, 2016
-
-
Ralf Jung authored
-
Ralf Jung authored
-
Robbert Krebbers authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
start the heap construction: load from a heap is done... store, CAS, and singleton (mapsto) to be done
-
Ralf Jung authored
On branch master modified: algebra/fin_maps.v Untracked files: heap_lang/heap.v no changes added to commit (use "git add" and/or "git commit -a")
-
Ralf Jung authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
Also, do some cleanup, like declaring Params instances.
-
Robbert Krebbers authored
(missed practically everything in the previous commit)
-
Robbert Krebbers authored
Also, make our redefinition of done more robust under different orders of Importing modules.
-
Ralf Jung authored
change statement of inv-open lemmas such that they do not force the invariant, and the 'inner step', to appear right next to each other
-
Ralf Jung authored
-
- Feb 12, 2016
-
-
Ralf Jung authored
-
Robbert Krebbers authored
-
- Feb 11, 2016
-
-
Robbert Krebbers authored
Also do some minor clean up.
-
Robbert Krebbers authored
-
Ralf Jung authored
globalC -> globalF New notation: iPropG, iFunctorG
-
Ralf Jung authored
Introduce the notion of "Frame Shift Assertions", and use to prove the rules about inv and auth at once for pvs and wp Yeah, the name is horrible... but on the plus side, I think it should be possible to show that atomic triples and atomic shifts are also frame shift assertions, and then we get all this stuff for them for free.
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
Instead, I separate it into a total function and a predicate describe whether the action is allowed or not. This has some advantages: * It is much easier to deal with total functions and predicates in Coq than with functions into option. * Already existing functions do not need to be wrapped. Instead, when using a local update you end up with a sensible side condition as a Coq Prop. * The definition of local updates (and all CMRA instances) no longer depend on option.
-
- Feb 10, 2016