#include <cinttypes>
#include <minisat/core/Solver.h>
+#include <minisat/simp/SimpSolver.h>
ezMiniSAT::ezMiniSAT() : minisatSolver(NULL)
{
for (auto id : modelExpressions)
modelIdx.push_back(bind(id));
- if (minisatSolver == NULL)
- minisatSolver = new Minisat::Solver;
+ if (minisatSolver == NULL) {
+ minisatSolver = new EZMINISAT_SOLVER;
+ minisatSolver->verbosity = EZMINISAT_VERBOSITY;
+ }
std::vector<std::vector<int>> cnf;
consumeCnf(cnf);
#ifndef EZMINISAT_H
#define EZMINISAT_H
+#define EZMINISAT_SOLVER Minisat::Solver
+#define EZMINISAT_VERBOSITY 0
+
#include "ezsat.h"
#include <time.h>
// don't force ezSAT users to use minisat headers..
namespace Minisat {
class Solver;
+ class SimpSolver;
}
class ezMiniSAT : public ezSAT
{
private:
- Minisat::Solver *minisatSolver;
+ EZMINISAT_SOLVER *minisatSolver;
std::vector<int> minisatVars;
bool foundContradiction;