lean4-htt/tests/bench/sym
Leonardo de Moura f1c903ca65
feat: simplify lambdas in Sym.simp (#11898)
This PR adds support for simplifying lambda expressions in `Sym.simp`.
It is much more efficient than standard simp for very large lambda
expressions with many binders. The key idea is to generate a custom
function extensionality theorem for the type of the lambda being
simplified.

This technique is compatible with the standard `simp` tactic, and will
be ported in a separate PR.

<img width="581" height="455" alt="image"
src="https://github.com/user-attachments/assets/5911dc6c-03f0-48ed-843b-b8cb4f67ee61"
/>

### `lambda` benchmark summary

| Lambda size | MetaM (ms) | SymM (ms) | Speedup |
|-------------|------------|-----------|---------|
| 50          | 22.7       | 0.74      | ~31×    |
| 100         | 120.5      | 1.75      | ~69×    |
| 150         | 359.6      | 2.90      | ~124×   |
| 200         | 809.5      | 4.51      | ~180×   |
2026-01-05 01:00:30 +00:00
..
meta_simp_1.lean chore: include free variables (#11894) 2026-01-04 18:51:18 +00:00
meta_simp_2.lean feat: simplify lambdas in Sym.simp (#11898) 2026-01-05 01:00:30 +00:00
simp_1.lean chore: include free variables (#11894) 2026-01-04 18:51:18 +00:00
simp_2.lean feat: simplify lambdas in Sym.simp (#11898) 2026-01-05 01:00:30 +00:00