cvc5.git
11 years agoHack to support global variables for CVC language extended to export mechanism.
Kshitij Bansal [Thu, 29 Nov 2012 06:59:21 +0000 (06:59 +0000)]
Hack to support global variables for CVC language extended to export mechanism.
- Adds GlobalVarAttr node attribute

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agoFixing function models with Boolean terms. Also, LAMBDA's should not be const.
Clark Barrett [Thu, 29 Nov 2012 00:59:06 +0000 (00:59 +0000)]
Fixing function models with Boolean terms.  Also, LAMBDA's should not be const.

11 years agoAdding the helloworld.cpp example.
Tim King [Wed, 28 Nov 2012 22:59:58 +0000 (22:59 +0000)]
Adding the helloworld.cpp example.

11 years agofix a potential race (have failed to reproduce)
Kshitij Bansal [Wed, 28 Nov 2012 21:52:56 +0000 (21:52 +0000)]
fix a potential race (have failed to reproduce)

11 years agoFix for getValue. Now it can handle lambda applications
Clark Barrett [Wed, 28 Nov 2012 21:26:43 +0000 (21:26 +0000)]
Fix for getValue.  Now it can handle lambda applications

11 years agoAttempted "quick-fix" for QF_UF performance regression since Boolean terms added.
Morgan Deters [Wed, 28 Nov 2012 21:18:05 +0000 (21:18 +0000)]
Attempted "quick-fix" for QF_UF performance regression since Boolean terms added.

Sharing is turned on only when Boolean terms are detected during preprocessing.  QF_UF problems (and others)
that don't use any Boolean terms won't have BV turned on.

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agotreat all get commands like getValue (send only to lastWinner)
Kshitij Bansal [Wed, 28 Nov 2012 20:18:46 +0000 (20:18 +0000)]
treat all get commands like getValue (send only to lastWinner)

11 years agominor
Kshitij Bansal [Wed, 28 Nov 2012 18:37:51 +0000 (18:37 +0000)]
minor

11 years agoupdate to release notes
Morgan Deters [Wed, 28 Nov 2012 18:00:10 +0000 (18:00 +0000)]
update to release notes

11 years agoBug fix:
Morgan Deters [Wed, 28 Nov 2012 17:37:57 +0000 (17:37 +0000)]
Bug fix:
* Fix creation of bound variables in CVC native language parser
* This corrects a problem with misleading model output

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agofix: correct misleading comment in dump output
Morgan Deters [Wed, 28 Nov 2012 17:23:37 +0000 (17:23 +0000)]
fix: correct misleading comment in dump output

11 years agoFunctions and predicates over Boolean now work with --check-models and output correct
Morgan Deters [Tue, 27 Nov 2012 22:40:05 +0000 (22:40 +0000)]
Functions and predicates over Boolean now work with --check-models and output correct
models for such functions (though they are somewhat ugly at present).

There's still a problem with model extraction, but it's not Boolean terms' fault.
Sometimes checkModel() can report that the model is just fine, but if a user extracts
values with getValue(), they find problems with the model (i.e., it doesn't satisfy some
assertions).  This appears to be due to an asymmetry between how checkModel() works and
how Model::getValue() works.  I'll open a bugzilla report to discuss this after thinking
some more on it.

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agofix in CommandSequence invoke : maintain success/failure. Fixes bug 465.
Kshitij Bansal [Tue, 27 Nov 2012 21:31:46 +0000 (21:31 +0000)]
fix in CommandSequence invoke : maintain success/failure. Fixes bug 465.

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agomore mac fixes
Morgan Deters [Tue, 27 Nov 2012 19:18:12 +0000 (19:18 +0000)]
more mac fixes

11 years agofix for some Mac builds
Morgan Deters [Tue, 27 Nov 2012 19:05:13 +0000 (19:05 +0000)]
fix for some Mac builds

11 years agoSimplify --help=decision with only currently supported options
Kshitij Bansal [Tue, 27 Nov 2012 19:02:50 +0000 (19:02 +0000)]
Simplify --help=decision with only currently supported options

Add notice/warning when using incremental-mode + decision (it was
already disabled)

Some other minor cleanup

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agogive warning at configure-time about unsupported language bindings, and don't adverti...
Morgan Deters [Tue, 27 Nov 2012 18:09:16 +0000 (18:09 +0000)]
give warning at configure-time about unsupported language bindings, and don't advertise them in help listing for --enable-language-bindings

