Provides the logic for generating auxiliary lemmas during reification.
def
Lean.Elab.Tactic.BVDecide.Frontend.addCondLemmas
(discr : Lean.Elab.Tactic.BVDecide.Frontend.ReifiedBVLogical)
(atom lhs rhs : Lean.Elab.Tactic.BVDecide.Frontend.ReifiedBVExpr)
(discrExpr atomExpr lhsExpr rhsExpr : Lean.Expr)
:
This function adds the two lemmas:
discrExpr = true → atomExpr = lhsExpr
discrExpr = false → atomExpr = rhsExpr
It assumes thatdiscrExpr
,lhsExpr
andrhsExpr
are the expressions corresponding todiscr
,lhs
andrhs
. Furthermore it assumes thatatomExpr
is of the formbif discrExpr then lhsExpr else rhsExpr
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Lean.Elab.Tactic.BVDecide.Frontend.addCondLemmas.mkCondTrueLemma
(discr : Lean.Elab.Tactic.BVDecide.Frontend.ReifiedBVLogical)
(atom lhs : Lean.Elab.Tactic.BVDecide.Frontend.ReifiedBVExpr)
(discrExpr atomExpr lhsExpr rhsExpr : Lean.Expr)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Lean.Elab.Tactic.BVDecide.Frontend.addCondLemmas.mkCondFalseLemma
(discr : Lean.Elab.Tactic.BVDecide.Frontend.ReifiedBVLogical)
(atom rhs : Lean.Elab.Tactic.BVDecide.Frontend.ReifiedBVExpr)
(discrExpr atomExpr lhsExpr rhsExpr : Lean.Expr)
:
Equations
- One or more equations did not get rendered due to their size.