Given smInst an instance of StateMachine, perform the BMC strategy for counterexample detection up
to Depth maxDepth. In particular, considering k = maxDepth, try to incrementally check
if one of the following propositional formulae are satisfied:
bmcStrategy(smInst) ≡
- cex(k) ≡ st₀ = init in₀ ∧ (∀ i ∈ [0, k-1], assumptions inᵢ stᵢ ∧ stᵢ₊₁ = next inᵢ stᵢ) ∧ assumptions inₖ stₖ ∧ ¬ invariants inₖ stₖ -- counterexample detection
- contradiction(k) = ∀ i ∈ [0, k], assumptions inᵢ stᵢ -- check for contradictory context
where: inᵢ : set of input variables at step ᵢ stᵢ : set of state variables at step ᵢ
Trigger an error when smInst is not an instance of StateMachine.
Equations
- One or more equations did not get rendered due to their size.
Instances For
partial def
Blaster.StateMachine.bmcStrategy.visit
(smInst : Lean.Expr)
(prevState : Option Lean.Expr)
:
def
Blaster.StateMachine.bmcStrategy.optimizeState
(smInst iVar : Lean.Expr)
(pState : Option Lean.Expr)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.