- 29 Jun, 2018 1 commit
-
-
Ralf Jung authored
-
- 28 Jun, 2018 1 commit
-
-
Ralf Jung authored
This restricts CAS to only be able to compare literals with literals, NONEV with NONEV and NONEV with SOMEV for a literal.
-
- 15 Jun, 2018 1 commit
-
-
Ralf Jung authored
* move PROP-envs definitions to environments.v so that we can control them without pulling in coq_tactics * use reduction-controlled `pm_default` for proofmode accessors
-
- 13 Jun, 2018 1 commit
-
-
Ralf Jung authored
-
- 08 Jun, 2018 1 commit
-
-
Ralf Jung authored
-
- 20 Apr, 2018 1 commit
-
-
Robbert Krebbers authored
Also, remove the inconsistency that `wp_expr_eval` succeeds on a goal that is not a WP.
-
- 19 Mar, 2018 1 commit
-
-
Robbert Krebbers authored
-
- 20 Feb, 2018 1 commit
-
-
Robbert Krebbers authored
We now use the `Maybe` prefix as also used for `Frame`: it indicates whether progress has been made by stripping of a later or not.
-
- 13 Feb, 2018 1 commit
-
-
Jacques-Henri Jourdan authored
-
- 24 Jan, 2018 1 commit
-
-
Jacques-Henri Jourdan authored
-
- 23 Jan, 2018 1 commit
-
-
Robbert Krebbers authored
This is to make sure that e.g. `//` in `iEval (rewrite .. // ..)` does not immediately close the goal by reflexivity.
-
- 13 Jan, 2018 1 commit
-
-
Robbert Krebbers authored
-
- 31 Dec, 2017 2 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
- 07 Dec, 2017 1 commit
-
-
Ralf Jung authored
-
- 05 Dec, 2017 2 commits
-
-
Robbert Krebbers authored
-
Ralf Jung authored
-
- 30 Nov, 2017 5 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
- 24 Nov, 2017 3 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Ralf Jung authored
-
- 23 Nov, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 09 Nov, 2017 3 commits
-
-
David Swasey authored
This reverts commit 913059d2.
-
David Swasey authored
-
- 08 Nov, 2017 3 commits
-
-
David Swasey authored
-
David Swasey authored
-
David Swasey authored
-
- 05 Nov, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 01 Nov, 2017 2 commits
-
-
Robbert Krebbers authored
This solves issue #100: the proof mode notation is sometimes not printed. As Ralf discovered, the problem is that there are two overlapping notations: ```coq Notation "P ⊢ Q" := (uPred_entails P Q). ``` And the "proof mode" notation: ``` Notation "Γ '--------------------------------------' □ Δ '--------------------------------------' ∗ Q" := (of_envs (Envs Γ Δ) ⊢ Q%I). ``` These two notations overlap, so, when having a "proof mode" goal of the shape `of_envs (Envs Γ Δ) ⊢ Q%I`, how do we know which notation is Coq going to pick for pretty printing this goal? As we have seen, this choice depends on the import order (since both notations appear in different files), and as such, Coq sometimes (unintendedly) uses the first notation instead of the latter. The idea of this commit is to wrap `of_envs (Envs Γ Δ) ⊢ Q%I` into a definition so that there is no ambiguity for the pretty printer anymore.
-
Robbert Krebbers authored
This class, in combination with `TCForall`, turns out the useful in LambdaRust to express that lists of expressions are values.
-
- 30 Oct, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 25 Sep, 2017 4 commits
-
-
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
-