11 years agodo not turn on BV for QF_SAT
Morgan Deters [Tue, 27 Nov 2012 17:52:01 +0000 (17:52 +0000)]
do not turn on BV for QF_SAT

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agoFirst chunk of boolean-terms support.
Morgan Deters [Tue, 27 Nov 2012 05:52:21 +0000 (05:52 +0000)]
First chunk of boolean-terms support.

Passes simple tests and doesn't break existing functionality.
Still need some work merged in for models.

This version enables BV except for pure arithmetic (since we might otherwise need Boolean term support, which uses BV).  Tonight's nightly regression run should tell us if/how that hurts performance.

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agoTuples and records merge. Resolves bug 270.
Morgan Deters [Tue, 27 Nov 2012 02:13:38 +0000 (02:13 +0000)]
Tuples and records merge.  Resolves bug 270.

Also some fixes to parametric datatypes I found, and fixes for a handful of bugs, including some observed with --check-models --incremental on together.

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agoAdding an example to show how to use arithmetic.
Tim King [Tue, 27 Nov 2012 01:39:58 +0000 (01:39 +0000)]
Adding an example to show how to use arithmetic.

11 years agoImproved implementation of Integer::length() with CLN enabled. Additional tests...
Tim King [Mon, 26 Nov 2012 21:38:28 +0000 (21:38 +0000)]
Improved implementation of Integer::length() with CLN enabled.  Additional tests to sanity check both versions CLN and GMP versions of length.

11 years agoinclude new regression directories in summary test output
Morgan Deters [Mon, 26 Nov 2012 20:05:02 +0000 (20:05 +0000)]
include new regression directories in summary test output

11 years agorolling back r4625 for now (closes bug 464), Andy we should talk about this a bit...
Morgan Deters [Mon, 26 Nov 2012 19:39:03 +0000 (19:39 +0000)]
rolling back r4625 for now (closes bug 464), Andy we should talk about this a bit more..

11 years agofixup for incremental solving
Dejan Jovanović [Mon, 26 Nov 2012 17:40:31 +0000 (17:40 +0000)]
fixup for incremental solving

11 years agoRemoving DioSolver::acceptableOriginalNodes(). This assertion was too strong, and...
Tim King [Mon, 26 Nov 2012 17:30:44 +0000 (17:30 +0000)]
Removing DioSolver::acceptableOriginalNodes(). This assertion was too strong, and was broken by r4620. This commit resolves bug463. Adding a previously triggering test case.

11 years agoAdding support for a master equality engine. Each theory gets the master equality...
Dejan Jovanović [Mon, 26 Nov 2012 17:07:46 +0000 (17:07 +0000)]
Adding support for a master equality engine. Each theory gets the master equality engine through the setMasterEqualityEngine method. This is a read-only equality engine, so nothing should be added to it directly. Instead each equality engine that is of interest should have the master equality engine attached to it. To set when to use the master equality engine see TheoryEngine::finishInit().

11 years agoImproving arithmetic debugging output.
Tim King [Mon, 26 Nov 2012 17:02:34 +0000 (17:02 +0000)]
Improving arithmetic debugging output.

11 years agoDisabling test/regress/regress0/push-pop/bug396.smt2. This takes 2m to run in debug...
Tim King [Mon, 26 Nov 2012 17:01:48 +0000 (17:01 +0000)]
Disabling test/regress/regress0/push-pop/bug396.smt2. This takes 2m to run in debug mode. This is too long for a regress0 test.

11 years agodon't include internal variables in model output
Morgan Deters [Mon, 26 Nov 2012 15:00:26 +0000 (15:00 +0000)]
don't include internal variables in model output

11 years agosome fixes to language bindings and function visibility
Morgan Deters [Mon, 26 Nov 2012 14:39:56 +0000 (14:39 +0000)]
some fixes to language bindings and function visibility

11 years agoMakefile fix for new versions of Make (thanks Clark for noticing this); see e.g....
Morgan Deters [Mon, 26 Nov 2012 13:42:27 +0000 (13:42 +0000)]
Makefile fix for new versions of Make (thanks Clark for noticing this); see e.g. osdir.com/ml/bug-make-gnu/2011-04/msg00011.html

11 years agoAdding a regression test from bug 462.
Tim King [Sun, 25 Nov 2012 01:02:49 +0000 (01:02 +0000)]
Adding a regression test from bug 462.

