lean4-htt/src/kernel
Leonardo de Moura 0d5ac5288a feat(runtime): increase small nat size
In 64-bit machines, the max small nat value should now be (2^63 - 1), and on 32-bit
machines (2^32 - 1).

The main motivation for this modification are the array indexing
operations. With the new representation, if a Nat index is not small,
then it must not be a valid index. This was not true in 64-bit
machines. Example: an array of size 2^33 would fit in memory, and but
an index `i` > 2^32 - 1 would not be a small nat value.
2019-03-26 14:21:03 -07:00
..
abstract.cpp refactor(kernel/expr): remove mlocal_* functions 2018-06-22 14:25:31 -07:00
abstract.h refactor(kernel): has_local ==> has_fvar 2018-06-11 10:46:05 -07:00
cache_stack.h chore(kernel/cache_stack): compilation warning 2018-05-22 09:46:00 -07:00
CMakeLists.txt feat(frontends/lean/vm_elaborator): port to new runtime 2019-02-14 14:07:05 -08:00
declaration.cpp feat(kernel): opaque constants 2019-03-15 15:45:06 -07:00
declaration.h chore(kernel/declaration): fix compilation warnings 2019-03-19 11:25:55 -07:00
environment.cpp feat(kernel): opaque constants 2019-03-15 15:45:06 -07:00
environment.h feat(kernel): opaque constants 2019-03-15 15:45:06 -07:00
equiv_manager.cpp chore(kernel): remove expr.quote constructor 2018-09-07 22:08:08 -07:00
equiv_manager.h chore(*): rename expr_struct_* to expr_* 2018-04-09 12:55:48 -07:00
expr.cpp chore(*): small fixes 2019-03-21 15:06:44 -07:00
expr.h chore(kernel): remove old #include 2019-03-06 06:56:16 -08:00
expr_cache.cpp refactor(kernel/expr): implement expr using runtime/object 2018-06-21 16:05:33 -07:00
expr_cache.h refactor(kernel): add expr_cache 2015-02-03 14:59:55 -08:00
expr_eq_fn.cpp fix(library,kernel): the new proj_sname field must be taken into account during comparisons 2018-10-03 13:11:46 -07:00
expr_eq_fn.h feat(library/type_context): allow us to control whether binder information is taken into account or not when caching type information 2016-08-01 16:34:07 -07:00
expr_maps.h chore(*): rename expr_struct_* to expr_* 2018-04-09 12:55:48 -07:00
expr_sets.h feat(library/compiler,runtime): builtin support for lean.name 2019-02-05 12:57:46 -08:00
find_fn.h refactor(kernel/find_fn): simplify find_fn module 2014-07-23 18:09:58 -07:00
for_each_fn.cpp chore(kernel): remove expr.quote constructor 2018-09-07 22:08:08 -07:00
for_each_fn.h refactor(kernel/for_each_fn): simplify module interface 2014-07-23 18:16:41 -07:00
inductive.cpp feat(runtime): increase small nat size 2019-03-26 14:21:03 -07:00
inductive.h feat(library/kernel,library/compiler/csimp): make sure nat.rec and nat.cases_on reduce when major premise is a nat literal 2018-10-10 18:35:15 -07:00
init_module.cpp chore(kernel): remove old_type_checker 2018-09-07 08:55:37 -07:00
init_module.h refactor(*): explicit initialization/finalization for serialization 2014-09-22 15:26:41 -07:00
instantiate.cpp feat(kernel): move cheap_beta_reduce to kernel and use it at infer_let 2018-10-20 17:13:41 -07:00
instantiate.h feat(library/compiler/csimp): eliminate join points that are used only once 2019-03-14 10:43:35 -07:00
kernel_exception.h feat(library/message_builder): pretty-print kernel_exceptions 2018-09-13 16:38:40 -07:00
level.cpp chore(kernel): remove old #include 2019-03-06 06:56:16 -08:00
level.h feat(frontends/lean/vm_elaborator): port to new runtime 2019-02-14 14:07:05 -08:00
local_ctx.cpp refactor(kernel/local_ctx): simplify local_ctx 2018-10-24 10:02:38 -07:00
local_ctx.h refactor(kernel/local_ctx): simplify local_ctx 2018-10-24 10:02:38 -07:00
quot.cpp chore(*): adapt C++ code to camelCase 2019-03-21 15:06:43 -07:00
quot.h feat(kernel): proper constant_info and declaration objects for quot type 2018-08-28 13:46:31 -07:00
replace_fn.cpp chore(kernel): remove expr.quote constructor 2018-09-07 22:08:08 -07:00
replace_fn.h refactor(*): add runtime folder 2018-05-14 14:23:56 -07:00
type_checker.cpp chore(*): meta ==> unsafe 2019-03-15 15:04:40 -07:00
type_checker.h chore(*): meta ==> unsafe 2019-03-15 15:04:40 -07:00