lean4-htt/src/kernel
Leonardo de Moura d1514f3cec
perf: cache unfold_definition in the kernel (#12259)
This PR ensures we cache the result of `unfold_definition` definition in
the kernel type checker. We used to cache this information in a thread
local storage, but it was deleted during the Lean 3 to Lean 4
transition.
2026-01-31 03:44:50 +00:00
..
abstract.cpp feat: generalize Expr.abstractRange 2022-03-08 18:19:17 -08:00
abstract.h
CMakeLists.txt chore: reformat all cmake files (#12218) 2026-01-28 18:23:08 +00:00
declaration.cpp fix: RecursorVal.getInduct to return name of major argument’s type (#5679) 2024-10-21 08:45:18 +00:00
declaration.h perf: mark move constructors and assignment operators as noexcept (#10784) 2025-10-22 14:21:51 +00:00
environment.cpp chore: CI: enable leak sanitizer again (#11339) 2025-11-27 18:32:35 +00:00
environment.h perf: mark move constructors and assignment operators as noexcept (#10784) 2025-10-22 14:21:51 +00:00
equiv_manager.cpp
equiv_manager.h
expr.cpp feat: add the nondep field of Expr.letE to the C++ data model (#8751) 2025-06-14 23:10:27 +00:00
expr.h perf: mark move constructors and assignment operators as noexcept (#10784) 2025-10-22 14:21:51 +00:00
expr_cache.cpp
expr_cache.h
expr_eq_fn.cpp perf: use lean::unordered_set for expr_eq_fn (#11731) 2025-12-18 14:24:50 +00:00
expr_eq_fn.h
expr_maps.h perf: use lean::unordered_map/set everywhere (#11957) 2026-01-12 17:14:09 +00:00
expr_sets.h perf: use lean::unordered_map/set everywhere (#11957) 2026-01-12 17:14:09 +00:00
find_fn.h
for_each_fn.cpp perf: use lean::unordered_map/set everywhere (#11957) 2026-01-12 17:14:09 +00:00
for_each_fn.h perf: for_each with precise cache (#4794) 2024-07-20 00:18:55 +00:00
inductive.cpp chore: use String.ofList instead of String.mk in elaborator+kernel (#11048) 2025-11-01 14:44:16 +00:00
inductive.h chore: kernel changes ahead of String redefinition (#10330) 2025-09-17 09:12:07 +00:00
init_module.cpp fix: Windows needs more LEAN_EXPORTs 2024-08-12 14:14:42 +02:00
init_module.h fix: Windows needs more LEAN_EXPORTs 2024-08-12 14:14:42 +02:00
instantiate.cpp perf: instantiateExprMVars (#4915) 2024-08-05 17:15:22 +00:00
instantiate.h perf: instantiateExprMVars (#4915) 2024-08-05 17:15:22 +00:00
instantiate_mvars.cpp perf: use lean::unordered_map/set everywhere (#11957) 2026-01-12 17:14:09 +00:00
kernel_exception.h feat: split Lean.Kernel.Environment from Lean.Environment (#5145) 2025-01-18 18:42:57 +00:00
level.cpp fix: block potential adversarial exploit of non-aborting assert! (#8560) 2025-05-31 03:14:01 +00:00
level.h perf: mark move constructors and assignment operators as noexcept (#10784) 2025-10-22 14:21:51 +00:00
local_ctx.cpp
local_ctx.h perf: mark move constructors and assignment operators as noexcept (#10784) 2025-10-22 14:21:51 +00:00
quot.cpp
quot.h fix: quot reduction bug 2023-10-11 21:25:34 -07:00
replace_fn.cpp perf: use mimalloc with important C++ hash maps (#7868) 2025-04-11 16:23:33 +00:00
replace_fn.h
trace.cpp perf: Options.hasTrace (#12001) 2026-01-16 09:03:40 +00:00
trace.h perf: Options.hasTrace (#12001) 2026-01-16 09:03:40 +00:00
type_checker.cpp perf: cache unfold_definition in the kernel (#12259) 2026-01-31 03:44:50 +00:00
type_checker.h perf: cache unfold_definition in the kernel (#12259) 2026-01-31 03:44:50 +00:00