Tim King [Mon, 9 Nov 2015 19:16:47 +0000 (11:16 -0800)]
Replacing an inefficient use of std::find(...) to use std::set's find() instead.
Tim King [Sat, 7 Nov 2015 06:53:53 +0000 (22:53 -0800)]
Changing file permissions to add or remove executable tag as appropriate.
Tim King [Thu, 5 Nov 2015 22:56:49 +0000 (14:56 -0800)]
Merging the google branch back into master.
Tim King [Thu, 5 Nov 2015 22:18:03 +0000 (14:18 -0800)]
Fixes some initialization and desctruction problems in quantifiers. Also restricts the desctructors of some components to not throw exceptions for pickier compiliers. Also changes some formatting of regression scripts.
Tim King [Thu, 5 Nov 2015 08:08:45 +0000 (00:08 -0800)]
This commit slightly generalizes the scripts for generating the _tags files.
ajreynol [Wed, 4 Nov 2015 09:41:49 +0000 (10:41 +0100)]
Better combination of UF with cbqi, refactor quantifiers intialization.
Tim King [Wed, 4 Nov 2015 07:20:04 +0000 (23:20 -0800)]
Fixing typo.
Tim King [Mon, 2 Nov 2015 22:30:52 +0000 (17:30 -0500)]
Adding a test to ensure the <build>/src/theory directory is available to the scripts in src/Makefile.am. This should fix a bug in building the debian packages.
ajreynol [Sat, 31 Oct 2015 09:00:52 +0000 (10:00 +0100)]
Improvements to handling of mixed Int/Real quantifiers.
Tim King [Fri, 30 Oct 2015 00:42:52 +0000 (17:42 -0700)]
Removes an extra dollar sign from src/options/mktagheaders. The extra dollar sign came in as a copy paste from a Makefile. This was not proper bash.
Tim King [Tue, 27 Oct 2015 06:59:54 +0000 (02:59 -0400)]
Adding the new mkdirs script to EXTRA_DIST. This should fix the failing nightly distcheck.
Tim King [Mon, 26 Oct 2015 19:21:42 +0000 (12:21 -0700)]
This commit fixes a bug related to a public header depending on a compiler flag. This resulted in user code seeing a different size for the SmtEngine class than what was compiled in the library. Proofs are enabled by default again. See cvc4.cs.nyu.edu/bugs/show_bug.cgi?id=688 for more information.
Tim King [Sat, 24 Oct 2015 01:31:30 +0000 (18:31 -0700)]
This commit removes using absolute paths in the generation of the .subdirs file. This also rearranges generation of the file so that one .subdirs file is generated once per Makefile.am file. This keeps using relative paths clean.
Tim King [Sat, 24 Oct 2015 00:47:11 +0000 (17:47 -0700)]
This commit moves the scripts for building the Debug_tags, Traces_tags, Debug_tags.h and Trace_tags.h out of options/Makefile.am and into seperate scripts. This also enables these files always being created.
Tim King [Fri, 23 Oct 2015 23:57:48 +0000 (16:57 -0700)]
This fixes a one definition rule violation for reduceDB_lt in Solver.cc in minisat and bvminisat. This also moves BVMinisat into CVC4. This also wrapped code in cpp files into the namespaces instead of having using namespace *.
ajreynol [Mon, 26 Oct 2015 15:11:00 +0000 (16:11 +0100)]
Promote InstStrategyCbqi to quantifier module. Cleanup unused code.
ajreynol [Mon, 26 Oct 2015 10:26:13 +0000 (11:26 +0100)]
Extend counterexample-guided instantiation to extended theory of Int/Real, mixed Int/Real. Bug fixes. Updates to quantifiers rewriter.
Kshitij Bansal [Sun, 25 Oct 2015 01:12:45 +0000 (21:12 -0400)]
Revert "Default builds are now proof enabled."
This reverts commit
4fd18dee3156a6dd1903b95662034d6e996ff88b.
ajreynol [Sat, 24 Oct 2015 09:41:22 +0000 (11:41 +0200)]
Fixes related to string contains.
Tim King [Fri, 23 Oct 2015 22:43:27 +0000 (15:43 -0700)]
This removes a bug for reading data that has been popped from the back of a vector using a stale reference in the unconstrained simplifier.
Tim King [Fri, 23 Oct 2015 22:35:57 +0000 (15:35 -0700)]
Specify that the default initialization must always be done for CDOhash_map's data field. Without doing this, there exists a loop where uninitialized data can be read. This can happen if T is a type like bool. The trace goes: CDOhash_map::set(data) calls ContextObj::make_current(). Now (d_pScope->isCurrent()) is false. So ContextObj::make_current() calls ContextObj::update(). ContextObj::update() calls CDOhash_map::save(). CDOhash_map::save() calls return new(pCMM) CDOhash_map(*this) which calls the copy constructor which reads the data using d_data(other.d_data).
Tim King [Fri, 23 Oct 2015 22:11:57 +0000 (15:11 -0700)]
Switching Options::current() to return a pointer. This helps avoid undefined behavior due to dereferencing a null pointer in the future.
Tim King [Fri, 23 Oct 2015 21:16:39 +0000 (14:16 -0700)]
Changes configure.ac so that the single recurisve invocation runs with a relative path. This lets the @srcdir@ variable in configuration be a relative path.
Tim King [Sat, 24 Oct 2015 02:03:24 +0000 (19:03 -0700)]
This patch slightly generalizes how the std::isfinite function in <cmath> is referred.
ajreynol [Thu, 22 Oct 2015 09:01:05 +0000 (11:01 +0200)]
Enable counterexample-guided quantifier instantiation by default for quantified logics that include at least one relevant theory. Enforce restriction on model building to last call. Update options, refactor. Update regressions.
ajreynol [Wed, 21 Oct 2015 08:47:52 +0000 (10:47 +0200)]
Minor refactoring in strings related to length.
ajreynol [Tue, 20 Oct 2015 10:49:49 +0000 (12:49 +0200)]
Refactor strings, remove old cycle checks in normalize eqc.
ajreynol [Mon, 19 Oct 2015 22:34:50 +0000 (00:34 +0200)]
Clean up explanations involving string length. Add regression.
ajreynol [Mon, 19 Oct 2015 16:10:02 +0000 (18:10 +0200)]
Improve stratification of strings extended function reductions, add regressions. Eliminate preprocess for regexp.
ajreynol [Mon, 19 Oct 2015 13:06:22 +0000 (15:06 +0200)]
Improve regexp rewriter, simplify regexp preprocess, add basic trans closure for string contains, refactoring.
ajreynol [Sun, 18 Oct 2015 10:17:00 +0000 (12:17 +0200)]
Fix for no condense func values.
ajreynol [Fri, 16 Oct 2015 16:26:34 +0000 (18:26 +0200)]
Add option to interleave enumerative instantiation with other strategies.
ajreynol [Fri, 16 Oct 2015 12:27:15 +0000 (14:27 +0200)]
Throw error for recursively defined types involving Boolean.
ajreynol [Fri, 16 Oct 2015 09:17:00 +0000 (11:17 +0200)]
Fix for codatatype constant rewrite, add regression.
ajreynol [Thu, 15 Oct 2015 15:58:35 +0000 (17:58 +0200)]
Fix congruence check in strings, fixes bug 686.
ajreynol [Thu, 15 Oct 2015 13:57:03 +0000 (15:57 +0200)]
Change semantics of str.substr to allow endpoint out of bounds, and return empty string for error conditions. Improve rewriter for str.substr.
ajreynol [Thu, 15 Oct 2015 09:43:14 +0000 (11:43 +0200)]
Decompose string contains, minor refactoring.
Kshitij Bansal [Wed, 14 Oct 2015 02:21:20 +0000 (22:21 -0400)]
Merge pull request #77 from kbansal/macsegfault
remove options infrastructure code which depended on undefined behavior
Kshitij Bansal [Tue, 13 Oct 2015 23:59:22 +0000 (19:59 -0400)]
remove options infrastructure code which depended on undefined behavior
appears to be source of crashes on mac
Kshitij Bansal [Mon, 12 Oct 2015 05:09:40 +0000 (01:09 -0400)]
Merge pull request #76 from CVC4/proofs
Proofs
Kshitij Bansal [Sun, 11 Oct 2015 23:20:16 +0000 (19:20 -0400)]
fix regression tests, support fallback mode for proofs
Liana Hadarean [Wed, 7 Oct 2015 18:56:02 +0000 (19:56 +0100)]
Default builds are now proof enabled.
ajreynol [Sun, 11 Oct 2015 13:35:14 +0000 (15:35 +0200)]
Fix strings preprocessing + incremental, fixes bug 682. Add initial infrastructure for str.contains inferences.
Liana Hadarean [Fri, 9 Oct 2015 09:26:09 +0000 (10:26 +0100)]
Temporary reverting commit
477e72b (proofs as default build) until we fix nightly builds.
ajreynol [Thu, 8 Oct 2015 21:57:50 +0000 (23:57 +0200)]
Minor improvements to strings. Refactor rewriter. Enable fairness for multiple sorts in UF finite model finding by default.
Liana Hadarean [Wed, 7 Oct 2015 18:56:02 +0000 (19:56 +0100)]
Default builds are now proof enabled.
Liana Hadarean [Wed, 7 Oct 2015 16:02:05 +0000 (17:02 +0100)]
Disabled donePPSimpITE when unsat-cores are enabled (fixes bug648)
ajreynol [Wed, 7 Oct 2015 10:54:55 +0000 (12:54 +0200)]
Minor improvements, add endpoint eq inference to strings.
ajreynol [Tue, 6 Oct 2015 11:26:03 +0000 (13:26 +0200)]
More improvements to strings rewriter for regexps, contains, indexof, replace and others. Enable non-recursive flat form inferences in strings theory solver. Refactor extf reductions. Use non-constant length terms when checking length equality. Add option --strings-eager-len.
ajreynol [Fri, 2 Oct 2015 21:15:35 +0000 (23:15 +0200)]
Fixes related to explanations for cycles, sym inferences. Minor fixes and improvements.
ajreynol [Fri, 2 Oct 2015 13:10:10 +0000 (15:10 +0200)]
Improvements to rewriter for regexp, contains, indexof. Improvements and fixes for reduction of indexof. Fixes bugs 612 and 615. Fix bug in find+offset in strings util. Add regressions.
ajreynol [Thu, 1 Oct 2015 15:57:37 +0000 (17:57 +0200)]
Evaluate extended operators on partially concrete arguments. More aggressive rewriting. Bug fix explanations for inferences. Avoid spurious cardinality splits. Do not do disequality splits for non-disequal terms. Work towards non-recursive handling of flat forms.
ajreynol [Thu, 1 Oct 2015 08:44:13 +0000 (10:44 +0200)]
More improvements to strings. More aggressive inference of constant eqc, reductions based on congruence, precheck for cycles.
ajreynol [Wed, 30 Sep 2015 08:24:15 +0000 (10:24 +0200)]
Refactor strings, bug fix inferences vs lemmas.
ajreynol [Tue, 29 Sep 2015 13:17:03 +0000 (15:17 +0200)]
Fix for fmf+incremental. Restrict cbqi to literals from ce body. Add regressions.
ajreynol [Mon, 28 Sep 2015 14:18:32 +0000 (16:18 +0200)]
Improve quantifiers engine wrt incremental presolve. Add regressions.
ajreynol [Mon, 28 Sep 2015 12:57:59 +0000 (14:57 +0200)]
Minor fix
ajreynol [Mon, 28 Sep 2015 12:12:48 +0000 (14:12 +0200)]
Minor fixes to strings, add regressions.
ajreynol [Mon, 28 Sep 2015 08:56:28 +0000 (10:56 +0200)]
Add missing regression
ajreynol [Mon, 28 Sep 2015 08:47:09 +0000 (10:47 +0200)]
Fix bug for trivial extf inferences in strings. Improve caching for splits in strings. Other improvements.
ajreynol [Sun, 27 Sep 2015 11:20:03 +0000 (13:20 +0200)]
Improved handling of extended operators. Do preprocess on memberships eagerly, only process contains/memberships that have non-constant arguments. Cleanup.
ajreynol [Sat, 26 Sep 2015 12:35:40 +0000 (14:35 +0200)]
Lazy preprocessing of extended operators in strings. Add regressions. Fixes bug 613.
ajreynol [Sat, 26 Sep 2015 08:04:34 +0000 (10:04 +0200)]
Better organization of quantifiers modules, promote full saturation to module. Add heuristics for cbqi LIA instantiation with coefficients.
ajreynol [Fri, 25 Sep 2015 15:58:56 +0000 (17:58 +0200)]
Clear term caches for quantifiers + incremental, fixes bug 674. Refactoring of term database, other refactoring. Bug fixes for cbqi+datatypes.
ajreynol [Thu, 24 Sep 2015 14:58:18 +0000 (16:58 +0200)]
Counterexample-guided instantiation for datatypes. Make sygus parsing more liberal.
ajreynol [Tue, 22 Sep 2015 12:28:33 +0000 (14:28 +0200)]
Improve ITE redundant branch elimination in quantifiers.
Kshitij Bansal [Mon, 21 Sep 2015 20:12:03 +0000 (16:12 -0400)]
Fix for sets segfault (reported by Ravi Kandhadai)
fix involves sets getModelValue handling the case when element theory
doesn't have model
ajreynol [Fri, 18 Sep 2015 18:13:11 +0000 (20:13 +0200)]
Fix bug in quantifiers engine where model construction could be skipped.
ajreynol [Fri, 18 Sep 2015 12:21:13 +0000 (14:21 +0200)]
More work mixing UF and sygus.
ajreynol [Thu, 17 Sep 2015 22:04:26 +0000 (00:04 +0200)]
Allow most smt2 commands as sygus commands. Fix bug in fmf-fun regarding quantified formulas with non-constant polarity.
ajreynol [Wed, 16 Sep 2015 09:07:36 +0000 (11:07 +0200)]
Add option --fmf-fun-rlv, remove deprecated option --axiom-inst.
ajreynol [Tue, 15 Sep 2015 08:39:29 +0000 (10:39 +0200)]
Fix bug related to quantifiers + incremental, thanks John Backes for the bug report. Other minor cleanup.
ajreynol [Fri, 11 Sep 2015 13:16:12 +0000 (15:16 +0200)]
Minor cleanup related to codatatypes.
ajreynol [Thu, 10 Sep 2015 16:38:16 +0000 (18:38 +0200)]
Models for codatatypes. Fixes bug 662.
ajreynol [Thu, 10 Sep 2015 13:30:52 +0000 (15:30 +0200)]
Normalization of codatatype constants, codatatype now has a fair enumerator.
ajreynol [Thu, 10 Sep 2015 08:12:36 +0000 (10:12 +0200)]
Fix bug 670. Minor.
ajreynol [Wed, 9 Sep 2015 08:34:20 +0000 (10:34 +0200)]
Fix bug in strings rewriter regarding lengths of substr terms.
ajreynol [Wed, 9 Sep 2015 07:48:26 +0000 (09:48 +0200)]
Working towards a fair enumerator for codatatypes.
ajreynol [Sun, 6 Sep 2015 10:20:57 +0000 (12:20 +0200)]
Improve quantifiers rewriter, minor refactoring.
ajreynol [Sat, 5 Sep 2015 10:55:31 +0000 (12:55 +0200)]
Working fix for bugs 610 and 643 regarding check-model with preprocessed quantified formulas.
ajreynol [Sat, 5 Sep 2015 10:02:28 +0000 (12:02 +0200)]
Fix bugs related to fmf with incremental. Reinitialize sorts on user pop, bug fix enumeration for uninitialized sorts, do not decide combined cardinality constraints that have not been allocated in user context. Fixes bug 654.
ajreynol [Fri, 4 Sep 2015 15:53:30 +0000 (17:53 +0200)]
Fix bugs 605 and 667.
Kshitij Bansal [Wed, 2 Sep 2015 13:17:08 +0000 (09:17 -0400)]
fix regressions
Kshitij Bansal [Wed, 2 Sep 2015 13:07:38 +0000 (09:07 -0400)]
Merge remote-tracking branch 'origin/master'
Clark Barrett [Tue, 1 Sep 2015 20:07:05 +0000 (13:07 -0700)]
Fixed but with getAssertions
ajreynol [Sun, 30 Aug 2015 07:49:48 +0000 (09:49 +0200)]
Minor improvement to sygus sol reconstruction.
ajreynol [Fri, 28 Aug 2015 11:36:44 +0000 (13:36 +0200)]
Improvements to sygus, register equivalent terms based on rewrites of original conjecture, set default invariant template mode to post-condition.
ajreynol [Thu, 27 Aug 2015 15:27:57 +0000 (17:27 +0200)]
Do ITE term bookkeeping when solving Sygus inputs. Add missing script from Sygus comp 2015. Fix bug 665 regarding strings rewriter for contains.
ajreynol [Thu, 27 Aug 2015 07:32:14 +0000 (09:32 +0200)]
Modify slow regressions.
ajreynol [Wed, 26 Aug 2015 13:49:23 +0000 (15:49 +0200)]
Minor improvements to cbqi, fix bug in solving with vts symbols, round up for integer lower bounds. Add presolve infrastructure to quantifiers engine, modify --cbqi-prereg-inst.
ajreynol [Tue, 25 Aug 2015 15:53:17 +0000 (17:53 +0200)]
Use zero in cbqi when not using infinities.
Liana Hadarean [Mon, 24 Aug 2015 10:55:16 +0000 (11:55 +0100)]
Added threshold for core bv cardinality lemmas
Liana Hadarean [Mon, 24 Aug 2015 10:46:07 +0000 (11:46 +0100)]
Fix for bv core cardinality lemma generation
Liana Hadarean [Mon, 24 Aug 2015 09:40:18 +0000 (10:40 +0100)]
eager bit-blasting gives models for boolean variables too (fixes bug618)
ajreynol [Mon, 24 Aug 2015 16:34:25 +0000 (18:34 +0200)]
Improvements to vts in cbqi, bug fix vts for non-atomic terms containing vts symbols. Move presolve for sygus to cbqi. Enable --cbqi-recurse by default, add option --cbqi-min-bound. Enable qcf for finite model finding by default.
ajreynol [Fri, 21 Aug 2015 12:40:06 +0000 (14:40 +0200)]
Minor changes related to codatatypes for 1.5 release.
ajreynol [Fri, 21 Aug 2015 08:07:12 +0000 (10:07 +0200)]
Fix disequality bounds in cbqi, record literals for ITE skolems in cbqi. Enable redundant ITE branch elimination in quantifiers rewriter.
Kshitij Bansal [Fri, 21 Aug 2015 07:26:30 +0000 (03:26 -0400)]
better handling for conflicting options with nonlinear arith (bug 646)
Kshitij Bansal [Fri, 21 Aug 2015 07:02:32 +0000 (03:02 -0400)]
Fix bug 649 (errors to regular output channel)
From SMTLIB standard:
"Regular output, including error messages, is printed on the
regular output channel..."
For CVC language, the behavior is unchanged (i.e. errors go
to stderr by default).
Liana Hadarean [Thu, 20 Aug 2015 16:21:50 +0000 (17:21 +0100)]
fix to bug659 due to algebraic solver model building