11 years agoThis commit fixes two incompleteness bugs (461, 459) introduced in r4611 dues to...
Tim King [Sun, 25 Nov 2012 00:49:25 +0000 (00:49 +0000)]
This commit fixes two incompleteness bugs (461, 459) introduced in r4611 dues to a problem of not correctly handling disequalities.  Performance implications are uncertain.

11 years agoAdds ensureConstraint(...) to ConstraintDatabase. This is a slightly optimized way...
Tim King [Sat, 24 Nov 2012 23:32:04 +0000 (23:32 +0000)]
Adds ensureConstraint(...) to ConstraintDatabase. This is a slightly optimized way of doing getConstraint() if the user already has a ValueCollection&.

11 years agoExample of rewrite rules use that comes from an harness test
François Bobot [Fri, 23 Nov 2012 14:37:40 +0000 (14:37 +0000)]
Example of rewrite rules use that comes from an harness test

11 years ago- Removes getDeltaValueWithNonlinear() entirely
Tim King [Wed, 21 Nov 2012 18:46:23 +0000 (18:46 +0000)]
- Removes getDeltaValueWithNonlinear() entirely
- 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.

11 years agoAdds a number of new capabilities to DeltaRational. This adds DeltaRationalException...
Tim King [Wed, 21 Nov 2012 18:36:29 +0000 (18:36 +0000)]
Adds a number of new capabilities to DeltaRational. This adds 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.

11 years agoAdded debugging output to --check-models. I've found this output quite useful while...
Tim King [Wed, 21 Nov 2012 18:31:55 +0000 (18:31 +0000)]
Added debugging output to --check-models. I've found this output quite useful while debugging.

11 years agoRun lastWinner thread for all commands. Earlier behavior was to run
Kshitij Bansal [Mon, 19 Nov 2012 23:48:34 +0000 (23:48 +0000)]
Run lastWinner thread for all commands. Earlier behavior was to run
lastWinner only for (get-model) command, using thread0 otherwise.

11 years agoAdding hand minimized test for bug 450.
Tim King [Mon, 19 Nov 2012 19:41:07 +0000 (19:41 +0000)]
Adding hand minimized test for bug 450.

11 years agoChanged the splitting-on-demand lemmas of arithmetic to no longer contain the equalit...
Tim King [Mon, 19 Nov 2012 17:16:16 +0000 (17:16 +0000)]
Changed the splitting-on-demand lemmas of arithmetic to no longer contain 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.

11 years agoFix for bug452.
Tim King [Mon, 19 Nov 2012 01:18:10 +0000 (01:18 +0000)]
Fix for bug452.

11 years agoDisable predicate subtyping:
Morgan Deters [Sun, 18 Nov 2012 21:53:36 +0000 (21:53 +0000)]
Disable predicate subtyping:
* 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.)

11 years agosupport for quantifiers macros, bug fix for bug 454 involving E-matching Array select...
Andrew Reynolds [Sun, 18 Nov 2012 17:34:00 +0000 (17:34 +0000)]
support for quantifiers macros, bug fix for bug 454 involving E-matching Array select terms (thanks for the bug report Francois)

11 years agoFixed last currently known bug in array models
Clark Barrett [Sat, 17 Nov 2012 20:54:30 +0000 (20:54 +0000)]
Fixed last currently known bug in array models

11 years ago* enable previously-failing (now succeeding) datatype example that uses records
Morgan Deters [Sat, 17 Nov 2012 18:57:16 +0000 (18:57 +0000)]
* enable previously-failing (now succeeding) datatype example that uses records
* some bindings cleanup

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agofix for language bindings (fixes debian build fail last night)
Morgan Deters [Sat, 17 Nov 2012 12:55:23 +0000 (12:55 +0000)]
fix for language bindings (fixes debian build fail last night)

11 years ago* Fix for bug 445 agreed to in meeting 11/13/2012: always dump in ALL_SUPPORTED logic
Morgan Deters [Sat, 17 Nov 2012 04:05:17 +0000 (04:05 +0000)]
* Fix for bug 445 agreed to in meeting 11/13/2012: always dump in 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.)

11 years agoFix for bug451
Clark Barrett [Fri, 16 Nov 2012 20:14:07 +0000 (20:14 +0000)]
Fix for bug451

11 years agofixing and refactoring the equality iterator
Dejan Jovanović [Fri, 16 Nov 2012 19:46:43 +0000 (19:46 +0000)]
fixing and refactoring the equality iterator

