Morgan Deters [Tue, 3 Dec 2013 00:32:59 +0000 (19:32 -0500)]
Minor cleanup.
Morgan Deters [Tue, 3 Dec 2013 00:32:44 +0000 (19:32 -0500)]
Add test case for (previously resolved) bug 528.
Morgan Deters [Tue, 3 Dec 2013 00:32:14 +0000 (19:32 -0500)]
Support for parametric datatype subtyping, so that e.g. (Pair Int Int) is a subtype of (Pair Real Real). Resolves bug #541.
lianah [Tue, 3 Dec 2013 00:41:56 +0000 (19:41 -0500)]
fixed rewriter bug where postRewrite was not caching properly
Morgan Deters [Mon, 2 Dec 2013 22:54:32 +0000 (17:54 -0500)]
Another fix to Java destruction order issues. Thanks to Zheng Manchun for the report.
Morgan Deters [Thu, 26 Sep 2013 13:32:20 +0000 (09:32 -0400)]
Update NEWS file.
Morgan Deters [Fri, 29 Nov 2013 16:32:29 +0000 (11:32 -0500)]
Fix proofs build.
Morgan Deters [Fri, 29 Nov 2013 16:06:44 +0000 (11:06 -0500)]
Fix portfolio compile error.
Morgan Deters [Wed, 27 Nov 2013 23:28:42 +0000 (18:28 -0500)]
Ignore config/compile file, which newer autotools create
Morgan Deters [Wed, 27 Nov 2013 23:08:15 +0000 (18:08 -0500)]
Fix for compile error when using gcc 4.7 with -std=gnu++11. Thanks to Martin Brain for the patch!
Morgan Deters [Wed, 3 Jul 2013 21:13:31 +0000 (17:13 -0400)]
General pre-release cleanup commit
* Rename {model,util_model}.{h,cpp} files to match class names
* Fix alreadyVisited() issue in TheoryEngine
* Remove spurious Message that causes compliance issues
* Update copyrights, fix public/private markings in headers
* minor comment fixes
* remove EXTRACT_OP as a special-case in typechecker
* note about rewriters in theoryskel readme
* Clean up some compiler warnings
* Code typos and spacing
Morgan Deters [Wed, 27 Nov 2013 22:37:30 +0000 (17:37 -0500)]
Java bindings improvements for CASCADE, minor cleanup.
Morgan Deters [Wed, 27 Nov 2013 20:35:03 +0000 (15:35 -0500)]
Add missing template instanatiation in Java bindings
Morgan Deters [Wed, 27 Nov 2013 16:23:01 +0000 (11:23 -0500)]
Some versioning in advance of the 1.3 release.
Morgan Deters [Wed, 27 Nov 2013 16:12:11 +0000 (11:12 -0500)]
Incremental is now on by default when using from API, off for command-line driver except in interactive mode.
Andrew Reynolds [Wed, 27 Nov 2013 01:02:21 +0000 (19:02 -0600)]
Bug fix for E-matching select terms, minor fix for bounded integers, bug fix to improve performance of quantifiers rewriter
Morgan Deters [Tue, 26 Nov 2013 21:37:06 +0000 (16:37 -0500)]
Fix a segfault in the printer infrastructure when called from API and no language is set
Morgan Deters [Tue, 26 Nov 2013 21:36:52 +0000 (16:36 -0500)]
Fix C++-to-Java exception translation.
Morgan Deters [Tue, 26 Nov 2013 21:36:29 +0000 (16:36 -0500)]
Fix Java output stream adapter.
Morgan Deters [Tue, 26 Nov 2013 20:25:59 +0000 (15:25 -0500)]
Fix Java destruction order issue; thanks to Zheng Manchun for reporting this bug.
Morgan Deters [Tue, 26 Nov 2013 20:05:52 +0000 (15:05 -0500)]
Minor fix for swig bindings.
Tim King [Mon, 25 Nov 2013 23:41:06 +0000 (18:41 -0500)]
Merge remote-tracking branch 'CVC4root/master'
Tim King [Mon, 25 Nov 2013 23:36:06 +0000 (18:36 -0500)]
Substantial Changes:
-ITE Simplification
-- Moved the utilities in src/theory/ite_simplifier.{h,cpp} to ite_utilities.
-- Separated simpWithCare from simpITE.
-- Disabled ite simplification on repeat simplification by default. Currently, ite simplification cannot help unless we internally make new constant leaf ites equal to constants.
-- simplifyWithCare() is now only run on QF_AUFBV by default. Speeds up nec benchmarks dramatically.
-- Added a new compress ites pass that is only run on QF_LIA by default. This targets the perverse structure of ites generated during ite simplification on nec benchmarks.
-- After ite simplification, if the ite simplifier was used many times and the NodeManager's node pool is large enough, this garbage collects: zombies from the NodeManager repeatedly, the ite simplification caches, and the theory rewrite caches.
- TheoryEngine
-- Added TheoryEngine::donePPSimpITE() which orchestrates a number of ite simplifications above.
-- Switched UnconstrainedSimplifier to a pointer.
- RemoveITEs
-- Added a heuristic for checking whether or not a node contains term ites and if not, not bothering to invoke the rest of RemoveITE::run(). This safely changes the type of the cache used on misses of run. This cache can be cleared in the future. Currently disabled pending additional testing.
- TypeChecker
-- added a neverIsConst() rule to the typechecker. Operators that cannot be used in constructing constant expressions by computeIsConst() can now avoid caching on Node::isConst() calls.
- Theory Bool Rewriter
-- Added additional simplifications for boolean ites.
Minor Changes:
- TheoryModel
-- Removed vestigial copy of the ITESimplifier.
- AttributeManager
-- Fixed a garbage collection bug when deleting the node table caused the NodeManager to reclaimZombies() which caused memory corruption by deleting from the attributeManager.
- TypeChecker
-- added a neverIsConst() rule to the typechecker. Operators that cannot be used in constructing constant expressions by computeIsConst() can now avoid caching on Node::isConst() calls.
-NodeManager
-- Added additional functions for reclaiming zombies.
-- Exposed the size of the node pool for heuristics that worry about memory consumption.
- NaryBuilder
-- Added convenience classes for constructing associative and commutative n-ary operators.
-- Added a pass that turns associative and commutative n-ary operators into binary operators. (Mostly for printing expressions for strict parsers.)
Clark Barrett [Mon, 25 Nov 2013 23:21:40 +0000 (15:21 -0800)]
Array collectModelInfo fix for Andy
Tim King [Thu, 14 Nov 2013 16:56:34 +0000 (11:56 -0500)]
Adding the changes needed to delete rewriter attributes. This includes being able to list attributes. Additionally, added debugging hooks to node manager and attribute manager.
Tim King [Wed, 20 Nov 2013 01:57:15 +0000 (20:57 -0500)]
Changing the number of bits allocated per field in node values.
Andrew Reynolds [Tue, 19 Nov 2013 23:09:19 +0000 (17:09 -0600)]
Bug fix for previous commit
Andrew Reynolds [Tue, 19 Nov 2013 22:40:23 +0000 (16:40 -0600)]
Add fair strategy for finite model finding multiple sorts --uf-ss-fair.
Morgan Deters [Thu, 14 Nov 2013 14:30:25 +0000 (09:30 -0500)]
Minor fixes for Mac OS Mavericks
Morgan Deters [Thu, 14 Nov 2013 14:33:34 +0000 (09:33 -0500)]
Allow empty record literals (fixing an oversight in previous work on empty tuples/records)
Morgan Deters [Thu, 14 Nov 2013 02:20:11 +0000 (21:20 -0500)]
Some patches to CVC3 compatibility layer tests; Thanks to Adam Buchbinder @ Google for the report and patch!
Morgan Deters [Thu, 14 Nov 2013 02:03:16 +0000 (21:03 -0500)]
Datatype::getCardinality() caching
Morgan Deters [Wed, 13 Nov 2013 23:20:17 +0000 (18:20 -0500)]
Add virtual destructors where missing
Morgan Deters [Wed, 13 Nov 2013 23:10:06 +0000 (18:10 -0500)]
Some patches to CVC3 compatibility layer; Thanks to Adam Buchbinder @ Google for the report and patch!
Morgan Deters [Wed, 13 Nov 2013 17:07:36 +0000 (12:07 -0500)]
Another build fix; the dust should be settled now.
Morgan Deters [Tue, 12 Nov 2013 23:13:17 +0000 (18:13 -0500)]
Minor portfolio fixes for some platforms.
Morgan Deters [Tue, 12 Nov 2013 23:12:11 +0000 (18:12 -0500)]
Some additional explanation for a common configure error.
Tianyi Liang [Tue, 12 Nov 2013 22:46:01 +0000 (16:46 -0600)]
lb change
Tianyi Liang [Tue, 12 Nov 2013 21:49:39 +0000 (15:49 -0600)]
add string progress measurements
Tianyi Liang [Tue, 12 Nov 2013 19:39:58 +0000 (13:39 -0600)]
Merge branch 'master' of github.com:tiliang/CVC4
Tianyi Liang [Tue, 12 Nov 2013 19:33:15 +0000 (13:33 -0600)]
add loop cache
Tianyi Liang [Tue, 12 Nov 2013 19:33:15 +0000 (13:33 -0600)]
add loop cache
Morgan Deters [Tue, 12 Nov 2013 15:10:45 +0000 (10:10 -0500)]
Fix new-theory script for new, flattened build system.
Morgan Deters [Tue, 12 Nov 2013 15:08:39 +0000 (10:08 -0500)]
Minor build system cleanup
Tianyi Liang [Tue, 12 Nov 2013 01:45:07 +0000 (19:45 -0600)]
length lemma is changed, var-split lemma is changed
Tianyi Liang [Mon, 11 Nov 2013 17:32:45 +0000 (11:32 -0600)]
Merge branch 'master' of https://github.com/CVC4/CVC4
Morgan Deters [Mon, 11 Nov 2013 16:51:07 +0000 (11:51 -0500)]
Expanded usefulness of (set-info :cvc4-logic ...)
Morgan Deters [Mon, 11 Nov 2013 16:05:28 +0000 (11:05 -0500)]
Some fixes to build system with dependency-tracking is off; should fix RPM/Debian builds.
Morgan Deters [Mon, 11 Nov 2013 16:04:48 +0000 (11:04 -0500)]
Change exit status to be more consistent with other command-line tools: 0 success, nonzero error
Morgan Deters [Mon, 11 Nov 2013 03:05:05 +0000 (22:05 -0500)]
Fix compat-java library naming on Mac OS; thanks to Zheng Manchun for reporting this issue
Tianyi Liang [Mon, 11 Nov 2013 00:48:21 +0000 (18:48 -0600)]
Merge branch 'master' of https://github.com/CVC4/CVC4
Morgan Deters [Fri, 8 Nov 2013 21:49:12 +0000 (16:49 -0500)]
Fix "make distclean", which should fix some of the build issues from last night
Morgan Deters [Thu, 7 Nov 2013 23:03:42 +0000 (18:03 -0500)]
Minor fixups to last commit
Morgan Deters [Wed, 6 Nov 2013 21:58:16 +0000 (16:58 -0500)]
Flatten libcvc4 build structure; remove some #include interdependences
Morgan Deters [Fri, 8 Nov 2013 21:49:12 +0000 (16:49 -0500)]
Fix "make distclean", which should fix some of the build issues from last night
Morgan Deters [Thu, 7 Nov 2013 23:03:42 +0000 (18:03 -0500)]
Minor fixups to last commit
Morgan Deters [Wed, 6 Nov 2013 21:58:16 +0000 (16:58 -0500)]
Flatten libcvc4 build structure; remove some #include interdependences
Tianyi Liang [Thu, 7 Nov 2013 17:04:31 +0000 (11:04 -0600)]
Adds the header file into makefile, solving building error; adds cache for derivative; disables loop detection when finite model finding is enabled.
Tianyi Liang [Thu, 7 Nov 2013 17:04:31 +0000 (11:04 -0600)]
Adds the header file into makefile, solving building error; adds cache for derivative; disables loop detection when finite model finding is enabled.
Tianyi Liang [Wed, 6 Nov 2013 23:18:31 +0000 (17:18 -0600)]
bug fix
Tianyi Liang [Wed, 6 Nov 2013 18:11:11 +0000 (12:11 -0600)]
change options
Andrew Reynolds [Wed, 6 Nov 2013 18:31:31 +0000 (12:31 -0600)]
Bug fixes for bounded integer quantification. Current best strategy is to turn off MBQI. Disable relevant triggers by default.
Tianyi Liang [Wed, 6 Nov 2013 23:18:31 +0000 (17:18 -0600)]
bug fix
Andrew Reynolds [Wed, 6 Nov 2013 18:31:31 +0000 (12:31 -0600)]
Bug fixes for bounded integer quantification. Current best strategy is to turn off MBQI. Disable relevant triggers by default.
Tianyi Liang [Wed, 6 Nov 2013 18:11:11 +0000 (12:11 -0600)]
change options
Tianyi Liang [Wed, 6 Nov 2013 17:05:16 +0000 (11:05 -0600)]
Merge branch 'master' of github.com:tiliang/CVC4
Tianyi Liang [Wed, 6 Nov 2013 16:43:06 +0000 (10:43 -0600)]
add seperate regular expression files
Tianyi Liang [Wed, 6 Nov 2013 16:43:06 +0000 (10:43 -0600)]
add seperate regular expression files
lianah [Wed, 6 Nov 2013 01:03:49 +0000 (20:03 -0500)]
fixed proof regression script and added a new uf test case
lianah [Mon, 4 Nov 2013 20:56:19 +0000 (15:56 -0500)]
Merge branch 'master' of https://github.com/CVC4/CVC4
Clark Barrett [Mon, 28 Oct 2013 21:36:56 +0000 (14:36 -0700)]
Turn off model-based arrays (causing crashes in portfolio)
Clark Barrett [Thu, 24 Oct 2013 23:48:30 +0000 (16:48 -0700)]
Fix for bug515
Tianyi Liang [Wed, 23 Oct 2013 18:52:24 +0000 (13:52 -0500)]
add back eager approach
Tianyi Liang [Wed, 23 Oct 2013 16:45:34 +0000 (11:45 -0500)]
bug fix for loop rule
Tianyi Liang [Wed, 23 Oct 2013 15:35:42 +0000 (10:35 -0500)]
bug fix
Tianyi Liang [Wed, 23 Oct 2013 02:36:12 +0000 (21:36 -0500)]
bug fixes: some issues remain, need more discussion later
Tianyi Liang [Tue, 22 Oct 2013 03:08:53 +0000 (22:08 -0500)]
remove nested re or; opt loop
Tianyi Liang [Mon, 21 Oct 2013 17:29:48 +0000 (12:29 -0500)]
string fix
Tianyi Liang [Mon, 21 Oct 2013 14:58:01 +0000 (09:58 -0500)]
Merge branch 'master' of github.com:tiliang/CVC4
Tianyi Liang [Mon, 21 Oct 2013 14:55:34 +0000 (09:55 -0500)]
add a string test case
Tianyi Liang [Mon, 21 Oct 2013 14:52:37 +0000 (09:52 -0500)]
bug fix for string special case
Tianyi Liang [Mon, 21 Oct 2013 14:55:34 +0000 (09:55 -0500)]
add a string test case
Tianyi Liang [Mon, 21 Oct 2013 14:54:49 +0000 (09:54 -0500)]
Merge branch 'master' of github.com:tiliang/CVC4
Tianyi Liang [Mon, 21 Oct 2013 14:52:37 +0000 (09:52 -0500)]
bug fix for string special case
Tianyi Liang [Mon, 21 Oct 2013 02:25:57 +0000 (21:25 -0500)]
adds regular expression range
Tianyi Liang [Mon, 21 Oct 2013 02:28:09 +0000 (21:28 -0500)]
Merge branch 'master' of github.com:tiliang/CVC4
Tianyi Liang [Mon, 21 Oct 2013 02:25:57 +0000 (21:25 -0500)]
adds regular expression range
Tianyi Liang [Mon, 21 Oct 2013 02:25:57 +0000 (21:25 -0500)]
adds regular expression range
Kshitij Bansal [Thu, 17 Oct 2013 18:03:25 +0000 (14:03 -0400)]
minor fix to last commit (gitignore)
Kshitij Bansal [Thu, 17 Oct 2013 18:02:27 +0000 (14:02 -0400)]
.gitignore personal configuration files
Tianyi Liang [Wed, 16 Oct 2013 18:24:56 +0000 (13:24 -0500)]
adds fmf for strings
Tianyi Liang [Wed, 16 Oct 2013 15:16:59 +0000 (10:16 -0500)]
renames for strings fmf
Tianyi Liang [Wed, 16 Oct 2013 14:37:17 +0000 (09:37 -0500)]
Merge branch 'master' of github.com:tiliang/CVC4
Tianyi Liang [Tue, 15 Oct 2013 22:23:51 +0000 (17:23 -0500)]
bug fix in strings : change from assert to alwaysassert
Tianyi Liang [Tue, 15 Oct 2013 19:23:08 +0000 (14:23 -0500)]
removes some junks
Andrew Reynolds [Tue, 15 Oct 2013 19:23:20 +0000 (14:23 -0500)]
performance optimizations for quantifier instantiation
Tianyi Liang [Tue, 15 Oct 2013 22:23:51 +0000 (17:23 -0500)]
bug fix in strings : change from assert to alwaysassert
Andrew Reynolds [Tue, 15 Oct 2013 19:23:20 +0000 (14:23 -0500)]
performance optimizations for quantifier instantiation
Tianyi Liang [Tue, 15 Oct 2013 19:23:08 +0000 (14:23 -0500)]
removes some junks
Tianyi Liang [Tue, 15 Oct 2013 18:16:03 +0000 (13:16 -0500)]
bug fix: string cache cleaning