lean4-htt/tests
Joachim Breitner 24f550fd6f
feat: same equational lemmas for recursive and non-recursive functions (#5129)
This is part of #3983.

After #4154 introduced equational lemmas for non-recursive functions and
#5055
unififed the lemmas for structural and wf recursive funcitons, this now
disables the special handling of recursive functions in
`findMatchToSplit?`, so that the equational lemmas should be the same no
matter how the function was defined.

The new option `eqns.deepRecursiveSplit` can be disabled to get the old
behavior.

### Breaking change

This can break existing code, as there now can be extra equational
lemmas:

* Explicit uses of `f.eq_2` might have to be adjusted if the numbering
  changed.

* Uses of `rw [f]` or `simp [f]` may no longer apply if they previously
  matched (and introduced a `match` statement), when the equational
  lemmas got more fine-grained.

  In this case either case analysis on the parameters before rewriting
  helps, or setting the option `opt.deepRecursiveSplit false` while
  defining the function
2024-08-25 06:51:03 +00:00
..
bench feat: List.mergeSort (#5092) 2024-08-20 06:32:52 +00:00
compiler fix: split libleanshared on Windows to avoid symbol limit 2024-08-12 14:14:42 +02:00
elabissues
ir
lean feat: same equational lemmas for recursive and non-recursive functions (#5129) 2024-08-25 06:51:03 +00:00
pkg feat: accept user-defined options on the cmdline (#4741) 2024-08-02 12:24:56 +00:00
playground
plugin chore: when a linter crashes, prefix its name (#4967) 2024-08-12 02:36:42 +00:00
simpperf
.gitignore
common.sh
lean-toolchain