lean2/tests/lua/env3.lua
Leonardo de Moura bf081ed431 refactor(kernel): rename var_decl to constant_assumption
Motivation: it matches the notation used to declare it.
2014-10-02 17:55:34 -07:00

20 lines
650 B
Lua

function init(env)
env = add_decl(env, mk_constant_assumption("A", Prop))
env = add_decl(env, mk_constant_assumption("And", mk_arrow(Prop, mk_arrow(Prop, Prop))))
env = add_decl(env, mk_axiom("p", Const("A")))
env = add_decl(env, mk_axiom("q", Const("A")))
return env
end
local And = Const("And")
local p = Const("p")
local q = Const("q")
local env = init(bare_environment())
local t = type_checker(env)
assert(t:is_def_eq(p, q))
assert(t:is_def_eq(And(p, q), And(q, p)))
env = init(bare_environment({prop_proof_irrel=false}))
t = type_checker(env)
assert(not t:is_def_eq(p, q))
assert(not t:is_def_eq(And(p, q), And(q, p)))