- 30 Oct, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 25 Oct, 2017 8 commits
-
-
Robbert Krebbers authored
Replace/remove some occurences of `persistently` into `persistent` where the property instead of the modality is used.
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
Rename `UCMRA` → `Ucmra` Rename `CMRA` → `Cmra` Rename `OFE` → `Ofe` (`Ofe` was already used partially, but many occurences were missing) Rename `STS` → `Sts` Rename `DRA` → `Dra`
-
Robbert Krebbers authored
-
Robbert Krebbers authored
I have reimplemented the tactic for introduction of ∀s/pures using type classes, which directly made it much more modular.
-
Robbert Krebbers authored
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.
-
- 27 Sep, 2017 1 commit
-
-
Robbert Krebbers authored
This causes a bit of backwards incompatibility: it may now succeed with later stripping below unlocked/TC transparent definitions. This problem actually occured for `wsat`.
-
- 26 Sep, 2017 1 commit
-
-
Robbert Krebbers authored
We used to normalize the goal, and then checked whether it was of a certain shape. Since `uPred_valid P` normalized to `True ⊢ P`, there was no way of making a distinction between the two, hence `True ⊢ P` was treated as `uPred_valid P`. In this commit, I use type classes to check whether the goal is of a certain shape. Since we declared `uPred_valid` as `Typeclasses Opaque`, we can now make a distinction between `True ⊢ P` and `uPred_valid P`.
-
- 21 Sep, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 20 Sep, 2017 2 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
In order to do that, we need to quantify over non-expansive predicates instead of arbitrary predicates.
-
- 18 Sep, 2017 2 commits
-
-
Robbert Krebbers authored
That caused some problems, e.g.: From iris.base_logic Require Export fix. Gave: Syntax error: [constr:global] expected after [export_token] (in [vernac:gallina_ext]).
-
Robbert Krebbers authored
-
- 17 Sep, 2017 4 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
For obsolete reasons, that no longer seem to apply, we used ∅ as the unit.
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
- 28 Aug, 2017 1 commit
-
-
Robbert Krebbers authored
- Use Φ and Ψ for predicates. - Use _1 and _2 suffixes for the different directions of a lemma. - Not all lemmas started with _uPred; we do not let the bigop lemmas (for instance) start with uPred_ either, so I just got rid of the prefix.
-
- 24 Aug, 2017 3 commits
- 23 Aug, 2017 1 commit
-
-
Ralf Jung authored
-
- 22 Aug, 2017 1 commit
-
-
Ralf Jung authored
Implementation is by Robbert <FP/iris-atomic!5 (comment 19496)>
-
- 20 Aug, 2017 1 commit
-
-
Robbert Krebbers authored
This makes it easier to frame or introduce some modalities before introducing universal quantifiers.
-
- 17 Aug, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 07 Aug, 2017 4 commits
-
-
Jacques-Henri Jourdan authored
-
Jacques-Henri Jourdan authored
-
Jacques-Henri Jourdan authored
-
Jacques-Henri Jourdan authored
-
- 06 Aug, 2017 1 commit
-
-
Jacques-Henri Jourdan authored
-
- 27 Jun, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 13 Jun, 2017 3 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
It can be derived, thanks to Ales for noticing!
-
- 12 Jun, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 08 Jun, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 12 May, 2017 1 commit
-
-
Robbert Krebbers authored
-