ajreynol [Mon, 20 Jul 2015 17:46:21 +0000 (19:46 +0200)]
Squashed merge of SygusComp 2015 branch.
ajreynol [Sun, 12 Jul 2015 11:29:59 +0000 (13:29 +0200)]
Add option --full-saturate-quant-rd. Fix option --register-quant-body-terms.
Kshitij Bansal [Wed, 8 Jul 2015 13:49:48 +0000 (09:49 -0400)]
fix bug 650
ajreynol [Sun, 5 Jul 2015 17:56:42 +0000 (19:56 +0200)]
Add options --partial-triggers, --elim-taut-quant, improve robustness of --purify-triggers. Enable --quant-alpha-equiv by default. Fix fairness issue when combining cbqi+E-matching. Avoid unecessary delta lemmas. Update casc scripts.
ajreynol [Thu, 2 Jul 2015 14:54:10 +0000 (16:54 +0200)]
On-demand upper bound lemmas for deltas in quantified LRA (for casc). Force no macros-quant in incremental. Update casc TFN script.
ajreynol [Wed, 1 Jul 2015 16:42:43 +0000 (18:42 +0200)]
Add options --qcf-all-conflict, --ite-dtt-split-quant, refactor --ite-lift-quant. Minor bug fixes for internalReps, alpha equivalence. Update casc 25 FOF script.
Kshitij Bansal [Tue, 30 Jun 2015 05:47:10 +0000 (01:47 -0400)]
fix sets-translate
Kshitij Bansal [Tue, 30 Jun 2015 04:16:47 +0000 (00:16 -0400)]
fix smt2 parameterized sort printing
ajreynol [Mon, 29 Jun 2015 11:30:44 +0000 (13:30 +0200)]
Module to infer alpha equivalence of quantified formulas. Minor clean up of options.
ajreynol [Sat, 27 Jun 2015 07:30:06 +0000 (09:30 +0200)]
Refactor various corner cases of fmf, quantifiers modules. Enable cbqi2 by default on pure quantified arithmetic. Fix bug in sort inference related to mixed real/int, add regression.
ajreynol [Thu, 25 Jun 2015 12:06:06 +0000 (14:06 +0200)]
Do not assert fail for fmf empty domains. Fixes bug 644.
ajreynol [Mon, 22 Jun 2015 13:27:44 +0000 (15:27 +0200)]
Add --user-pat=interleave. Remove unused lte inst strategy.
ajreynol [Tue, 16 Jun 2015 16:06:27 +0000 (18:06 +0200)]
Avoid completion for large finite types. Fix bug for --fmf-fun.
ajreynol [Mon, 15 Jun 2015 08:59:23 +0000 (10:59 +0200)]
Make array basis term a skolem (avoids crashing in fmf).
Clark Barrett [Mon, 15 Jun 2015 03:38:41 +0000 (20:38 -0700)]
Changing options for QF_AUFNIA to avoid bug
Tim King [Sun, 14 Jun 2015 22:28:10 +0000 (00:28 +0200)]
Fixing an assertion Constraint::assertionFringe(...) to allow hasTrichotomyProof().
Tim King [Sun, 14 Jun 2015 21:37:59 +0000 (23:37 +0200)]
Handing the case in replay where a cut is directly in conflict with an existing bound.
Tim King [Sun, 14 Jun 2015 13:03:15 +0000 (15:03 +0200)]
Fixes for shared term normalization in replay for constraint construction.
Tim King [Sat, 13 Jun 2015 22:51:19 +0000 (00:51 +0200)]
Turning off aggressive arith ite simplifications during incremental solving.
ajreynol [Sat, 13 Jun 2015 21:45:11 +0000 (23:45 +0200)]
Robust check to avoid store all instantiations. Fix prior commit for sort inference.
Tim King [Sat, 13 Jun 2015 21:30:24 +0000 (23:30 +0200)]
Changing the run script for master for the application track.
Tim King [Sat, 13 Jun 2015 21:14:46 +0000 (23:14 +0200)]
Restricting TheoryArith to computeRelevantTerms.
ajreynol [Sat, 13 Jun 2015 21:05:26 +0000 (23:05 +0200)]
Disable sort inference for SMT COMP
Clark Barrett [Sat, 13 Jun 2015 20:23:07 +0000 (13:23 -0700)]
Fixed bug in iteSimp
Clark Barrett [Sat, 13 Jun 2015 17:21:40 +0000 (10:21 -0700)]
Fix for assertion failure:
smt_engine.cpp:1992: Rewriter::rewrite(d_assertions[i]) == d_assertions[i]
when --ite-simp and --repeat-simp are on
ajreynol [Sat, 13 Jun 2015 16:36:31 +0000 (18:36 +0200)]
Fix for sort inference involving mixed Int/Real equalities.
Tim King [Sat, 13 Jun 2015 14:25:23 +0000 (16:25 +0200)]
A return value for an ApproxGLPK::loadVB() failure case was incorrect.
ajreynol [Sat, 13 Jun 2015 14:06:49 +0000 (16:06 +0200)]
Avoid instantiating with array constants.
ajreynol [Sat, 13 Jun 2015 08:00:27 +0000 (10:00 +0200)]
Ensure mkRep instantiation strategies do not violate types.
Kshitij Bansal [Fri, 12 Jun 2015 21:21:38 +0000 (17:21 -0400)]
sync options of default-assertions run script with default
ajreynol [Fri, 12 Jun 2015 20:15:18 +0000 (22:15 +0200)]
Fix crash in non-linear cbqi.
Tim King [Fri, 12 Jun 2015 15:11:29 +0000 (17:11 +0200)]
In TheoryArithPrivate::vectorToIntHoleConflict, adding check for whether or not negBack is already in conflict. This is needed as it can be called multiple times on the same constraint.
ajreynol [Fri, 12 Jun 2015 14:32:32 +0000 (16:32 +0200)]
Make sygus an output language. Parse declare-fun in sygus. Minor improvements to robustness of sygus parsing.
ajreynol [Fri, 12 Jun 2015 12:15:14 +0000 (14:15 +0200)]
Accelerate sygus solution reconstruction for constants and id functions. Minor changes to sygus type registration. Print sygus let solutions assuming fixed variable names.
Kshitij Bansal [Thu, 11 Jun 2015 18:39:34 +0000 (14:39 -0400)]
remove runscripts from master meant for experimental submission
ajreynol [Thu, 11 Jun 2015 16:13:37 +0000 (18:13 +0200)]
Avoid naming conflicts in sygus, refactor. Add missing regression. Detect Start grammar. Add regression.
ajreynol [Thu, 11 Jun 2015 14:05:55 +0000 (16:05 +0200)]
Handle duplicate operators in sygus grammars. Parse sygus quoted literals. Add regression.
ajreynol [Thu, 11 Jun 2015 13:03:52 +0000 (15:03 +0200)]
Update experimental scripts. Support top-level non-terminals in sygus grammars. Allow -N in sygus terms. Minor bug fix in datatypes_sygus. Add regression.
ajreynol [Wed, 10 Jun 2015 14:43:03 +0000 (16:43 +0200)]
Bug fix parsing constant constructor sygus.
ajreynol [Wed, 10 Jun 2015 13:35:07 +0000 (15:35 +0200)]
Support for printing solutions involving LetGTerm sygus. Bug fix define-fun within LetGTerm sygus. Bug fix sygus argument generalization. Add regressions.
ajreynol [Wed, 10 Jun 2015 09:26:51 +0000 (11:26 +0200)]
Parse support for sygus LetGTerm.
Kshitij Bansal [Tue, 9 Jun 2015 20:25:02 +0000 (16:25 -0400)]
bump thread stack size to 1 GB
ajreynol [Tue, 9 Jun 2015 09:45:14 +0000 (11:45 +0200)]
Bug fix instantiations for fmf-bound-int. Disable nested pre-skolemization for non-UF logics. Update SMT COMP scripts accordingly.
Kshitij Bansal [Tue, 9 Jun 2015 00:54:08 +0000 (20:54 -0400)]
make comment precise
Kshitij Bansal [Tue, 9 Jun 2015 00:19:57 +0000 (20:19 -0400)]
move delete beyond ifdef CVC4_COMPETITION_MODE
Kshitij Bansal [Fri, 5 Jun 2015 21:16:58 +0000 (17:16 -0400)]
pcvc4 with assertions
Kshitij Bansal [Fri, 5 Jun 2015 21:15:42 +0000 (17:15 -0400)]
update run script for assertions/scrambled run
Kshitij Bansal [Fri, 5 Jun 2015 21:00:00 +0000 (17:00 -0400)]
assertions runscript (for testing) derived from current stable (default) script
Kshitij Bansal [Fri, 5 Jun 2015 20:57:05 +0000 (16:57 -0400)]
for experimental, use incremental instead of teardown for all logics for testing purposes
Kshitij Bansal [Fri, 5 Jun 2015 20:55:46 +0000 (16:55 -0400)]
move decision to use teardown or not to logics
ajreynol [Thu, 4 Jun 2015 18:32:46 +0000 (20:32 +0200)]
Fix for last commit.
Kshitij Bansal [Thu, 4 Jun 2015 17:24:42 +0000 (13:24 -0400)]
rpl -- "--cbqi" "--cbqi --no-cbqi-sat" run-script-smtcomp2015{,-application}
Kshitij Bansal [Thu, 4 Jun 2015 17:18:12 +0000 (13:18 -0400)]
sync exerimental scripts with regular ones
ajreynol [Thu, 4 Jun 2015 06:14:30 +0000 (08:14 +0200)]
Minor changes to smt comp script for quantified arith. Add option --cbqi-sat whether to disable sat for quantified arith.
Kshitij Bansal [Wed, 3 Jun 2015 22:16:00 +0000 (18:16 -0400)]
experimental run scripts
Kshitij Bansal [Wed, 3 Jun 2015 20:58:39 +0000 (16:58 -0400)]
runscript thread stack 256
ajreynol [Wed, 3 Jun 2015 11:16:44 +0000 (13:16 +0200)]
Refactoring of sygus parsing, properly parse Constant/Variable constructors.
Kshitij Bansal [Tue, 2 Jun 2015 20:40:36 +0000 (16:40 -0400)]
application smtcomp
ajreynol [Tue, 2 Jun 2015 17:17:53 +0000 (19:17 +0200)]
Flatten sygus grammars during parsing. Remove duplicate operators from grammars.
ajreynol [Tue, 2 Jun 2015 11:43:51 +0000 (13:43 +0200)]
Add casc 25 tfn script. Change tff script to output instantiations. Work towards parsing non-flattened sygus grammars.
ajreynol [Mon, 1 Jun 2015 20:44:40 +0000 (22:44 +0200)]
When proof enabled, disable uf sym break. Add regression.
ajreynol [Fri, 29 May 2015 09:47:28 +0000 (11:47 +0200)]
Do not enforce dt fairness when single invocation sygus.
lianah [Fri, 29 May 2015 14:18:36 +0000 (10:18 -0400)]
changed resource step options to unsigned
Liana Hadarean [Thu, 28 May 2015 14:03:10 +0000 (15:03 +0100)]
added options for controlling resource step-count for various solving stages
lianah [Wed, 27 May 2015 18:25:04 +0000 (19:25 +0100)]
Merge pull request #75 from Dunedune/master
Added missing LogicException to throws in method lemma.
ajreynol [Mon, 25 May 2015 08:35:00 +0000 (10:35 +0200)]
Add missing regression
ajreynol [Mon, 25 May 2015 08:34:26 +0000 (10:34 +0200)]
Bug fix for CNF proofs (and/or case 1), thanks to Alain Mebsout for bug report.
Jordy Ruiz [Fri, 22 May 2015 08:36:23 +0000 (10:36 +0200)]
Added throw LogicException to method lemma.
ajreynol [Fri, 15 May 2015 17:47:32 +0000 (19:47 +0200)]
Fixes related to cbqi + E-matching.
ajreynol [Fri, 15 May 2015 07:09:51 +0000 (09:09 +0200)]
Avoid ensureLiteral on unpreprocessed formulas in cbqi.
ajreynol [Wed, 13 May 2015 08:13:16 +0000 (10:13 +0200)]
Refactor interface for incompleteness in quantifiers engine, cbqi. Minor fix for sygus.
Clark Barrett [Tue, 12 May 2015 20:56:00 +0000 (13:56 -0700)]
Added Finn Haedicke as a contributor.
barrettcw [Tue, 12 May 2015 20:53:34 +0000 (13:53 -0700)]
Merge pull request #74 from finnhaedicke/namespace_minisat
moved Minisat namespace into CVC4
ajreynol [Mon, 11 May 2015 18:06:21 +0000 (20:06 +0200)]
Allow sygus with no syntactic restrictions for LIA. Add regressions.
ajreynol [Mon, 11 May 2015 09:53:07 +0000 (11:53 +0200)]
Add missing regression.
ajreynol [Mon, 11 May 2015 09:41:48 +0000 (11:41 +0200)]
Support for arbitrary constants/variables in Sygus grammars.
ajreynol [Sun, 10 May 2015 17:44:58 +0000 (19:44 +0200)]
Minor improvements to infrastructure. Minor changes to default options. Add tff script. Minor additions to sygus.
ajreynol [Fri, 8 May 2015 11:03:41 +0000 (13:03 +0200)]
Add casc25 fnt script.
ajreynol [Sat, 2 May 2015 08:13:18 +0000 (10:13 +0200)]
Minor fix for corner cases of fmf-fun, fix for --dt-rewrite-error-sel. Add competition scripts (in progress).
ajreynol [Tue, 28 Apr 2015 13:50:17 +0000 (15:50 +0200)]
Fix smt2 printing of fun-def. Simplification of mbqi interface.
Clark Barrett [Tue, 28 Apr 2015 01:23:54 +0000 (18:23 -0700)]
Merge branch 'master' of https://github.com/CVC4/CVC4
Clark Barrett [Tue, 28 Apr 2015 01:11:29 +0000 (18:11 -0700)]
Fixed problem with private/public header clash
Clark Barrett [Tue, 28 Apr 2015 00:43:10 +0000 (17:43 -0700)]
Disambiguate namespaces in options, fix permissions
Tim King [Mon, 27 Apr 2015 11:15:03 +0000 (13:15 +0200)]
Updating failing unit tests.
ajreynol [Sun, 26 Apr 2015 17:26:21 +0000 (19:26 +0200)]
Bug fixes and improvements for mbqi with theory symbols, TheoryModel fullModel=false assigns values to eqc. Bug fix for fmf-fun. Minor change to resource limiting for quantifiers. Add fmf regressions.
ajreynol [Fri, 24 Apr 2015 12:41:28 +0000 (14:41 +0200)]
More parser related bug fixes (define-funs-rec, declare-funs). Bug fix for fmf mbqi=gen-ev for interpreted operators.
ajreynol [Fri, 24 Apr 2015 08:29:36 +0000 (10:29 +0200)]
Fix sygus parser for non-tokenized operators, reenable regression. Fix for --fmf-fun.
Clark Barrett [Fri, 24 Apr 2015 07:35:08 +0000 (00:35 -0700)]
Fix compiler errors due to unbalanced throw specifiers.
Clark Barrett [Thu, 23 Apr 2015 17:45:04 +0000 (10:45 -0700)]
Merge branch 'master' into google
Clark Barrett [Thu, 23 Apr 2015 17:26:11 +0000 (10:26 -0700)]
Whitespace difference
Clark Barrett [Thu, 23 Apr 2015 16:43:52 +0000 (09:43 -0700)]
A few more minor updates to match google repository with CVC4 repository
(mostly whitespace differences).
Liana Hadarean [Thu, 23 Apr 2015 16:38:48 +0000 (17:38 +0100)]
Added option for --check-unsat-cores and various core bug fixes (merge of Morgan's proof branch).
Kshitij Bansal [Wed, 22 Apr 2015 18:28:58 +0000 (14:28 -0400)]
Merge pull request #73 from kbansal/parser-dont-tokenize
Parser dont tokenize
Clark Barrett [Tue, 21 Apr 2015 23:34:15 +0000 (16:34 -0700)]
Changes needed to compile at Google, plus some bug fixes from Google.
Clark Barrett [Tue, 21 Apr 2015 21:30:51 +0000 (14:30 -0700)]
Fix file permissions
ajreynol [Tue, 21 Apr 2015 14:34:56 +0000 (16:34 +0200)]
Fix bug in fmf mbqi=fmc with arrays. Add two datatypes regressions.
Tim King [Tue, 21 Apr 2015 07:55:11 +0000 (09:55 +0200)]
Adding an example of a tester in SMT2.
Tim King [Fri, 17 Apr 2015 13:22:53 +0000 (15:22 +0200)]
Farkas proof coefficients.
This commit adds tracking of Farkas coefficients to proof enabled builds in the theory of linear
real arithmetic when proofs are enabled. There could be some performance changes due to subtly
different search paths being taken.
Additional bug fixes:
- Polynomial::exactDivide did not satisfy preconditions to the Monomial constructor.
To prevent future problems, Monomials should now be made via one of the mkMonomial functions.
- Fixes a bug in SumOfInfeasibilitiesSPD::greedyConflictSubsets().
There was a way to use a row twice in the construction of the conflicts.
This was violating an assumption in the Tableau when constructing the intermediate rows.
Constraints:
- To enable proofs, all conflicts and propagations are designed to go through the Constraint system
before they are converted to externally understandable conflicts and propagations in the form
of Node.
- Constraints must now be given a reason for marking them as true that corresponds to a proof.
- Constraints should now be marked as being true by one of the impliedbyX functions.
- Each impliedByX function has an ArithProofType associated with it.
- Each call to an impliedByX function stores a context dependent ConstraintRule object
to track the proof.
- After marking the node as true the caller should either try to propagate the constraint or raise
a conflict.
- There are no more special cases for marking a node as being true when its negation has a proof
vs. when the negation does not have a proof. One must now explicitly pass in a inConflict flag
to the impliedByX (and similar functions).
For example,this is now longer both:
void setAssertedToTheTheory(TNode witness);
void setAssertedToTheTheoryWithNegationTrue(TNode witness);
There is just:
void setAssertedToTheTheory(TNode witness, bool inConflict);
Tianyi Liang [Fri, 17 Apr 2015 19:41:24 +0000 (14:41 -0500)]
Patch for Kshitij's fix on requriePhase
Kshitij Bansal [Fri, 17 Apr 2015 18:43:20 +0000 (14:43 -0400)]
Merge pull request #72 from kbansal/decision-requirephase
https://www.starexec.org/starexec/secure/details/job.jsp?id=6972
The plot is bit misleading. Those not on x=y, are from QF_BV/asp which are segfaulting (see bugzilla 623). No performance impact on other logics it was tested on.