- Sep 22, 2017
-
- Aug 22, 2017
- Jul 31, 2017
-
-
Joshua Yanovski authored
-
- Mar 17, 2017
- Jan 10, 2017
- Jan 03, 2017
-
-
Zhen Zhang authored
-
Zhen Zhang authored
-
Zhen Zhang authored
-
- Dec 22, 2016
-
-
Zhen Zhang authored
-
Zhen Zhang authored
-
Zhen Zhang authored
- evmap is dropped - per-item invariant is implemented with inv-in-inv - peritem.v is simplified by proving an ad-hoc iter spec - update to latest iris - related fixes
-
- Dec 14, 2016
-
-
Ralf Jung authored
-
- Dec 13, 2016
- Dec 12, 2016
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
- Nov 16, 2016
-
-
Zhen Zhang authored
Improve build system & Update dependency See merge request !3
-
- Nov 14, 2016
-
-
Zhen Zhang authored
-
Zhen Zhang authored
-
- Nov 13, 2016
-
-
Zhen Zhang authored
-
Zhen Zhang authored
-
- Nov 08, 2016
-
-
Ralf Jung authored
Iris as submodule; CI support This adds Iris as a submodule, matching the structure in https://gitlab.mpi-sws.org/FP/LambdaRust-coq/. Furthermore, it sets up the CI so after pushing, the repo is built against the given Iris version (with a cache to avoid needless rebuilding of Iris). @zhangz if you have any unpushed changes, please push them. This branch moves all files to a subfolder `theories/`, so it will conflict with any other change. See merge request !2
-
- Nov 07, 2016
-
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
Simpler syncer specs This simplifies the syncer specs. The sequential syncer only is slightly improved, by changing ``` Definition synced R (f' f: val) := (□ ∀ P Q (x: val), ({{ R ★ P x }} f x {{ v, R ★ Q x v }}) → ({{ P x }} f' x {{ v, Q x v }}))%I. ``` such that `P`, `Q` don't factor in a dependency on `x` any more. Since all three are quantified at the same time, the two specs are equivalent -- and the one where `P` is not a predicate and `Q` is exactly the postcondition is arguably simpler: ``` Definition synced R (f f': val) := (□ ∀ P Q (x: val), ({{ R ★ P }} f x {{ v, R ★ Q v }}) → ({{ P }} f' x {{ Q }}))%I. ``` For the atomic spec, the changes are deeper. The currying on some location `l` is entirely removed. `is_atomic_syncer` better mirrors `is_syncer` from the sequential version. And finally, we use "original" atomic triples and not some modified version thereof (so `atomic_triple_base` is killed). TODO: Fix `atomic_pcas.v`, it relied on the location currying done by `atomic_sync.v`. However, I don't entirely grok that file. @zhangz could you give that a look? See merge request !1
-
- Nov 02, 2016
-
-
Ralf Jung authored
-
Ralf Jung authored
* The currying on some location l is entirely removed. * is_atomic_syncer better mirrors is_syncer from the sequential version. * We use "original" atomic triples and not some modified version thereof (so atomic_triple_base is killed). * Don't embed the Iris turnstile into Iris.
-
Ralf Jung authored
requires a new Iris version
-