lean2/tests/lua/expr5.lua
Leonardo de Moura a43020b31b refactor(kernel): remove heterogeneous equality
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-01-16 17:39:12 -08:00

16 lines
791 B
Lua

e = context_entry("a", Const("a"))
n = e:get_body()
check_error(function() mk_heq(n, Const("a")) end)
print(Const("a") < Const("b"))
check_error(function() mk_app(Const("a")) end)
print(mk_pi("x", Const("N"), Var(0)))
print(Pi("x", Const("N"), Const("x")))
assert(mk_pi("x", Const("N"), Var(0)) == Pi("x", Const("N"), Const("x")))
assert(mk_let("x", Const("a"), Var(0)) == Let("x", Const("a"), Const("x")))
print(mk_let("x", Const("N"), Const("a"), Var(0)))
check_error(function() Pi({"x"}, Const("x")) end)
check_error(function() Pi({"x", Const("N")}, Const("x")) end)
check_error(function() Pi({{"x"}}, Const("x")) end)
check_error(function() Pi(Const("x")) end)
check_error(function() Pi(Const("x"), Const("N"), Const("x"), Const("a")) end)
check_error(function() Pi({}, Const("x")) end)