Morgan Deters [Thu, 27 Jun 2013 18:55:55 +0000 (14:55 -0400)]
Better user documentation for mkVar() and mkBoundVar().
Thanks to Alex Horn for raising the issue on the CVC-BUGS mailing list.
Morgan Deters [Thu, 27 Jun 2013 18:42:28 +0000 (14:42 -0400)]
Minor printer cleanup for SMT-LIBv2 symbols "div" and "mod".
Thanks to Alex Horn for raising the issue on the CVC-BUGS mailing list.
Andrew Reynolds [Wed, 26 Jun 2013 19:40:05 +0000 (14:40 -0500)]
Add support for interval models in bounded integers MBQI (in progress).
Morgan Deters [Tue, 25 Jun 2013 23:53:02 +0000 (19:53 -0400)]
Merge branch '1.2.x'
Morgan Deters [Tue, 25 Jun 2013 23:39:32 +0000 (19:39 -0400)]
Proposed fix for bug #513
Andrew Reynolds [Tue, 25 Jun 2013 17:18:05 +0000 (12:18 -0500)]
Refactoring of model engine to separate individual implementations of model builder. Begin work on interval models for integers. Other minor cleanup.
Morgan Deters [Tue, 25 Jun 2013 00:21:37 +0000 (20:21 -0400)]
Add files missing from last commit
Morgan Deters [Mon, 24 Jun 2013 23:35:58 +0000 (19:35 -0400)]
Support for abs, to_int, is_int, divisible in SMT-LIB; also --rewrite-divk allows linearization of div,mod,/ by a constant.
Andrew Reynolds [Mon, 24 Jun 2013 17:52:07 +0000 (12:52 -0500)]
Add options for symmetry breaking in uf+ss totality axiom approach, option for using clique lemmas instead of splitting on demand, option for simplifying models in fmf-fmc, minor fixes for rewrite engine
Morgan Deters [Fri, 21 Jun 2013 15:15:57 +0000 (11:15 -0400)]
Fix failure in non-assertion builds on incorrect SmtEngine use.
Morgan Deters [Wed, 19 Jun 2013 22:28:38 +0000 (18:28 -0400)]
Merge branch '1.2.x'
Morgan Deters [Wed, 19 Jun 2013 22:27:42 +0000 (18:27 -0400)]
Workaround for suspected clang 3.0 codegen bug on Mac
Morgan Deters [Wed, 19 Jun 2013 15:11:27 +0000 (11:11 -0400)]
Fix to the "include" extended feature of the SMT-LIB parser
Morgan Deters [Wed, 19 Jun 2013 15:09:49 +0000 (11:09 -0400)]
Give a more useful parse error message for "undeclared variable -1".
Indeed, "-1" is a valid user symbol in SMT-LIB; this commit makes a small
change to the parser to detect when something like "-1" is used but
undeclared, and adds a note to the error message giving the syntax for
unary minus.
Morgan Deters [Mon, 17 Jun 2013 22:36:26 +0000 (18:36 -0400)]
Java streams example I forgot to add a long time ago
Andrew Reynolds [Mon, 17 Jun 2013 20:31:28 +0000 (15:31 -0500)]
Make --var-elim-quant true by default. Add rewrite engine to quantifiers module.
Andrew Reynolds [Sun, 16 Jun 2013 02:00:39 +0000 (21:00 -0500)]
Fix in SMT2 parser for parametric datatypes
Morgan Deters [Mon, 10 Jun 2013 03:11:55 +0000 (23:11 -0400)]
another fix for array-store-all printing
Morgan Deters [Mon, 10 Jun 2013 02:40:23 +0000 (22:40 -0400)]
Better array-store-all output for SMT-LIB.
Morgan Deters [Sat, 8 Jun 2013 23:17:03 +0000 (19:17 -0400)]
Fix typos in alttheoryskel
Morgan Deters [Fri, 7 Jun 2013 15:30:00 +0000 (11:30 -0400)]
Fixes for Boolean terms in arrays (including fix for bug 517).
Morgan Deters [Fri, 7 Jun 2013 21:35:21 +0000 (17:35 -0400)]
One more case for arrays of Boolean.
Morgan Deters [Fri, 7 Jun 2013 15:30:00 +0000 (11:30 -0400)]
Fix for bug 517.
Morgan Deters [Fri, 7 Jun 2013 19:23:36 +0000 (15:23 -0400)]
Allow disabling include-file feature
Dejan Jovanović [Fri, 7 Jun 2013 02:55:24 +0000 (22:55 -0400)]
small parese issue in IDL
Dejan Jovanović [Thu, 6 Jun 2013 19:01:21 +0000 (15:01 -0400)]
typo
Dejan Jovanović [Wed, 5 Jun 2013 20:35:37 +0000 (16:35 -0400)]
IDL example theory (to be used with --use-theory=idl).
Andrew Reynolds [Wed, 5 Jun 2013 16:23:56 +0000 (11:23 -0500)]
Fix bug in --fmf-fmc for producing models of functions not appearing in quantified formulas.
Morgan Deters [Tue, 4 Jun 2013 19:51:42 +0000 (15:51 -0400)]
File inclusion in Smt2 parser.
The extended command (include-file "filename") now includes file content.
Morgan Deters [Tue, 4 Jun 2013 22:09:48 +0000 (18:09 -0400)]
Add --no-condense-function-values option for explicit function models (useful in some applications)
Morgan Deters [Tue, 4 Jun 2013 23:16:54 +0000 (19:16 -0400)]
Merge branch '1.2.x'
Morgan Deters [Tue, 4 Jun 2013 13:10:55 +0000 (09:10 -0400)]
Fix clang static initialization order issue; fixes bug 512.
Andrew Reynolds [Tue, 4 Jun 2013 17:12:30 +0000 (12:12 -0500)]
Add partial support for MBQI with arrays when using --fmf-fmc. Fix constant bounds for bounded integers.
Morgan Deters [Mon, 3 Jun 2013 22:03:12 +0000 (18:03 -0400)]
Merge tag 'casc24'
Morgan Deters [Mon, 3 Jun 2013 22:02:33 +0000 (18:02 -0400)]
Updated CASC scripts, as provided to Geoff Sutcliffe
Morgan Deters [Wed, 29 May 2013 17:03:03 +0000 (13:03 -0400)]
Merge branch '1.2.x'
Morgan Deters [Wed, 29 May 2013 17:02:52 +0000 (13:02 -0400)]
Per SMT-LIB spec, allow (set-info..) command to succeed implicitly with unknown key.
Morgan Deters [Wed, 29 May 2013 13:48:40 +0000 (09:48 -0400)]
SMT-LIB printer updates (some missing cases).
Morgan Deters [Tue, 28 May 2013 23:06:12 +0000 (19:06 -0400)]
Fix bug where strict mode didn't allow DIV or MOD, and Ints permitted real division
Morgan Deters [Tue, 28 May 2013 17:29:59 +0000 (13:29 -0400)]
Standardize SMT-LIBv2 set of logics to use LogicInfo.
Previously, SMT-LIB logics were treated specially, as in SMT-LIB v1.2.
This led to inconsistencies---such as nonstandard logics like "QF_LIRA"
being accepted in set-logic but not providing the "Real" sort. Now,
the LogicInfo is used and queried, so nonstandard logics should work
fine and declare the correct symbols. SMT-LIB v1.2, unfortunately,
can't take advantage of this fully since symbols like "Array" have
substantially different meanings in different logics.
Andrew Reynolds [Thu, 23 May 2013 21:45:47 +0000 (16:45 -0500)]
Refactoring to prepare for MBQI with integer quantification. Minor bug fixes.
Andrew Reynolds [Wed, 22 May 2013 22:41:11 +0000 (17:41 -0500)]
Merge branch 'master' of https://github.com/CVC4/CVC4
Conflicts:
src/theory/arith/theory_arith_private.cpp
src/theory/quantifiers_engine.cpp
Andrew Reynolds [Wed, 22 May 2013 22:34:23 +0000 (17:34 -0500)]
Significant work on bounded integer quantification to handle non-trivial bounds. Refactoring of InstConstantAttribute to be internal to TermDb.
Andrew Reynolds [Wed, 22 May 2013 21:33:15 +0000 (16:33 -0500)]
Add regressions for finite model finding
Morgan Deters [Tue, 21 May 2013 22:58:32 +0000 (18:58 -0400)]
Merge branch '1.2.x'
Morgan Deters [Tue, 21 May 2013 22:39:33 +0000 (18:39 -0400)]
Fix bug 512: an assertion failure only appearing with clang on Mac OS, due to improper ITE removal in quantifier instantiations.
Morgan Deters [Tue, 21 May 2013 22:38:27 +0000 (18:38 -0400)]
Fix an error that valgrind found.
Morgan Deters [Tue, 21 May 2013 20:34:29 +0000 (16:34 -0400)]
Merge branch '1.2.x'
Morgan Deters [Tue, 21 May 2013 20:18:15 +0000 (16:18 -0400)]
Fix incremental bug in symmetry breaker.
Thanks to Christoph Sticksel for reporting this.
Morgan Deters [Mon, 20 May 2013 23:07:03 +0000 (19:07 -0400)]
Merge branch '1.2.x'
Conflicts:
library_versions
src/parser/parser.h
Morgan Deters [Fri, 17 May 2013 20:53:21 +0000 (16:53 -0400)]
Fix error reporting on use of (nonlinear) div,mod,/ symbols
Morgan Deters [Fri, 17 May 2013 21:13:36 +0000 (17:13 -0400)]
Update THANKS to mention David Cok's contributions.
Morgan Deters [Fri, 17 May 2013 22:14:18 +0000 (18:14 -0400)]
Detect multiply-defined :named annotations and issue an error.
Thanks to David Cok for pointing out this issue.
Conflicts:
library_versions
Morgan Deters [Fri, 17 May 2013 21:04:34 +0000 (17:04 -0400)]
Fix parsing of SMT-LIBv2 |quoted| symbols that span newlines in interactive mode.
Thanks to David Cok for raising this issue.
Morgan Deters [Fri, 17 May 2013 16:36:54 +0000 (12:36 -0400)]
Compliance fixes for :named annotations: they must name closed subterms, the names must be user-permitted names, etc.
Thanks to David Cok for raising this issue.
Morgan Deters [Fri, 17 May 2013 16:03:29 +0000 (12:03 -0400)]
Don't allow get-model & co after a user push/pop
This makes us more strictly adhere to the spec, but it's useful anyway:
previously we would support a get-model until the problem was explicitly
changed with e.g. a new assertion. That meant you could check-sat, then
pop, then get-model, but you'd only get the part of the model still in
scope. This is strange, and would likely lead to problems, so it's now
disabled.
Thanks to David Cok for inquiring about this.
Morgan Deters [Fri, 17 May 2013 15:18:12 +0000 (11:18 -0400)]
As per SMT-LIB standard: make - and xor take n>2 args and be left-assoc; => takes n>2 args and is right-assoc.
Thanks to David Cok for pointing out this issue.
Morgan Deters [Fri, 17 May 2013 15:12:36 +0000 (11:12 -0400)]
Fix for equality-chaining of Booleans in SMT-LIBv2.
Thanks to David Cok for reporting this.
Morgan Deters [Fri, 17 May 2013 14:38:03 +0000 (10:38 -0400)]
Fix destruction issue in GetValueCommand leading to crash.
Thanks to David Cok for reporting this.
Morgan Deters [Fri, 17 May 2013 14:19:54 +0000 (10:19 -0400)]
Better error on invalid logic strings.
Thanks to David Cok for reporting this issue.
Conflicts:
library_versions
Morgan Deters [Fri, 17 May 2013 13:54:15 +0000 (09:54 -0400)]
Better error on illegal (pop N); also more compliant SMT-LIB error messages in some places
Thanks to David Cok for reporting these issues.
Morgan Deters [Fri, 17 May 2013 13:27:55 +0000 (09:27 -0400)]
A couple of fixes to the get-option command for compliance with SMT-LIB.
Thanks to David Cok for reporting this issue.
Morgan Deters [Fri, 17 May 2013 12:59:25 +0000 (08:59 -0400)]
Disallow construction of (_ BitVec 0).
Thanks to David Cok for reporting this issue.
Morgan Deters [Fri, 17 May 2013 12:51:36 +0000 (08:51 -0400)]
Fixed "success" response to (push N) / (pop N) with N > 1.
Thanks to David Cok for reporting this issue.
Morgan Deters [Fri, 17 May 2013 12:43:24 +0000 (08:43 -0400)]
Fix to empty response to (get-assignment).
Thanks to David Cok for reporting this issue.
Morgan Deters [Thu, 16 May 2013 22:55:08 +0000 (18:55 -0400)]
configure fix for building with glpk on redhat, perhaps others
Morgan Deters [Thu, 16 May 2013 21:30:13 +0000 (17:30 -0400)]
minor changes to language bindings
Morgan Deters [Fri, 10 May 2013 21:08:23 +0000 (17:08 -0400)]
disable Logic-checking with finite model finding for now, since FMF uses Rationals, making the check think arithmetic should be enabled (but it's not)
Morgan Deters [Fri, 10 May 2013 17:01:02 +0000 (13:01 -0400)]
Fix erroneous results when the logic was incorrectly specified (by throwing LogicException). Also correct a case where sharing was doing some work during pure theory solving.
Andrew Reynolds [Mon, 20 May 2013 16:06:02 +0000 (11:06 -0500)]
Possible final version of run scripts for casc.
Andrew Reynolds [Fri, 17 May 2013 23:17:50 +0000 (18:17 -0500)]
Add model-producing run script for casc.
Andrew Reynolds [Fri, 17 May 2013 22:40:34 +0000 (17:40 -0500)]
Add support for --dump-models option, in preparation for casc.
Morgan Deters [Fri, 17 May 2013 15:18:12 +0000 (11:18 -0400)]
As per SMT-LIB standard: make - and xor take n>2 args and be left-assoc; => takes n>2 args and is right-assoc.
Thanks to David Cok for pointing out this issue.
Morgan Deters [Fri, 17 May 2013 15:12:36 +0000 (11:12 -0400)]
Fix for equality-chaining of Booleans in SMT-LIBv2.
Thanks to David Cok for reporting this.
Morgan Deters [Fri, 17 May 2013 14:38:03 +0000 (10:38 -0400)]
Fix destruction issue in GetValueCommand leading to crash.
Thanks to David Cok for reporting this.
Morgan Deters [Fri, 17 May 2013 14:19:54 +0000 (10:19 -0400)]
Better error on invalid logic strings.
Thanks to David Cok for reporting this issue.
Morgan Deters [Fri, 17 May 2013 13:54:15 +0000 (09:54 -0400)]
Better error on illegal (pop N); also more compliant SMT-LIB error messages in some places
Thanks to David Cok for reporting these issues.
Morgan Deters [Fri, 17 May 2013 13:27:55 +0000 (09:27 -0400)]
A couple of fixes to the get-option command for compliance with SMT-LIB.
Thanks to David Cok for reporting this issue.
Morgan Deters [Fri, 17 May 2013 12:59:25 +0000 (08:59 -0400)]
Disallow construction of (_ BitVec 0).
Thanks to David Cok for reporting this issue.
Morgan Deters [Fri, 17 May 2013 12:51:36 +0000 (08:51 -0400)]
Fixed "success" response to (push N) / (pop N) with N > 1.
Thanks to David Cok for reporting this issue.
Morgan Deters [Fri, 17 May 2013 12:43:24 +0000 (08:43 -0400)]
Fix to empty response to (get-assignment).
Thanks to David Cok for reporting this issue.
Morgan Deters [Thu, 16 May 2013 22:55:08 +0000 (18:55 -0400)]
configure fix for building with glpk on redhat, perhaps others
Andrew Reynolds [Thu, 16 May 2013 21:54:20 +0000 (16:54 -0500)]
Fix minor bug in full_model_check.cpp
Morgan Deters [Thu, 16 May 2013 21:30:13 +0000 (17:30 -0400)]
minor changes to language bindings
Andrew Reynolds [Tue, 14 May 2013 21:42:23 +0000 (16:42 -0500)]
Update casc24-fnt run script. Add casc24-fof run script.
lianah [Tue, 14 May 2013 20:28:12 +0000 (16:28 -0400)]
added some extra options to the bit-vector theory
Andrew Reynolds [Tue, 14 May 2013 20:18:29 +0000 (15:18 -0500)]
Add support for quantifier patterns in smt2 printer.
Andrew Reynolds [Tue, 14 May 2013 17:11:14 +0000 (12:11 -0500)]
Refactoring to separate old and new model building/checking code.
Andrew Reynolds [Sat, 11 May 2013 22:36:07 +0000 (17:36 -0500)]
Preliminary version of finite model finding over bounded integer quantification. Minor update to casc script.
Morgan Deters [Fri, 10 May 2013 21:08:23 +0000 (17:08 -0400)]
disable Logic-checking with finite model finding for now, since FMF uses Rationals, making the check think arithmetic should be enabled (but it's not)
lianah [Fri, 10 May 2013 22:23:20 +0000 (18:23 -0400)]
now proofs print mapping between atom and propositional variable as a comment in LFSC
Andrew Reynolds [Fri, 10 May 2013 20:18:20 +0000 (15:18 -0500)]
Update casc run script. Work on compliance for SZS output.
lianah [Fri, 10 May 2013 19:52:37 +0000 (15:52 -0400)]
fixes to the proof system so it works with theory lemmas and explanations
Morgan Deters [Fri, 10 May 2013 17:01:02 +0000 (13:01 -0400)]
Fix erroneous results when the logic was incorrectly specified (by throwing LogicException). Also correct a case where sharing was doing some work during pure theory solving.
Morgan Deters [Fri, 10 May 2013 16:57:58 +0000 (12:57 -0400)]
Add documentation for --disable-fmf-inst-gen, which removes a warning
Andrew Reynolds [Fri, 10 May 2013 02:39:03 +0000 (21:39 -0500)]
Add simplification option --fo-prop-quant. Add model support for new model-checking procedure. Add run script for casc24-fnt.
Kshitij Bansal [Thu, 9 May 2013 21:47:53 +0000 (17:47 -0400)]
Merge branch 'master' of ssh://github.com/CVC4/CVC4
Tim King [Thu, 9 May 2013 18:33:35 +0000 (14:33 -0400)]
Changing the integer normal form to increase matching.
Andrew Reynolds [Thu, 9 May 2013 01:02:10 +0000 (20:02 -0500)]
Add new method for checking candidate models, --fmf-fmc. Add infrastructure for handling bounded integer quantification (quantifiers/bounded_integers.h and .cpp). Add option for disabling model minimality restriction for finite model finding, --disable-uf-ss-min-model. Add option for relational triggers such as x = f(y), --relational-trigger.
Kshitij Bansal [Sat, 27 Apr 2013 00:30:41 +0000 (20:30 -0400)]
rm decision/relevancy