Leonardo de Moura
4947215325
feat: improve funext support in grind ( #7892 )
...
This PR improves the support for `funext` in `grind`. We will push
another PR to minimize the number of case-splits later.
2025-04-10 01:57:27 +00:00
Leonardo de Moura
ba1c1258d7
feat: case split on implications in grind ( #7864 )
...
This PR adds support to `grind` for case splitting on implications of
the form `p -> q` and `(h : p) -> q h`. See the new option `(splitImp :=
true)`.
2025-04-08 00:10:43 +00:00
Leonardo de Moura
a3b83f7ca9
feat: improve Bool normalization in grind ( #7862 )
...
This PR improves the normalization of `Bool` terms in `grind`. Recall
that `grind` currently does not case split on Boolean terms to reduce
the size of the search space.
2025-04-07 22:15:32 +00:00
Kim Morrison
b0acdef433
chore: a failing grind test about Bool equality ( #7850 )
2025-04-07 07:28:28 +00:00
Kim Morrison
0f2ede45d5
chore: another failing grind test ( #7848 )
...
This PR adds another failing test case for `grind`.
2025-04-07 06:43:45 +00:00
Kim Morrison
8a373cbebe
chore: add failing grind tests about decide ( #7845 )
2025-04-07 04:05:20 +00:00
Leonardo de Moura
5f2f010d66
fix: missing forall normalization rules in grind ( #7808 )
...
This PR adds missing forall normalization rules to `grind`.
2025-04-03 22:57:49 +00:00
Leonardo de Moura
551d6cf28b
feat: function composition normalization rules in grind ( #7803 )
...
This PR adds normalization rules for function composition to `grind`.
2025-04-03 17:00:25 +00:00
Kim Morrison
680cb0ad5a
chore: more failing test cases for grind ( #7801 )
...
Adds more failing test cases for grind.
2025-04-03 10:12:47 +00:00
Leonardo de Moura
2979830120
fix: Bool disequality propagation in grind ( #7781 )
...
This PR adds a new propagation rule for `Bool` disequalities to `grind`.
It now propagates `x = true` (`x = false`) from the disequality `x =
false` (`x = true`). It ensures we don't have to perform case analysis
on `x` to learn this fact. See tests.
2025-04-01 22:12:20 +00:00
Leonardo de Moura
27084f6646
fix: missing propagation rules for non decidable lawful BEq in grind ( #7778 )
...
This PR adds missing propagation rules for `LawfulBEq A` to `grind`.
They are needed in a context where the instance `DecidableEq A` is not
available. See new test.
2025-04-01 20:15:01 +00:00
Leonardo de Moura
8ff05f9760
feat: improve grind equality proof discharger ( #7776 )
...
This PR improves the equality proof discharger used by the E-matching
procedure in `grind`.
2025-04-01 18:02:38 +00:00
Kim Morrison
50cec261fc
chore: failing test cases for grind proving List lemmas ( #7767 )
2025-04-01 03:56:08 +00:00
Leonardo de Moura
1d47360099
fix: transparency setting when computing congruence lemmas in grind ( #7760 )
...
This PR ensures `grind` is using the default transparency setting when
computing auxiliary congruence lemmas.
2025-03-31 20:52:36 +00:00
Kim Morrison
c8ee006f91
chore: recording aspirational tests for grind ( #7744 )
2025-03-31 04:13:26 +00:00