chore(frontends/lean/elaborator): replace ... withe exception

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
perf(frontends/lean/elaborator): improve visit_binding performance

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(kernel/type_checker): break infer_type_core into smaller methods

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
perf(kernel/type_checker): improve infer_lambda performance

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
perf(kernel/type_checker): improve infer_pi performance

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(frontends/lean): calc configuration commands, add check_constant_next auxiliary method

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
perf(kernel/metavar): improve occurs_expr method

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(library/unifier): improve occurs_context_check

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
perf(library/unifier): minimize the use of instantiate_metavars

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(library/expr_pair): typo

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(kernel/replace_fn): use thread local cache

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/hott): add basic HoTT definitions and theorems

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(build): compile HoTT library when building

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
checkpoint

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>