lean4-htt/tests/bench/sym
Leonardo de Moura 6de7100f69
feat: add Goal API for SymM + grind (#12143)
This PR adds an API for building symbolic simulation engines and
verification
condition generators that leverage `grind`. The API wraps `Sym`
operations to
work with `grind`'s `Goal` type, enabling lightweight symbolic execution
while
carrying `grind` state for discharge steps.

New operations on `Goal`:
- `mkGoal`: create a `Goal` from an `MVarId`
- `introN`, `intros`: introduce binders
- `apply`: apply backward rules
- `simp`, `simpIgnoringNoProgress`: simplify using `Sym.Simp`
- `internalize`, `internalizeAll`: add hypotheses to the E-graph
- `grind`: attempt to close the goal using `grind`
- `assumption`: close by matching a hypothesis

A new test demonstrates the API on a stateful program with conditionals,
using `grind` to discharge arithmetic side conditions.
2026-01-24 20:30:08 +00:00
..
add_sub_cancel.lean feat: add Goal API for SymM + grind (#12143) 2026-01-24 20:30:08 +00:00
meta_simp_1.lean chore: include free variables (#11894) 2026-01-04 18:51:18 +00:00
meta_simp_2.lean test: benchmarks for lambda-telescopes (#11929) 2026-01-08 00:20:03 +00:00
meta_simp_4.lean feat: simpForall and simpArrow in Sym.simp (#11950) 2026-01-09 06:20:04 +00:00
shallow_add_sub_cancel.lean feat: add Goal API for SymM + grind (#12143) 2026-01-24 20:30:08 +00:00
shallow_add_sub_cancel_grind.lean feat: add Goal API for SymM + grind (#12143) 2026-01-24 20:30:08 +00:00
simp_1.lean perf: optimize congruence proof construction in Sym.simp (#11974) 2026-01-11 23:00:19 +00:00
simp_2.lean test: benchmarks for lambda-telescopes (#11929) 2026-01-08 00:20:03 +00:00
simp_3.lean perf: optimize kernel type-checking for have-telescope simplification in Sym.simp (#11967) 2026-01-11 02:20:47 +00:00
simp_4.lean test: implies vs Arrow Sym.simp benchmark (#11966) 2026-01-10 18:51:54 +00:00