25void SmtSolver::add(std::set<storm::expressions::Expression> 
const& assertions) {
 
 
   31void SmtSolver::add(std::initializer_list<storm::expressions::Expression> 
const& assertions) {
 
 
   38    for (uint_fast64_t i = 0; i < n; ++i) {
 
 
   44    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support model generation.");
 
 
   48    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support model generation.");
 
 
   51std::vector<storm::expressions::SimpleValuation> 
SmtSolver::allSat(std::vector<storm::expressions::Variable> 
const&) {
 
   52    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support model generation.");
 
 
   56    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support model generation.");
 
 
   60    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support model generation.");
 
 
   64    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support generation of unsatisfiable cores.");
 
 
   68    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support generation of unsatisfiable cores.");
 
 
   72    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support generation of interpolants.");
 
 
   76    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support generation of interpolants.");
 
 
   96    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support exporting the assertions in the SMT-LIB format.");
 
 
  101    STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException, 
"This solver does not support model generation.");
 
 
This class is responsible for managing a set of typed variables and all expressions using these varia...
 
A simple implementation of the valuation interface.
 
The base class for all model references.
 
ModelReference(storm::expressions::ExpressionManager const &manager)
Creates a model reference that uses the given expression manager.
 
storm::expressions::ExpressionManager const & getManager() const
Retrieves the expression manager associated with this model reference.
 
virtual storm::expressions::Expression getInterpolant(std::vector< uint_fast64_t > const &groupsA)
If the last call to check() returned Unsat, the solver has been instantiated with support for interpo...
 
virtual void pop()=0
Pops a backtracking point from the solver's stack.
 
virtual bool setTimeout(uint_fast64_t milliseconds)
If supported by the solver, this will limit all subsequent satisfiability queries to the given number...
 
virtual std::vector< storm::expressions::Expression > getUnsatAssumptions()
If the last call to checkWithAssumptions() returned Unsat, this function can be used to retrieve a su...
 
virtual void add(storm::expressions::Expression const &assertion)=0
Adds an assertion to the solver's stack.
 
virtual bool unsetTimeout()
If supported by the solver, this unsets a previous timeout.
 
virtual storm::expressions::SimpleValuation getModelAsValuation()
If the last call to check() or checkWithAssumptions() returned Sat, this method retrieves a model tha...
 
storm::expressions::ExpressionManager const & getManager() const
Retrieves the expression manager associated with the solver.
 
virtual std::vector< storm::expressions::SimpleValuation > allSat(std::vector< storm::expressions::Variable > const &important)
Performs AllSat over the (provided) important atoms.
 
SmtSolver(storm::expressions::ExpressionManager &manager)
Constructs a new Smt solver with the given options.
 
virtual ~SmtSolver()
Destructs the solver instance.
 
virtual void setInterpolationGroup(uint_fast64_t group)
Sets the current interpolation group.
 
virtual std::string getSmtLibString() const
If supported by the solver, this function returns the current assertions in the SMT-LIB format.
 
virtual std::vector< storm::expressions::Expression > getUnsatCore()
If the last call to check() returned Unsat, this function can be used to retrieve the unsatisfiable c...
 
virtual void addNotCurrentModel(bool performSolverReset=true)
If supported by the solver, this function tells the SMT solver to produce a model different from the ...
 
virtual std::shared_ptr< ModelReference > getModel()
If the last call to check() or checkWithAssumptions() returned Sat, this method retrieves a model tha...
 
#define STORM_LOG_THROW(cond, exception, message)