- 25 May, 2016 1 commit
-
-
Robbert Krebbers authored
- Make the carrier argument of the constructors for the canonical structures cofeT and cmraT explicit. This way we make sure the carrier is properly exposed, instead of some alias of the carrier. - Make derived constructions (such as discreteC and discreteR) notations instead of definitions. This is yet again to make sure that the carrier is properly exposed. - Turn DRA into a canonical structure (it used to be a type class). This fixes some issues, notably it fixes some broken rewrites in algebra/sts and it makes canonical structures work properly with dec_agree.
-
- 22 May, 2016 1 commit
-
-
Robbert Krebbers authored
-
- 29 Mar, 2016 1 commit
-
-
Robbert Krebbers authored
Also remove some superfluous map_ prefixes.
-
- 15 Mar, 2016 1 commit
-
-
Robbert Krebbers authored
-
- 11 Mar, 2016 1 commit
-
-
Robbert Krebbers authored
The only drawback is that we have to restrict iprod to finite types, but that is fine.
-
- 10 Mar, 2016 2 commits
-
-
Ralf Jung authored
-
Robbert Krebbers authored
Thanks to Amin Timany for the suggestion.
-
- 08 Mar, 2016 2 commits
- 07 Mar, 2016 2 commits
-
-
Robbert Krebbers authored
So, only use the type class for contractive functors.
-
Ralf Jung authored
Add both non-expansive and contractive functors, and bundle them for the general Iris instance as well as the global functor construction This allows us to move the \later in the user-defined functor to any place we want. In particular, we can now have "\later (iProp -> iProp)" in the ghost CMRA.
-
- 06 Mar, 2016 1 commit
-
-
Robbert Krebbers authored
Since functor instances are just used as combinators, there is really no need for functors that are not contractive.
-
- 02 Mar, 2016 1 commit
-
-
Robbert Krebbers authored
This cleans up some ad-hoc stuff and prepares for a generalization of saved propositions.
-
- 01 Mar, 2016 1 commit
-
-
Robbert Krebbers authored
-
- 29 Feb, 2016 2 commits
- 26 Feb, 2016 3 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
It now also contains a non-expansiveness proof.
-
Robbert Krebbers authored
I have simplified the following CMRA axioms: cmra_unit_preservingN n x y : x ≼{n} y → unit x ≼{n} unit y; cmra_op_minus n x y : x ≼{n} y → x ⋅ y ⩪ x ≡{n}≡ y; By dropping off the step-index, so into: cmra_unit_preservingN x y : x ≼ y → unit x ≼ unit y; cmra_op_minus x y : x ≼ y → x ⋅ y ⩪ x ≡ y; The old axioms can be derived.
-
- 25 Feb, 2016 1 commit
-
-
Robbert Krebbers authored
The performance gain seems neglectable, unfortunatelly...
-
- 24 Feb, 2016 3 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
This way it behaves better for discrete CMRAs.
-
Robbert Krebbers authored
-
- 20 Feb, 2016 1 commit
-
-
Ralf Jung authored
-
- 18 Feb, 2016 2 commits
-
-
Ralf Jung authored
-
Robbert Krebbers authored
-
- 17 Feb, 2016 2 commits
-
-
Robbert Krebbers authored
simplify_equality => simplify_eq simplify_equality' => simplify_eq/= simplify_map_equality => simplify_map_eq simplify_map_equality' => simplify_map_eq/= simplify_option_equality => simplify_option_eq simplify_list_equality => simplify_list_eq f_equal' => f_equal/= The /= suffixes (meaning: do simpl) are inspired by ssreflect.
-
Robbert Krebbers authored
-
- 16 Feb, 2016 1 commit
-
-
Robbert Krebbers authored
The singleton maps notation is now also more consistent with the insert <[_ := _]> _ notation for maps.
-
- 14 Feb, 2016 2 commits
-
-
Robbert Krebbers authored
-
Ralf Jung authored
-
- 13 Feb, 2016 6 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Ralf Jung authored
-
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")
-
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.
-
- 11 Feb, 2016 3 commits
-
-
Robbert Krebbers authored
Also do some minor clean up.
-
Robbert Krebbers authored
-
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.
-