Decision procedure interface for various SMT 2.x solvers.
More...
#include <smt2_dec.h>
+ Inheritance diagram for smt2_dect:
+ Collaboration diagram for smt2_dect:
Return a textual description of the decision procedure.
- Public Member Functions inherited from
smt2_convt
Generate a handle, which is an expression that has the same value as the argument in any model that is generated; this offers an efficient way to refer to the expression in subsequent calls to
get or
set_to.
For a Boolean expression expr, add the constraint 'expr' if value is true, otherwise add 'not expr'.
Return expr with variables replaced by values from satisfying assignment if available.
Print satisfying assignment to out.
Unimplemented.
Currently, only implements a single stack element (no nested contexts)
Currently, only implements a single stack element (no nested contexts)
Return the number of incremental solver calls.
For a Boolean expression expr, add the constraint 'expr'.
For a Boolean expression expr, add the constraint 'not expr'.
Run the decision procedure to solve the problem This corresponds to SMT-LIB's check-sat.
Run the decision procedure to solve the problem under the given assumption.
Protected Member Functions
Implementation of the decision procedure.
- Protected Member Functions inherited from
smt2_convt
Writes the end of the SMT file to the smt_convt::out stream.
produce a flat bit-vector for a given array of fixed size
Converting a constant or symbolic rounding mode to SMT-LIB.
Perform steps necessary before an expression is passed to
convert_expr.
Lower byte_update and byte_extract operations within expr.
Find and declare symbols used in an expression This function traverses the expression tree and creates SMT2 declarations for all symbols (variables) found.
This function is for parsing array output from SMT solvers when "(get-value |???|)" returns an array object.
This function walks the SMT output and populates a map with index/value pairs for the array.
Generate a handle, which is an expression that has the same value as the argument in any model that is generated; this offers an efficient way to refer to the expression in subsequent calls to
get or
set_to.
For a Boolean expression expr, add the constraint 'expr' if value is true, otherwise add 'not expr'.
Return expr with variables replaced by values from satisfying assignment if available.
Print satisfying assignment to out.
Unimplemented.
Currently, only implements a single stack element (no nested contexts)
Currently, only implements a single stack element (no nested contexts)
Return the number of incremental solver calls.
For a Boolean expression expr, add the constraint 'expr'.
For a Boolean expression expr, add the constraint 'not expr'.
Run the decision procedure to solve the problem This corresponds to SMT-LIB's check-sat.
Run the decision procedure to solve the problem under the given assumption.
Everything except the footer is cached, so that output files can be rewritten with varying footers.
The values which boolean identifiers have been
smt2_convt::set_to or in other words those which are asserted as true / false in the output smt2 formula.
Additional Inherited Members
Result of running the decision procedure.
More...
- Static Public Member Functions inherited from
smt2_convt
Result of running the decision procedure.
More...
- Static Protected Member Functions inherited from
smt2_convt
Detailed Description
Decision procedure interface for various SMT 2.x solvers.
Definition at line 25 of file smt2_dec.h.
Constructor & Destructor Documentation
◆ smt2_dect()
const std::string &
_benchmark,
const std::string &
_notes,
const std::string &
_logic,
const std::string &
_solver_binary_or_empty,
)
inline
Member Function Documentation
◆ dec_solve()
◆ decision_procedure_text()
std::string smt2_dect::decision_procedure_text
(
)
const
overridevirtual
Return a textual description of the decision procedure.
Reimplemented from smt2_convt.
Definition at line 20 of file smt2_dec.cpp.
◆ read_result()
Member Data Documentation
◆ cached_output
std::stringstream smt2_dect::cached_output
protected
Everything except the footer is cached, so that output files can be rewritten with varying footers.
Definition at line 51 of file smt2_dec.h.
◆ message_handler
◆ solver_binary_or_empty
std::string smt2_dect::solver_binary_or_empty
protected
The documentation for this class was generated from the following files:
- /home/runner/work/cbmc/cbmc/src/solvers/smt2/smt2_dec.h
- /home/runner/work/cbmc/cbmc/src/solvers/smt2/smt2_dec.cpp