lean4-htt/tests/lean/run/7475.lean
Henrik Böving af82d75e86
fix: bv_decide don't analyze terms under binders by accident (#7477)
This PR ensures that bv_decide doesn't accidentally operate on terms
underneath binders. As there is currently no binder construct that is in
the supported fragment of bv_decide this changes nothing about the proof
power.

Closes #7475
2025-03-13 16:47:20 +00:00

27 lines
558 B
Text

import Std.Tactic.BVDecide
inductive Sign : Type
| Positive : Sign
| Negative : Sign
deriving DecidableEq, Repr
inductive EFixedPoint : Type
| NaN : EFixedPoint
| Infinity : Sign -> EFixedPoint
deriving DecidableEq, Repr
namespace EFixedPoint
def equal (a b : EFixedPoint) : Bool :=
match a, b with
| Infinity s1, Infinity s2 => s1 = s2
| _, _ => false
/-- warning: declaration uses 'sorry' -/
#guard_msgs in
theorem EFixedPoint_eq_refl (a : EFixedPoint) : a.equal a = true := by
unfold EFixedPoint.equal
bv_normalize
sorry
end EFixedPoint