Sebastian Graf 59f88e6663 perf: add persistent Sym.Simp cache and reassocNatAdd simproc to mvcgen' with grind
This PR adds a persistent `Sym.Simp.State` cache to VCGen and a
`reassocNatAdd` simproc that rewrites `(a + m) + n → a + (m + n)` for
Nat literals. Hypotheses and targets are simplified via `replaceLocalDeclDefEq`
and `replaceTargetDefEq` (O(1)) before grind internalization, avoiding
O(n) re-internalization of unsimplified `s + 1 + 1 + ...` chains.

The persistent cache gives O(1) amortized simplification per VC since
pointer-based cache hits on shared subexpressions avoid redundant work.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 06:42:10 +00:00
2026-03-11 18:55:46 +00:00
2026-03-11 21:36:12 +00:00
2022-03-18 15:28:20 +01:00
2026-02-11 01:17:40 +00:00
2026-02-11 01:17:40 +00:00
Description
No description provided
Readme 5 GiB
Languages
Lean 94.3%
C++ 4.1%
Python 0.6%
Shell 0.4%
CMake 0.3%