- Dec 23, 2020
-
-
Robbert Krebbers authored
-
- Dec 16, 2020
-
-
Simon Friis Vindum authored
-
Simon Friis Vindum authored
-
Simon Friis Vindum authored
-
Ralf Jung authored
-
- Dec 09, 2020
-
-
Ralf Jung authored
-
- Dec 04, 2020
-
-
Robbert Krebbers authored
This is an alternative to !591.
-
- Dec 02, 2020
-
-
Robbert Krebbers authored
This reverts merge request !591
-
- Dec 01, 2020
-
-
`iDestruct ("H" with "HP")` where "H" is persistent is supposed to consume "H" if it isn't a forall. Due to a bug in the tactic, this behavior was never triggered and "H" was always left alone.
-
- Nov 26, 2020
- Nov 11, 2020
-
-
Tej Chajed authored
This test is incompatible with Coq 8.8 and Coq 8.9, but Iris no longer supports those versions.
-
Tej Chajed authored
-
Tej Chajed authored
-
- Nov 10, 2020
- Nov 09, 2020
-
-
Ralf Jung authored
-
- Nov 03, 2020
-
-
Ralf Jung authored
-
- Oct 29, 2020
-
-
Ralf Jung authored
-
- Oct 27, 2020
-
-
Ralf Jung authored
-
- Oct 21, 2020
-
-
Ralf Jung authored
-
- Oct 10, 2020
-
-
Ralf Jung authored
-
- Oct 01, 2020
-
-
Robbert Krebbers authored
put it into a type class `BiPureForall`. This property does not hold for embeddings of classical logic into Coq.
-
- Sep 29, 2020
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
- Sep 28, 2020
-
-
Tej Chajed authored
A failing iIntros for implications should prettify the identifier before printing, and iIntros on something that isn't a wand or implication should say what couldn't be introduced (to clarify that `iIntros "HP HQ"` failed because of the HQ in particular, for example).
-
- Sep 24, 2020
-
-
Tej Chajed authored
`iDestruct H as "H1 H2"` produces an error that says the pattern should contain exactly one proper introduction pattern. When multiple patterns are provided, due to Ltac variable shadowing iDestructHypFindPat was instead reporting only the first pattern in the error message (and even that was printed as the parsed AST rather than the original string).
-
- Sep 21, 2020
-
-
Tej Chajed authored
The error handling for `iIntro (?)` and similar tactics didn't correctly report failures when the goal couldn't be turned into a universal quantifier. This is something missing from !482 due to no test triggering the error.
-
- Sep 14, 2020
- Sep 05, 2020
-
-
Robbert Krebbers authored
-
Robbert Krebbers authored
-
- Aug 12, 2020
-
-
Ralf Jung authored
-
- Jul 22, 2020
-
-
Fixes #337.
-
- Jul 21, 2020
-
-
Tej Chajed authored
Preserve identifiers in binders where possible, analogous to the support for destructing existentials in !479. Fixes #336.
-
Robbert Krebbers authored
-
When running `iDestruct "H" as (?) "H"`, use the name of the binder in "H". For example, if "H" has type `∃ y, Φ y`, we now use `y` as the name of the variable after freshening. Previously the name was always the equivalent of running `fresh H`. The implementation achieves this by forwarding the desired identifier name through the `IntoExist` typeclass. Identifiers are serialized in Gallina by using them as the name of a function of type `ident_name := unit -> unit`.
-
- Jul 15, 2020
-
-
Ralf Jung authored
-