feat(frontends/lean): add 'coercion' command

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(kernel/justification): missing 'const'

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(library/unifier): bug in conflict resolution

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/error_handling): improve unifier_exception error message

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(frontends/lean): save 'choice' position

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/lean/lean): improve overload error message

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(tests/lean/run): add simple overloading test

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(util/list_fn): add remove function

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(frontends/lean/parse_table): avoid duplicates in the parse table

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(tests/lean/run): add test demonstrating how to control ambiguity

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(tests/lean/run): more tests on how to deal with ambiguity

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(frontends/lean/builtin_cmds): abstract section parameters in the 'check' command

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(tests/lean/run): add another example on how to deal with ambiguity

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/scoped_ext): do not import 'children' namespace objects

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(kernel/inductive): mark parameters, type formers and indices as implicit parameters in the elimination rule

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(kernel/inductive): mark parameters, type formers and indices as implicit parameters in the elimination rule