Fix for the main bug that was bugging me -- Bug 49. The assertions queue in the theor...
authorDejan Jovanović <dejan.jovanovic@gmail.com>
Thu, 11 Mar 2010 01:30:37 +0000 (01:30 +0000)
committerDejan Jovanović <dejan.jovanovic@gmail.com>
Thu, 11 Mar 2010 01:30:37 +0000 (01:30 +0000)
commita7f004fad9947f3a953dbd6d14838f1e04f105eb
tree05da12b483a2e78f0bb3bb103cc49b6a5cabd648
parent3908dc0247d9cffa67f87294374bbd10a797b1e5
Fix for the main bug that was bugging me -- Bug 49. The assertions queue in the theories didn't get cleared on SatSolver backtracking so there were unasserted literals being returned as part of some conflicts. Sat solver now explicitely calls in the theory engine after it backtracks in order to clear the queues (clearAssertionQueues).

Also, changed the let.smt as it used to exibit "single literal conflict" problem. The sat solve can not except conflicts similar to (x != x), these should be rewritten to false during pre-processing.

Adding 3 more small problems from the library that we can solve now to the regressions.
src/prop/cnf_stream.cpp
src/prop/minisat/core/Solver.C
src/prop/sat.h
src/theory/theory.h
src/theory/theory_engine.h
test/regress/regress0/let.smt
test/regress/regress0/uf/Makefile.am