|
| Unroller (z3::context &ctx, const std::string &suffix) |
| Default constructor.
|
|
virtual | ~Unroller () |
| Default virtual destructor.
|
|
void | AddGlobPred (const ExprPtr &p) |
| Add a predicate that should be asserted globally.
|
|
void | AddInitPred (const ExprPtr &p) |
| Add a predicate that should be asserted in the initial condition.
|
|
void | AddStepPred (const ExprPtr &p, const int &k) |
| Add a predicate that should be asserted at the k-th step.
|
|
void | ClearGlobPred () |
| Clear the global predicates.
|
|
void | ClearInitPred () |
| Clear the initial predicates.
|
|
void | ClearStepPred () |
| Clear the step-specific predicates.
|
|
void | ClearPred () |
| Clear all predicates.
|
|
ZExpr | CurrState (const ExprPtr &v, const int &t) |
| Return the z3::expr representing the current state at the time.
|
|
ZExpr | NextState (const ExprPtr &v, const int &t) |
| Return the z3::expr representing the next state at the time.
|
|
ZExpr | GetZ3Expr (const ExprPtr &e, const int &t) |
| Return the z3::expr representing the current-based Expr at the time.
|
|
ZExpr | GetZ3Expr (const ExprPtr &e) |
| Return the z3::expr representing a unique Expr (regardless of time).
|
|
ZExpr | Equal (const ExprPtr &va, const int &ta, const ExprPtr &vb, const int &tb) |
| Return the z3::expr representing a and b are equal at their time.
|
|
z3::func_decl | GetZ3FuncDecl (const FuncPtr &f) const |
| Return the z3::func_decl representing f.
|
|
|
virtual void | DefineDepVar ()=0 |
| [Application-specific] Define dependant state variables. More...
|
|
virtual void | Transition (const int &idx)=0 |
| [Application-specific] Define next state update functions. More...
|
|
ZExpr | UnrollSubs (const size_t &len, const int &pos) |
| Unroll while substituting internal expression.
|
|
ZExpr | UnrollAssn (const size_t &len, const int &pos, bool cache=false) |
| Unroll without substituting internal expression.
|
|
ZExpr | UnrollNone (const size_t &len, const int &pos) |
| Unroll without asserting state equality between each step.
|
|
Base class for unrolling ILA execution in different settings.