lean4-htt/src/tests/kernel
Leonardo de Moura 4357c9196e feat(kernel/metavar): make sure that a metavariable 'm' can only be assigned to a term that contains free variables available in the context associated with 'm'
This commit also simplifies the method check_pi in the type_checker and type_inferer.
It also fixes process_meta_app in the elaborator.
The problem was in the method process_meta_app and process_meta_inst.
They were processing convertability constrains as equality constraints.
For example, process_meta_app would handle

    ctx |- Type << ?f b

as

    ctx |- Type =:= ?f b

This is not correct because a ?f that returns (Type U) for b satisfies the first but not the second.

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-12-14 12:25:00 -08:00
..
CMakeLists.txt feat(util): add primitives for checking the amount of available stack space 2013-12-01 17:19:27 -08:00
environment.cpp refactor(kernel/environment): add ro_environment 2013-12-12 16:48:34 -08:00
expr.cpp feat(kernel/context): add operator== for contexts, and new constructor 2013-12-12 16:48:33 -08:00
free_vars.cpp refactor(kernel/metavar_env): use the same approach used in the class environment in the class metavar_env 2013-12-13 18:59:15 -08:00
instantiate.cpp refactor(kernel/metavar_env): use the same approach used in the class environment in the class metavar_env 2013-12-13 18:59:15 -08:00
level.cpp refactor(kernel/environment): add ro_environment 2013-12-12 16:48:34 -08:00
metavar.cpp feat(kernel/metavar): make sure that a metavariable 'm' can only be assigned to a term that contains free variables available in the context associated with 'm' 2013-12-14 12:25:00 -08:00
normalizer.cpp refactor(kernel/environment): add ro_environment 2013-12-12 16:48:34 -08:00
occurs.cpp feat(*): add component name to check_stack and check_system 2013-12-07 15:11:55 -08:00
replace.cpp feat(*): add component name to check_stack and check_system 2013-12-07 15:11:55 -08:00
threads.cpp refactor(kernel/environment): add ro_environment 2013-12-12 16:48:34 -08:00
type_checker.cpp refactor(kernel/metavar_env): use the same approach used in the class environment in the class metavar_env 2013-12-13 18:59:15 -08:00