summaryrefslogtreecommitdiff
path: root/src/prop/sat_solver_factory.cpp
diff options
context:
space:
mode:
authorMathias Preiner <mathias.preiner@gmail.com>2018-03-20 16:11:15 -0700
committerGitHub <noreply@github.com>2018-03-20 16:11:15 -0700
commit614670f98a9ab2d3cfcb9f364a1b06d78f63ebb0 (patch)
tree7dbdfbbae495fed26877c51267f6775f618f5d33 /src/prop/sat_solver_factory.cpp
parent62f58d62c6c597eeb9cae5e08d74f21c4a5c5c40 (diff)
Add support for CaDiCaL as eager BV SAT solver. (#1675)
Diffstat (limited to 'src/prop/sat_solver_factory.cpp')
-rw-r--r--src/prop/sat_solver_factory.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/prop/sat_solver_factory.cpp b/src/prop/sat_solver_factory.cpp
index 69fca59e1..0a8246667 100644
--- a/src/prop/sat_solver_factory.cpp
+++ b/src/prop/sat_solver_factory.cpp
@@ -17,6 +17,7 @@
#include "prop/sat_solver_factory.h"
#include "prop/bvminisat/bvminisat.h"
+#include "prop/cadical.h"
#include "prop/cryptominisat.h"
#include "prop/minisat/minisat.h"
@@ -31,6 +32,12 @@ BVSatSolverInterface* SatSolverFactory::createMinisat(
return new BVMinisatSatSolver(registry, mainSatContext, name);
}
+DPLLSatSolverInterface* SatSolverFactory::createDPLLMinisat(
+ StatisticsRegistry* registry)
+{
+ return new MinisatSatSolver(registry);
+}
+
SatSolver* SatSolverFactory::createCryptoMinisat(StatisticsRegistry* registry,
const std::string& name)
{
@@ -41,10 +48,14 @@ SatSolver* SatSolverFactory::createCryptoMinisat(StatisticsRegistry* registry,
#endif
}
-DPLLSatSolverInterface* SatSolverFactory::createDPLLMinisat(
- StatisticsRegistry* registry)
+SatSolver* SatSolverFactory::createCadical(StatisticsRegistry* registry,
+ const std::string& name)
{
- return new MinisatSatSolver(registry);
+#ifdef CVC4_USE_CADICAL
+ return new CadicalSolver(registry, name);
+#else
+ Unreachable("CVC4 was not compiled with CaDiCaL support.");
+#endif
}
} // namespace prop
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback