- 22 Feb, 2017 2 commits
-
-
Robbert Krebbers authored
There is no need to restrict the type class using Hint Mode, we have a default instance that will always be used first. In case of evars, the default instance should apply. The reason for this change is that `iAssumption` should be able to prove `H : ?e |- P` and `H : P |- ?e`. The former Hint Mode prevented it from doing that.
-
Robbert Krebbers authored
-
- 21 Feb, 2017 1 commit
-
-
Robbert Krebbers authored
This fixes issue #72.
-
- 18 Feb, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 15 Feb, 2017 7 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Ralf Jung authored
-
Janno authored
-
- 13 Feb, 2017 2 commits
-
-
Robbert Krebbers authored
-
Jacques-Henri Jourdan authored
When using [iAssert ... with ">[]"], we should not use [tac_assert_persistent], and eliminate the modality instead. This patch is still not ideal, because some modalities (e.g., later) preserve persistence.
-
- 12 Feb, 2017 1 commit
-
-
Robbert Krebbers authored
For example, when having `"H" : ∀ x : Z, P x`, using `iSpecialize ("H" $! (0:nat))` now works. We do this by first resolving the `IntoForall` type class, and then instantiating the quantifier.
-
- 11 Feb, 2017 3 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
Instead of doing all the instantiations by invoking a single type class search, it now performs the instantiations by invoking individual type class searches. This a.) gives better error messages and b.) works when `xj` depends on `xi`.
-
Robbert Krebbers authored
In the following ways: - When having `P → Q` it will now also work when the spatial context is non-empty. - When having `∀ x : A, Q` it will now do an `iIntros (_)`.
-
- 09 Feb, 2017 2 commits
-
-
Robbert Krebbers authored
In this case, we cannot use all the hypotheses for proving the premises as well as for the remaining goal.
-
Robbert Krebbers authored
-
- 06 Feb, 2017 1 commit
-
-
Ralf Jung authored
-
- 30 Jan, 2017 4 commits
-
-
Robbert Krebbers authored
This fixes issue #57. I considered supporting these introduction patterns also in a nested fashion -- for example allowing `iDestruct foo as [H1 [{H1} H1 /= H2|H2]` -- but that turned out to be quite difficult. Where should we allow `/=`, `{H}` and `{$H}` exactly. Clearly something like `>/=` makes no sense, unless we adopt to some kind of 'stack like' semantics for introduction patterns as in ssreflect. Alternatively, we could only allow these patterns in the branches of the destructing introduction pattern `[... | ... | ...]` but that brings other complications, e.g.: - What to do with `(H1 & /= & H3)`? - How to distinguish the introduction patterns `[H _]` and `[_ H]` for destructing a spatial conjunction? We cannot simply match on the shape of the introduction pattern anymore, because one could also write `[_ H /=]`.
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
- 29 Jan, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 27 Jan, 2017 1 commit
-
-
Ralf Jung authored
-
- 26 Jan, 2017 1 commit
-
-
Robbert Krebbers authored
TODO: document the setup of the IntoWand and WandWeaken type classes and the tricks using Hint Mode.
-
- 24 Jan, 2017 4 commits
-
-
Robbert Krebbers authored
This fixes issue #67.
-
Robbert Krebbers authored
-
Robbert Krebbers authored
It now copies the hypothesis when: 1.) it is persistent 2.) when destructing it requires a universal quantifier to be instantiated. The new behavior is implemented using a type class (called CopyDestruct) so that it can easily be extended.
-
Robbert Krebbers authored
-
- 23 Jan, 2017 3 commits
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
- 22 Jan, 2017 2 commits
-
-
Robbert Krebbers authored
This fixes issue #51.
-
Robbert Krebbers authored
This fixes issue #62.
-
- 20 Jan, 2017 2 commits
-
-
Robbert Krebbers authored
The error message accidentally got removed in e0789039.
-
Robbert Krebbers authored
-
- 12 Jan, 2017 1 commit
-
-
Robbert Krebbers authored
-
- 11 Jan, 2017 1 commit
-
-
Robbert Krebbers authored
-