Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
dues to a problem of not correctly handling disequalities. Performance implications are uncertain.
|
|
optimized way of doing getConstraint() if the user already has a ValueCollection&.
|
|
- Changes the signature of getDeltaValue to throw DeltaRationalException and ModelException
-- DeltaRationalExceptions can occur with non-linear arithmetic computations that cannot be done. (0 + delta) * (1 + delta) is not a DeltaRational.
-- ModelExceptions occur if getDeltaValue() is going to return a value that disagrees with its value in the model (due to non-linear arithmetic)
-- ModelExceptions also occur if getDeltaValue(n) is called on a variable arithmetic has never seen before.
- getEqualityStatus() now wraps and catches both of these exceptions. If either occurs, the equality status is EQUALITY_UNKNOWN. This allows arithmetic to handle terms it has never seen before in getEqualityStatus. This resolves bug 453.
- Removes the dead code rowImplication() entirely.
|
|
DeltaRationalException which can be called when an operation on a DeltaRational does not have well formed semantics. This allows for things like multiplying two DeltaRationals, which may or may not result in a DeltaRational.
|
|
useful while debugging.
|
|
lastWinner only for (get-model) command, using thread0 otherwise.
|
|
the equality being split on. Instead of issuing 'x != y implies (x < y or x > y)', the lemma is now '(x <= y or x >= y)'. This resolves bug 450.
|
|
|
|
* remove from public interface (ExprManager, Type)
* CVC parser reports an unimplemented feature error if used
I didn't want to tear it out completely (from NodeManager, TypeNode,
type-checking, pre-processing, etc.) because that's a lot of hassle
and we'll add it back in after the release anyway. It *does* mean
that CVC4::Predicate is in the public interface, but that it can't be
used for anything (by users).
(this commit was certified error- and warning-free by the test-and-commit script.)
|
|
Array select terms (thanks for the bug report Francois)
|
|
|
|
* some bindings cleanup
(this commit was certified error- and warning-free by the test-and-commit script.)
|
|
|
|
ALL_SUPPORTED logic
* Java bindings fixes: fixed access to ostreams, iterators
* Make SmtEngine::setUserAttribute() (and others) take a const string&
* Also a few compliance fixes
(this commit was certified error- and warning-free by the test-and-commit script.)
|
|
|
|
|
|
Thanks to Wei for the bug report.
|
|
|
|
|
|
Also refactored some header file includes to reduce compile time
|
|
|
|
QF_UFBV as well
|
|
restoring after a flipDecision().
(this commit was certified error- and warning-free by the test-and-commit script.)
|
|
|
|
similar to arrays - limit the set of terms reported to those relevant in the
current context. Also removed collectModelInfo from sharedTermsDatabase -
doesn't seem to be needed any more.
|
|
printer now properly prints LAMBDAs. Model builing now gives bound variables names that can be parsed bypresentation language.
|
|
infrastructure for recognizing quantifier macros
|
|
|
|
|
|
be in the final total order.
|
|
|
|
|
|
of undef.
|
|
|
|
unknown because of incompleteness. Other unknown results are not safe to build models for, timeout, interrupted, etc.
|
|
refactoring code out of instantiators in preparation for quantifiers equality engine
|
|
smt_engine.cpp
|
|
|
|
|
|
|
|
|
|
arithmetic.
|
|
DeltaRational values for lowerbounds, upperbounds, assignments and disequalities. Throws LogicException when a non-linear term is asserted and the the LogicInfo isLinear() disagrees.
|
|
circuit for division by 0; temporary fix for bug440
|
|
CVC4 now produces equivalent output when dumping the SMT1 and SMT2 attachments to that bug report.
This also fixes a memory leak in the new-variable-notification mechanism.
(this commit was certified error- and warning-free by the test-and-commit script.)
|
|
** remove a number of warnings in bindings generation
** give appropriate names for operator-overloading
** make sure Java language bindings are built with -fno-strict-aliasing, to ensure the optimizer doesn't produce bad code
* Also remove BitVector::equals(), which wasn't used and was inconsistently implemented (operator==() is still there).
(this commit was certified error- and warning-free by the test-and-commit script.)
|
|
be used yet), added new totality lemma option for uf strong solver
|