3 #include "MapleCOMSPS_LRB/utils/System.h" 8 SMTMethod::SMTMethod(
const std::set<std::string> &SpSet,
const std::set<std::string> &SmSet,
const std::set<std::string> &SSet,
const std::set<std::string> &prefixesSet,
const std::set<char> &alphabetSet,
unsigned int n) :
9 Method(SpSet, SmSet, SSet, prefixesSet, alphabetSet, n),
11 m_SMTEngine(&m_exprManager)
44 m_SMTEngine.setTimeLimit(std::chrono::milliseconds(timeLimit).count(),
false);
45 m_SMTEngine.setTimeLimit(std::chrono::milliseconds(timeLimit).count(),
true);
The namespace of the library.
virtual CVC4::Expr createConstraints()=0
Creates an unique expression describing the constraints of this method.
virtual void setStopTrigger(const std::chrono::seconds &timeLimit, std::atomic_bool &stopTrigger, const bool *stopPointer) override
Sets the stop trigger for this method.
virtual void createVariables()=0
Creates all needed variables for the method.
The base class of all passive methods.
virtual std::unique_ptr< DFA< char > > toDFA()=0
Effectively creates the DFA from the values of the variables in the SMT solver (see SMTMethod::m_SMTE...
std::unique_ptr< DFA< char > > constructDFA() override
Constructs the DFA induced by the variables according to the method.
CVC4::SmtEngine m_SMTEngine
This computes acceptable values for the variables and allows to retrieve them.
bool solve() override
Solves the SAT/SMT problem induced by the method.