Age | Commit message (Collapse) | Author |
|
imporant: theories SHOULD NOT use getSatValue at all, otherwise they might create a conflict with a literal they didn't get()
|
|
|
|
|
|
track; (set-option :print-success true) supported, (exit) causes immediate exit regardless of EOF, etc.
|
|
request from andy. evidence of performance improvement: http://church.cims.nyu.edu/regress-results/compare_jobs.php?job_id=4516&reference_id=4475&p=5
|
|
|
|
|
|
* enables decision heuristic (justification) for QF_BV and QF_AUFBV
* disables a failing regression in aufbv (because of equality engine
assert failure trigerred by above change)
* moves around the init procedure smt_engine
* destruction time issues because of moving this -- still to be fixed,
currently get around by not destucting stuff in driver
|
|
non-SAT-solver) uses of std::cout to the Message stream, and all uses of std::cerr to the Warning stream.
|
|
|
|
|
|
* dramatically less terms to manage by doing reflexivity semantically
* fixes the problem clark had with not detecting inconsistencies with shared terms
i'm not sure what's the performance impact, but this is so much better and we'll deal with performance later
|
|
restricted-simplex.
|
|
* theories now get either an assertion from the SAT solver (normalized) or an (dis-)equality between two shared terms that is non-normalized
|
|
|
|
- Changes how CongruenceManager reports conflicts.
- ConstraintDatabase can now detect and raise conflicts when doing unate propagation.
|
|
|
|
|
|
condition when reading from stdin. This should completely resolve bug #319.
However, on large inputs especially (like the stp/testcase benchmarks), this inlining feature can speed parsing by 5-10%, at the cost of not supporting interactive sessions on stdin (like in the SMT-COMP application track).
So I updated the submission script and competition build so that
* a competition build with antlr-inlining is built for the main and parallel tracks
* a competition build without antlr-inlining is built for the application track
Again, the effect is only when reading the stdin stream (but that's how SMT-COMP works). For normal (non-competition) builds, we need to support interactive sessions (from e.g. KIND) on stdin, so this inlining is off for all builds except main- and parallel-track competition builds.
Also added a "get-antlr-3.4" script that automatically downloads and locally installs a copy of libantlr3c and the antlr parser generator inside the CVC4 source tree.
Closing bug #319.
|
|
|
|
|
|
(fixes bugs in bv, others with JH on)
|
|
|
|
|
|
to catch any that I may have missed
|
|
|
|
not (e.g. QF_UFLIA).
Also fix a syntax error in a regression test (CVC4 is too lenient to catch it though---CVC3 tripped over it).
Also add additional parts for "make submission" in the top-level makefile
|
|
called before ite simplification unless arithrewriteequality is on
|
|
|
|
|
|
* array now only propagates thropugh the equality engine
* assertions in the equality rewriting to ensure eq -> { eq, T, F }
|
|
|
|
equalities or true or false
|
|
were seeing in quantifiers+decision stuff
|
|
QF_LIA/solver_cvc4/incorrect3.smt
|
|
|
|
removed by the quantifiers merge (I had reengineered some things from quantifiers so that the equality engine didn't have to expose internals as public, but then had neglected to re-privatize them)
|
|
|
|
|
|
|
|
|
|
specified in either order and the DAG threshold takes.
|
|
triggered it.
|
|
|
|
* clauses shouldn't be erased when they could be a reason for outside propagation
* propagation of p and !p is ignored as this must lead to a conflict in the subtheory internally
|
|
|
|
|
|
Adds TheoryQuantifiers and TheoryRewriteRules, QuantifiersEngine, and other infrastructure.
Adds theory instantiators to many theories.
Adds the UF strong solver.
|
|
Also fixed one bv rewrite failure (more to come)
|
|
SubstitutionMap (when debugging tag "substitutions" is on) and DagificationVisitor
|