11 years agoFix dumping of array-select expressions in CVC native language.
Morgan Deters [Fri, 16 Nov 2012 19:05:36 +0000 (19:05 +0000)]
Fix dumping of array-select expressions in CVC native language.
Thanks to Wei for the bug report.

11 years agofix a compiler warning in models
Morgan Deters [Fri, 16 Nov 2012 17:52:37 +0000 (17:52 +0000)]
fix a compiler warning in models

11 years agosome fixes for --threads=1
Kshitij Bansal [Thu, 15 Nov 2012 22:39:58 +0000 (22:39 +0000)]
some fixes for --threads=1

11 years agofix for "make examples"
Morgan Deters [Thu, 15 Nov 2012 22:26:10 +0000 (22:26 +0000)]
fix for "make examples"

11 years agoMore fixes to model generation, with previously failing testcases
Clark Barrett [Thu, 15 Nov 2012 21:27:33 +0000 (21:27 +0000)]
More fixes to model generation, with previously failing testcases
Also refactored some header file includes to reduce compile time

11 years agoforgot to uncomment setLogicInternal for THEORY_BV
Liana Hadarean [Thu, 15 Nov 2012 20:57:22 +0000 (20:57 +0000)]
forgot to uncomment setLogicInternal for THEORY_BV

11 years agochanged logic options so that justification is turned on for QF_ABV and QF_UFBV as...
Liana Hadarean [Thu, 15 Nov 2012 20:52:09 +0000 (20:52 +0000)]
changed logic options so that justification is turned on for QF_ABV and QF_UFBV as well

11 years agod_incomplete is context-dependent; we shouldn't be saving its value and restoring...
Morgan Deters [Thu, 15 Nov 2012 18:12:40 +0000 (18:12 +0000)]
d_incomplete is context-dependent; we shouldn't be saving its value and restoring after a flipDecision().

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agofuzz15 should have been fuzz14
Clark Barrett [Thu, 15 Nov 2012 15:03:53 +0000 (15:03 +0000)]
fuzz15 should have been fuzz14

11 years agoFix for bug 447.
Tim King [Thu, 15 Nov 2012 02:15:22 +0000 (02:15 +0000)]
Fix for bug 447.

11 years agoFixed another AUFBV model bug. BV equality subtheory needed to do something
Clark Barrett [Thu, 15 Nov 2012 02:14:42 +0000 (02:14 +0000)]
Fixed another AUFBV model bug.  BV equality subtheory needed to do something
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.

11 years agoFixing comments in print_lambda.cvc.
Tim King [Thu, 15 Nov 2012 02:02:47 +0000 (02:02 +0000)]
Fixing comments in print_lambda.cvc.

11 years agoFix for bug 407. mkAnonymousFunction() in the parser no longer uses ':'. CVC printer...
Tim King [Wed, 14 Nov 2012 23:49:07 +0000 (23:49 +0000)]
Fix for bug 407. mkAnonymousFunction() in the parser no longer uses ':'. CVC printer now properly prints LAMBDAs. Model builing now gives bound variables names that can be parsed bypresentation language.

11 years agoreplaced all static member data from rewrite rule triggers, added infrastructure...
Andrew Reynolds [Wed, 14 Nov 2012 22:58:53 +0000 (22:58 +0000)]
replaced all static member data from rewrite rule triggers, added infrastructure for recognizing quantifier macros

11 years agoFixed a typo in r4576
Tim King [Wed, 14 Nov 2012 22:48:06 +0000 (22:48 +0000)]
Fixed a typo in r4576

11 years agoBeautifying smt_engine.cpp.
Tim King [Wed, 14 Nov 2012 22:45:46 +0000 (22:45 +0000)]
Beautifying smt_engine.cpp.

11 years agoFix to bug449. Adds shared constants to the set of DeltaRationals that must be in...
Tim King [Wed, 14 Nov 2012 22:43:57 +0000 (22:43 +0000)]
Fix to bug449. Adds shared constants to the set of DeltaRationals that must be in the final total order.

11 years agobug fixes to models, array rewriter with previously failing testcases
Clark Barrett [Wed, 14 Nov 2012 21:54:25 +0000 (21:54 +0000)]
bug fixes to models, array rewriter with previously failing testcases

11 years agoQuantifiers enabled with portfolio, closing bug 423.
Kshitij Bansal [Wed, 14 Nov 2012 20:59:00 +0000 (20:59 +0000)]
Quantifiers enabled with portfolio, closing bug 423.

