23 virtual std::unique_ptr<DFA<char>>
toDFA(std::istream &stream)
const override;
26 BinaryNonCNFMethod(
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);
29 std::string phi_different(std::string pref1, std::string pref2);
30 std::string phi_not_q_i(std::string pref,
unsigned int i);
34 typedef std::map<std::pair<std::string, unsigned int>,
unsigned int> states_map;
38 typedef states_map::value_type state;
The namespace of the library.
virtual std::string getFileName() const override
Gives the name of the file in which the boolean formula must be written.
The Grinchtein, Leucker and Piterman's binary method using a SAT Solver that does not rely on CNF...
BinaryNonCNFMethod()=delete
virtual bool createFormula(std::ostream &stream) override
Creates the boolean formula (must not be in CNF) and writes it in the stream.
static std::string getFactoryName()
virtual std::unique_ptr< DFA< char > > toDFA(std::istream &stream) const override
Effectively creates the DFA.
Helps to register a method in the factory.
Base class for every method that relies on a non-CNF SAT solver.