summaryrefslogtreecommitdiff
path: root/src/prop/minisat/simp
diff options
context:
space:
mode:
authorDejan Jovanović <dejan@cs.nyu.edu>2013-04-03 17:55:58 -0400
committerDejan Jovanović <dejan@cs.nyu.edu>2013-04-03 17:55:58 -0400
commitbb6c74a7bb306de8b7c5d7e9701b3524eda68f4a (patch)
tree17482f7fcc4f5af3ae46c9428e942f05f7f8abf8 /src/prop/minisat/simp
parent62748da1e72dbcc5c6daef88ad899706de8ae7db (diff)
* changing the bitblast-eager to bitblast on pre-register
* the newVar interface of the sat solver now changed to include (isTheoryLiteral, preRegister, canEliminate) * when bitblast-eager all bv atoms are (theory=false, prereg = true, canelim = true) * bitblast-eager implies decision=internal
Diffstat (limited to 'src/prop/minisat/simp')
-rw-r--r--src/prop/minisat/simp/SimpSolver.cc6
-rw-r--r--src/prop/minisat/simp/SimpSolver.h2
2 files changed, 4 insertions, 4 deletions
diff --git a/src/prop/minisat/simp/SimpSolver.cc b/src/prop/minisat/simp/SimpSolver.cc
index ed2dc04b9..9c3e59954 100644
--- a/src/prop/minisat/simp/SimpSolver.cc
+++ b/src/prop/minisat/simp/SimpSolver.cc
@@ -95,11 +95,11 @@ SimpSolver::~SimpSolver()
}
-Var SimpSolver::newVar(bool sign, bool dvar, bool theoryAtom) {
- Var v = Solver::newVar(sign, dvar,theoryAtom);
+Var SimpSolver::newVar(bool sign, bool dvar, bool isTheoryAtom, bool preRegister, bool canErase) {
+ Var v = Solver::newVar(sign, dvar, isTheoryAtom, preRegister, canErase);
if (use_simplification){
- frozen .push((char)theoryAtom);
+ frozen .push((char)(!canErase));
eliminated.push((char)false);
n_occ .push(0);
n_occ .push(0);
diff --git a/src/prop/minisat/simp/SimpSolver.h b/src/prop/minisat/simp/SimpSolver.h
index e9116001f..878d799a5 100644
--- a/src/prop/minisat/simp/SimpSolver.h
+++ b/src/prop/minisat/simp/SimpSolver.h
@@ -46,7 +46,7 @@ class SimpSolver : public Solver {
// Problem specification:
//
- Var newVar (bool polarity = true, bool dvar = true, bool theoryAtom = false);
+ Var newVar (bool polarity = true, bool dvar = true, bool isTheoryAtom = false, bool preRegister = false, bool canErase = true);
bool addClause (const vec<Lit>& ps, bool removable);
bool addEmptyClause(bool removable); // Add the empty clause to the solver.
bool addClause (Lit p, bool removable); // Add a unit clause to the solver.
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback