lean4-htt/src/Lean/Meta/Sym
Leonardo de Moura 8ebd294673
fix: kernel projection panic in Sym.simp match reduction (#13635)
This PR fixes a `Sym.simp` panic ("unexpected kernel projection term
during simplification") that triggered when matcher iota-reduction
exposed kernel `Expr.proj` terms via struct-eta. For example, a `do`
block with a `for` loop whose state is a tuple, where `Sym.simp`
unfolds the equational lemma and then descends into a destructuring
match.
2026-05-05 03:20:20 +00:00
..
Arith fix: limit ring solver polynomial degree in grind (#13585) 2026-04-30 14:00:00 +00:00
Simp fix: kernel projection panic in Sym.simp match reduction (#13635) 2026-05-05 03:20:20 +00:00
AbstractS.lean feat: add mkAppNS, mkAppRevS, betaRevS, betaS, and related Sym functions (#13273) 2026-04-04 02:31:16 +00:00
AlphaShareBuilder.lean feat: add mkAppNS, mkAppRevS, betaRevS, betaS, and related Sym functions (#13273) 2026-04-04 02:31:16 +00:00
AlphaShareCommon.lean refactor: reorganize SymM and GrindM monad hierarchy (#11909) 2026-01-06 01:12:07 +00:00
Apply.lean chore: shake core (#12276) 2026-02-05 09:10:32 +00:00
Arith.lean feat: add Sym.Arith infrastructure for arithmetic normalization (#13289) 2026-04-06 05:21:09 +00:00
Canon.lean fix: extend sym canonicalizer reductions to value positions (#13272) 2026-04-04 01:52:24 +00:00
Eta.lean fix: eta-reduce patterns containing loose pattern variables (#13448) 2026-04-17 20:49:21 +00:00
ExprPtr.lean refactor: reorganize SymM and GrindM monad hierarchy (#11909) 2026-01-06 01:12:07 +00:00
Grind.lean feat: add Goal API for SymM + grind (#12143) 2026-01-24 20:30:08 +00:00
InferType.lean refactor: reorganize SymM and GrindM monad hierarchy (#11909) 2026-01-06 01:12:07 +00:00
InstantiateMVarsS.lean refactor: reorganize SymM and GrindM monad hierarchy (#11909) 2026-01-06 01:12:07 +00:00
InstantiateS.lean feat: add mkAppNS, mkAppRevS, betaRevS, betaS, and related Sym functions (#13273) 2026-04-04 02:31:16 +00:00
Intro.lean fix: avoid assigning mvar when Sym.intros produces no binders (#13451) 2026-04-17 21:47:47 +00:00
IsClass.lean feat: intro tactic for SymM (#11803) 2025-12-26 03:45:33 +00:00
LitValues.lean feat: String and Char simprocs for SymM (#12077) 2026-01-21 00:05:40 +00:00
LooseBVarsS.lean chore: shake core (#12276) 2026-02-05 09:10:32 +00:00
MaxFVar.lean chore: Sym cleanup (#11833) 2025-12-29 17:07:56 +00:00
Offset.lean feat: offset terms in Sym (#12053) 2026-01-20 04:57:52 +00:00
Pattern.lean fix: missing case in processLevel at SymM (#13612) 2026-05-02 17:52:43 +00:00
ProofInstInfo.lean chore: shake core (#12276) 2026-02-05 09:10:32 +00:00
ReplaceS.lean chore: shake core (#12276) 2026-02-05 09:10:32 +00:00
Simp.lean feat: add register_sym_simp command and SymSimpVariant infrastructure (#13034) 2026-03-22 04:30:58 +00:00
SymM.lean feat: add linter.redundantVisibility for redundant private/public modifiers (#13132) 2026-04-13 08:34:20 +00:00
SynthInstance.lean refactor: replace grind canonicalizer with type-directed normalizer (#13166) 2026-03-28 02:43:22 +00:00
Util.lean fix: kernel projection panic in Sym.simp match reduction (#13635) 2026-05-05 03:20:20 +00:00