Internal Invariant representation for state machine
- property : α → β → Prop
property to be satisified
- label : String
property label
- status : Smt.Result
property status
Instances For
Internal state machine representation where:
- α : specifies the input type
- β : specifies the state type
- init : α → β
function to define the initial state
- next : α → β → β
function to define the next state
- assumptions : α → β → Prop
function to define any assumption about the input events and state
- invariants : α → β → Prop
function to define any properties to be satisfied
Instances
- inputType : Lean.Expr
- stateType : Lean.Expr
- smName : Lean.Name
- initFlag : Option Smt.SmtTerm
Instances For
Equations
Instances For
Equations
Instances For
Return StateMachine const expression and cache result.
Equations
- Blaster.StateMachine.mkStateMachineConst = Blaster.Optimize.mkExpr (Lean.mkConst `Blaster.StateMachine.StateMachine [Lean.levelZero])
Instances For
Return Blaster.StateMachine.StateMachine.invariants const expression and cache result.
Equations
- Blaster.StateMachine.mkInvariants = Blaster.Optimize.mkExpr (Lean.mkConst `Blaster.StateMachine.StateMachine.invariants)
Instances For
Return Blaster.StateMachine.StateMachine.assumptions const expression and cache result.
Equations
- Blaster.StateMachine.mkAssumptions = Blaster.Optimize.mkExpr (Lean.mkConst `Blaster.StateMachine.StateMachine.assumptions)
Instances For
Return Blaster.StateMachine.StateMachine.init const expression and cache result.
Equations
- Blaster.StateMachine.mkInit = Blaster.Optimize.mkExpr (Lean.mkConst `Blaster.StateMachine.StateMachine.init)
Instances For
Return Blaster.StateMachine.StateMachine.next const expression and cache result.
Equations
- Blaster.StateMachine.mkNext = Blaster.Optimize.mkExpr (Lean.mkConst `Blaster.StateMachine.StateMachine.next)
Instances For
Increment analysis depth
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Instances For
Equations
- Blaster.StateMachine.getMaxDepth = do let __do_lift ← get pure __do_lift.optEnv.options.solverOptions.maxDepth
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.
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.
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.
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
Determine if smInst corresponds to a StateMachine instance
and return a StateMachineEnv instance as result.
Trigger an error when smInst is not a StateMachine instance.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given smInst an instance of StateMachine, iVar input at step k and state at step k,
- assert
assumptions iVar state - check if current smt context is contradictory
Return
trueif context is contradictory
Equations
- One or more equations did not get rendered due to their size.
Instances For
Translate local axioms only when current depth is zero
Equations
- One or more equations did not get rendered due to their size.