11 years agofix a race problem. due to interrupt mechanism minisat returned true instead of undef.
Kshitij Bansal [Wed, 14 Nov 2012 00:29:50 +0000 (00:29 +0000)]
fix a race problem. due to interrupt mechanism minisat returned true instead of undef.

11 years agoMore bugfixes for models
Clark Barrett [Tue, 13 Nov 2012 22:51:27 +0000 (22:51 +0000)]
More bugfixes for models

11 years agoSmtEngine::checkModel() should only be called if the result is sat or unknown because...
Tim King [Tue, 13 Nov 2012 21:48:33 +0000 (21:48 +0000)]
SmtEngine::checkModel() should only be called if the result is sat or unknown because of incompleteness. Other unknown results are not safe to build models for, timeout, interrupted, etc.

11 years agorefactoring of quantifiers rewriter based on code review from yesterday, refactoring...
Andrew Reynolds [Tue, 13 Nov 2012 21:16:26 +0000 (21:16 +0000)]
refactoring of quantifiers rewriter based on code review from yesterday, refactoring code out of instantiators in preparation for quantifiers equality engine

11 years agofixed failed bv regressions by refactoring out some rewrite rules from smt_engine.cpp
Liana Hadarean [Tue, 13 Nov 2012 20:38:40 +0000 (20:38 +0000)]
fixed failed bv regressions by refactoring out some rewrite rules from smt_engine.cpp

11 years agoadded support for division by zero for bit-vector division operators
Liana Hadarean [Tue, 13 Nov 2012 04:49:34 +0000 (04:49 +0000)]
added support for division by zero for bit-vector division operators

11 years agoRelaxing too-strict assertion
Clark Barrett [Tue, 13 Nov 2012 02:47:09 +0000 (02:47 +0000)]
Relaxing too-strict assertion

11 years agoFixed an array rewriting bug found by fuzzer
Clark Barrett [Tue, 13 Nov 2012 02:28:05 +0000 (02:28 +0000)]
Fixed an array rewriting bug found by fuzzer

11 years agoTestcases for fixed bugs
Clark Barrett [Tue, 13 Nov 2012 01:24:53 +0000 (01:24 +0000)]
Testcases for fixed bugs

11 years agoFixed bug in array constant normalization found by fuzzer.
Clark Barrett [Tue, 13 Nov 2012 01:24:27 +0000 (01:24 +0000)]
Fixed bug in array constant normalization found by fuzzer.

11 years agoImproved error reporting for improperly using non-linear division in linear arithmetic.
Tim King [Mon, 12 Nov 2012 23:50:29 +0000 (23:50 +0000)]
Improved error reporting for improperly using non-linear division in linear arithmetic.

11 years agoDelta is now generated in arithmetic to keep consistent the total order of DeltaRatio...
Tim King [Mon, 12 Nov 2012 22:54:35 +0000 (22:54 +0000)]
Delta is now generated in arithmetic to keep consistent the total order of DeltaRational values for lowerbounds, upperbounds, assignments and disequalities.  Throws LogicException when a non-linear term is asserted and the the LogicInfo isLinear() disagrees.

11 years agochanged BitVector::unsignedRem to match the behavior of the bit-blasted circuit for...
Liana Hadarean [Mon, 12 Nov 2012 19:38:47 +0000 (19:38 +0000)]
changed BitVector::unsignedRem to match the behavior of the bit-blasted circuit for division by 0; temporary fix for bug440

11 years agoFix for bug 444, dealing with the placing of set-logic in dumping modes.
Morgan Deters [Mon, 12 Nov 2012 18:36:45 +0000 (18:36 +0000)]
Fix for bug 444, dealing with the placing of set-logic in dumping modes.
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.)

11 years ago* Fix language bindings: various issues
Morgan Deters [Mon, 12 Nov 2012 18:34:32 +0000 (18:34 +0000)]
* Fix language bindings: various issues
** 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.)

