Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
SmtratSmtSolver.h
Go to the documentation of this file.
1#ifndef STORM_SOLVER_SMTRATSMTSOLVER
2#define STORM_SOLVER_SMTRATSMTSOLVER
3#include "storm-config.h"
5
6#ifdef STORM_HAVE_SMTRAT
7#ifdef SMTRATDOESNTWORK // Does not compile with current version of smtrat.
8
9#include "../adapters/RationalFunctionAdapter.h"
10#include "lib/smtrat.h"
11
12namespace storm {
13namespace solver {
14class SmtratSmtSolver : public SmtSolver {
15 private:
16 smtrat::RatOne* solver;
17 unsigned exitCode;
18
19 public:
20 SmtratSmtSolver(storm::expressions::ExpressionManager& manager);
21 virtual ~SmtratSmtSolver();
22
23 virtual void push() override;
24
25 virtual void pop() override;
26
27 virtual void pop(uint_fast64_t n) override;
28
29 virtual CheckResult check() override;
30
32
33 template<typename ReturnType>
34 ReturnType getModel() const;
35
36 std::vector<smtrat::FormulasT> const& getUnsatisfiableCores() const;
37
38 // The last result that was returned by any of the check methods.
39 CheckResult lastResult;
40};
41} // namespace solver
42} // namespace storm
43#endif
44#endif
45
46#endif // STORM_SOLVER_SMTRATSMTSOLVER
This class is responsible for managing a set of typed variables and all expressions using these varia...
helper::MDPSparseModelCheckingHelperReturnType< ValueType > check(Environment const &, SparseModelType const &model, CheckTask< storm::logic::MultiObjectiveFormula, ValueType > const &checkTask, CheckFormulaCallback const &formulaChecker)
check a lexicographic LTL-formula
LabParser.cpp.
Definition cli.cpp:18
carl::Relation CompareRelation
carl::MultivariatePolynomial< RationalFunctionCoefficient > RawPolynomial