fix(library/simplifier): assumptions/context may contain equations where the left-hand-side is a metavariable or semantic attachment

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
This commit is contained in:
Leonardo de Moura 2014-01-31 15:38:22 -08:00
parent a51530dca0
commit 1d85267d26
3 changed files with 15 additions and 2 deletions

View file

@ -1465,9 +1465,9 @@ class simplifier_cell::imp {
switch (e.kind()) {
case expr_kind::Var: return result(e);
case expr_kind::Constant: return save(e, simplify_constant(e));
case expr_kind::Type:
case expr_kind::Type: return result(e);
case expr_kind::MetaVar:
case expr_kind::Value: return result(e);
case expr_kind::Value: return rewrite(e, result(e));
case expr_kind::App: return save(e, simplify_app(e));
case expr_kind::Lambda: return save(e, simplify_lambda(e));
case expr_kind::Pi: return save(e, simplify_pi(e));

6
tests/lean/simp34.lean Normal file
View file

@ -0,0 +1,6 @@
import tactic
theorem T : false → false
:= by simp
print environment

View file

@ -0,0 +1,7 @@
Set: pp::colors
Set: pp::unicode
Imported 'tactic'
Proved: T
import "kernel"
import "Nat"
theorem T (H : ⊥) : ⊥ := eqt_elim (eqt_intro H)