- Oct 10, 2017
-
-
Ralf Jung authored
Remove an unused argument for `newcounter_mono_spec`. See merge request FP/iris-coq!70
-
Dan Frumin authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
- Oct 09, 2017
- Oct 07, 2017
-
-
Ralf Jung authored
-
- Oct 05, 2017
-
-
Robbert Krebbers authored
update stdpp See merge request FP/iris-coq!68
-
Hai Dang authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Robbert Krebbers authored
-
- Oct 04, 2017
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Ralf Jung authored
-
- Sep 28, 2017
-
-
Robbert Krebbers authored
-
Ralf Jung authored
-
- Sep 27, 2017
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
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`.
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Robbert Krebbers authored
Common tactic machinery for symbolic execution of pure reductions See merge request FP/iris-coq!64
-
Ralf Jung authored
-
- Sep 26, 2017
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
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`.
-
Ralf Jung authored
-
- Sep 25, 2017
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
This problem has been reported by Léon Gondelman. Before, when using, for example wp_alloc, in an expression like: ref (ref v) It would apply `tac_wp_alloc` to the outermost ref, after which it fails to establish that the argument `ref v` is a value. In this commit, other evaluation positions will be tried whenever it turn out that the argument of the construct is not a value. The same applies to store/cas/... I have implemented this by making use of the new `IntoVal` class.
-
Dan Frumin authored
-
Dan Frumin authored
Expression `e` such that `to_val e = Some v` is in the context gets reflected into value `v` together with the proof that `to_val e = Some v`. This is helpful for substitution and for `solve_to_val` operating on the reflected syntax.
-
Dan Frumin authored
-
Dan Frumin authored
This way `IntoLaterNEnvs` is ought to be computed less frequently
-
Dan Frumin authored
-