11 years agominor bug fixes for quantifiers, added sort inference module (not ready to be used...
Andrew Reynolds [Mon, 12 Nov 2012 16:46:51 +0000 (16:46 +0000)]
minor bug fixes for quantifiers, added sort inference module (not ready to be used yet), added new totality lemma option for uf strong solver

11 years agoFixes for the arithmetic normal form and rewriter to handle arbitrary constants for...
Tim King [Sun, 11 Nov 2012 00:28:05 +0000 (00:28 +0000)]
Fixes for the arithmetic normal form and rewriter to handle arbitrary constants for total functions.

11 years agoBeautifying integer_cln_imp.h
Tim King [Sat, 10 Nov 2012 23:56:46 +0000 (23:56 +0000)]
Beautifying integer_cln_imp.h

11 years agoFix to quantifier rewritting not being idempotent. See bug 441.
Tim King [Sat, 10 Nov 2012 23:55:34 +0000 (23:55 +0000)]
Fix to quantifier rewritting not being idempotent. See bug 441.

11 years agoRemoving rewriter call in SmtEngine::addFormula().
Tim King [Sat, 10 Nov 2012 20:27:00 +0000 (20:27 +0000)]
Removing rewriter call in SmtEngine::addFormula().

11 years agoFixed missing \ in uflra/Makefile.ma
Clark Barrett [Sat, 10 Nov 2012 20:15:24 +0000 (20:15 +0000)]
Fixed missing \ in uflra/Makefile.ma
Fixed another model bug and added previously failing fuzz testcase

11 years agoFix for bug 439. Delta computation now includes disequality information.
Tim King [Sat, 10 Nov 2012 19:01:49 +0000 (19:01 +0000)]
Fix for bug 439. Delta computation now includes disequality information.

11 years agoChange run-regression script to *additionally* run a second test with --check-models...
Morgan Deters [Sat, 10 Nov 2012 17:08:54 +0000 (17:08 +0000)]
Change run-regression script to *additionally* run a second test with --check-models *if* the benchmark is sat/invalid (or is incremental, with at least one sat/invalid result).

This increases significantly the time to do a "make regress", as more tests are running.

We need to run both *with* and *without* --check-models, since that option disables certain preprocessing.

To turn off these extra tests during a make regress, you can set CVC4_REGRESSION_ARGS=--no-check-models.

To turn off the extra test for a *particular* regression benchmark, you can put this in the benchmark:

; COMMAND-LINE: --no-check-models

That might be necessary in e.g. nonlinear arithmetic benchmarks.

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agoUpdates to Clark's commit r4540:
Morgan Deters [Sat, 10 Nov 2012 16:41:01 +0000 (16:41 +0000)]
Updates to Clark's commit r4540:

* ALL_SUPPORTED/QF_ALL_SUPPORTED don't include nonlinear
* Change "Notice" to "Warning" when produce-models turned off due to non-linear

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agofix typo in language bindings
Morgan Deters [Sat, 10 Nov 2012 16:08:37 +0000 (16:08 +0000)]
fix typo in language bindings

11 years agoFinally tracked down problems in regressions and fuzz results (this also
Clark Barrett [Sat, 10 Nov 2012 04:34:34 +0000 (04:34 +0000)]
Finally tracked down problems in regressions and fuzz results (this also
explains why my build was giving different answers from Dejan's build).
Problem was that if you run:

cvc4 --check-models foo.smt

it would fail, but if you run

cvc4 --check-models --produce-models foo.smt

it would succeed.  Even though produce-models is supposed to be automatically
set when you set check-models, it seems this was happening too late.  Fixed by
removing any distinction between produce-models and check-models in the
heuristic setting code.  Kind of ugly though.

Also, disable models if nonlinear arithmetic is on.

11 years agoTheoryEngineModelBuilder::buildModel() is only called once with fullModel=true, withi...
Morgan Deters [Fri, 9 Nov 2012 21:25:07 +0000 (21:25 +0000)]
TheoryEngineModelBuilder::buildModel() is only called once with fullModel=true, within a SAT context.  This fixes some outstanding model bugs.

Committing also a Clark-provided assertion the Model code to ensure the call is only done once per context.

(this commit was certified error- and warning-free by the test-and-commit script.)

11 years agoexport null nodes (fixes a bug in portfolio model stuff)
Kshitij Bansal [Fri, 9 Nov 2012 21:11:47 +0000 (21:11 +0000)]
export null nodes (fixes a bug in portfolio model stuff)

11 years agoTest that breaks arithmetic model building due to disequality terms.
Tim King [Fri, 9 Nov 2012 21:05:43 +0000 (21:05 +0000)]
Test that breaks arithmetic model building due to disequality terms.

11 years agoArithmetic problem that fails --check-models due incompleteness with multiplication.
Tim King [Fri, 9 Nov 2012 19:58:00 +0000 (19:58 +0000)]
Arithmetic problem that fails --check-models due incompleteness with multiplication.