summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2010-07-02re-generated comment headers of source filesMorgan Deters
2010-07-02roll back a small change that made arith fail some assertsMorgan Deters
2010-07-02* Added white-box TheoryEngine test that tests the rewriterMorgan Deters
* Added regression documentation to test/regress/README * Added ability to print types of vars in expr printouts with iomanipulator Node::printtypes(true)... for example, Warning() << Node::printtypes(true) << n << std::endl; * Types-printing can be specified on the command line with --print-expr-types * Improved type handling facilities and theoryOf(). For now, SORT_TYPE moved from builtin theory to UF theory to match old behavior. * Additional gdb debug functionality. Now we have: debugPrintNode(Node) debugPrintRawNode(Node) debugPrintTNode(TNode) debugPrintRawTNode(TNode) debugPrintTypeNode(TypeNode) debugPrintRawTypeNode(TypeNode) debugPrintNodeValue(NodeValue*) debugPrintRawNodeValue(NodeValue*) they all print a {Node,TNode,NodeValue*} from the debugger. The "Raw" versions print a very low-level AST-like form. The regular versions do the same as operator<<, but force full printing on (no depth-limiting). * Other trivial fixes
2010-06-30add documentation for additional clarity, re-add addTerm()Morgan Deters
2010-06-30Parsing support for SMT divisions: LRA, QF_UFLIA, QF_UFLRA, QF_UFNRA, UFNIAChristopher L. Conway
2010-06-30Adding documentation for --strict-parsing (Closes: #166)Christopher L. Conway
2010-06-30fix to switch fall-through; stats now off by default regardless of -d ↵Morgan Deters
debugging options; thanks Chris for spoting this
2010-06-30checking in CC module interface for reference.Morgan Deters
2010-06-30* theory "tree" rewriting implemented and worksMorgan Deters
* added TheoryArith::preRewrite() to test and demonstrate the use of pre-rewriting. * array types and type checking now supported * array type checking now supported * theoryOf() dispatching properly to arrays now * theories now required to implement a (simple) identify() function that returns a string identifying them for debugging/user output purposes * added "builtin" theory to hold all built-in kinds and their type rules and rewriting (currently only exploding distinct) * fixed production build failure (regarding NodeSetDepth) * removed an errant "using namespace std" in util/bitvector.h (and made associated trivial fixes elsewhere) * fixes to make unexpected exceptions more verbose in debug builds * fixes to make multiple, cascading assertion fails simpler * minor other fixes to comments etc.
2010-06-29add --default-expr-depth=N command line parameter, expose setdepth() to ↵Morgan Deters
public interface
2010-06-29This commit merges the decaying-rows branch into the main trunk.Tim King
2010-06-29Update to stats.h is now back into the trunk. The code should compile once ↵Tim King
again.
2010-06-29Merging the unate-propagator branch into the trunk. This is a big update so ↵Tim King
expect a little turbulence. This commit will not compile. There will be a second commit that fixes this in a moment. I am delaying a change to avoid svn whining about a conflict.
2010-06-29* Add CDMap<>::insertAtContextLevelZero(k, d) for inserting "initializing"Morgan Deters
data into a CDMap. Such a key doesn't disappear from the map on pop, but rather returns to its "initializing" state, set by insertAtContextLevelZero(). This can be used for lazy assignment, among other things, and has been added to support some exploratory coding by Tim in arithmetic. * Made internal CDOmap<> copy constructor private (it should always have been). This is necessary to avoid CxxTest (or others) doing nasty generic programming things that cause context invariants to be broken. * Added unit testing for this feature, and in general beef up the unit testing for CDMap<>. * src/expr/node_manager.cpp: Better output for unhandled cases in getType().
2010-06-24Added post_mortem.py a statistics collector for user with the smt_curnch ↵Tim King
cluster. Also a spelling correction for the statistic theory::conflict.
2010-06-22Made ~Stat() virtual. Added some additional statistics. And added some ↵Tim King
documentation.
2010-06-18Merging the statistics branch into the main trunk. I'll go over how to use ↵Tim King
this Tuesday during the meeting. You'll need to run autogen and receonfigure after updating.
2010-06-18bug fix (unreported on bugzilla): skolem variables failing removal from poolMorgan Deters
2010-06-16Added the experimental. +bool TheoryArith::AssertEquality(TNode n, TNode ↵Tim King
original){
2010-06-16More assorted changes to arithmetic in preparation for the code review.Tim King
2010-06-16This commit just contains miscellaneous arithmetic cleanup.Tim King
2010-06-15fix last commit gcc options (-wunknown-pragmas ==> -Wno-unknown-pragmas)Morgan Deters
2010-06-15remove warnings about unknown #pragma GCC diagnostic on older compilersMorgan Deters
2010-06-15I made a documentation change to get() to make explicit the contract ↵Tim King
requirements for 'slurping the queue'. Closes bug 154
2010-06-15(minor) fix for file documentationMorgan Deters
2010-06-14Adding array select/store to SMT v1 and v2 parsersChristopher L. Conway
2010-06-14Fix to arith to make sure it only attempts to report 1 conflict per check() ↵Tim King
call.
2010-06-14Started work on array theoryClark Barrett
2010-06-06Some assorted fixes and local optimizations for theory arith.Tim King
2010-06-06Adding += and *= to Rational.Tim King
2010-06-04Changed how assignments are saved during check. These are now backed by an ↵Tim King
attribute. There is now a priority queue for selecting the smallest inconsistent basic variable. normal.h has been removed. A large chunk of the registerTerm() stuff has been moved into preregister. The lazy splitting code is now been commented out so that it stops showing up in profiling.
2010-06-04Changed several arguments to const references.Tim King
2010-06-04Adding QF_SAT to SMT parsersChristopher L. Conway
2010-06-04Reimplementing AntlrInputStream::newStreamInputStreamChristopher L. Conway
2010-06-04** Don't fear the files-changed list, almost all changes are in the **Morgan Deters
** file-level documentation at the top of the sources. ** This is the "make bugzilla stop bugging me" bugfix commit. * Remove BackedNodeBuilder<> and collapse NodeBuilder<> hierarchy. Updated documentation in the file. Resolves bug #99. * Convenience NodeBuilders (PlusNodeBuilder, OrNodeBuilder, etc.) moved into a separate file. Partially resolves bug #100. * Moved isAssociative(Kind) into kind.h (and into the CVC4::kind namespace) instead of metakind.h (where it was in CVC4::metakind). This clears up a warning (private #inclusion) from the SMT and SMT2 parsers, and maybe makes more sense anyways, since this is based on the kind (and not the metakind) of an operator. * Documentation improvement; doxygen top-level \file gestures, \brief gestures for files, etc. Changed contrib/update-copyright.pl for this change, and post-processed to add \brief. Resolves bug #98. * Removed ExprManager::mkExpr(Kind) and NodeManager::mkNode(Kind). They no longer made sense. Resolves bug #91.
2010-06-04Missing files in last commitChristopher L. Conway
2010-06-04Enabling RDL/IDL in SMT v1 and adding some simple testsChristopher L. Conway
2010-06-03Implementing input from stdin (Fixes: #144)Christopher L. Conway
2010-06-03Fixes 2 issues with assignments. The first is constructing an initial ↵Tim King
assignment for slack variables once solving has begun. (They cannot just be 0.) The second has to do with how assignments are backttacked. Assignments are now tracked all of the time, and are frozen once they are known to be consistent, i.e. after a successful updateInconsistentVars(). Also added a fuzz test that shows both of these problems to the regressions.
2010-06-03Adds toString to DeltaRationalTim King
2010-06-03Fixes a bug where registration occurs before preregistration.Tim King
2010-06-03* Added NodeBuilder<>::getChild() to make interface more consistentMorgan Deters
with that of Node. * If NodeBuilder<> hasn't yet been assigned a Kind, several member functions related to children now throw an IllegalArgumentException: * getNumChildren() * begin() * end() * operator[] * getChild() This is because if you later assign the NodeBuilder<> a PARAMETERIZED kind, the children are "reinterpreted" -- the first being an operator. Interface-wise, it doesn't make sense to return one thing for nb[0], then later, after setting the kind, to return another thing for nb[0]. * Fixed unit tests depending on this behavior. * Added a warning to the testing summary if unit tests didn't run (because this is likely due to compilation problems, and without a warning it looks kind of like a test success) * VERBOSE wasn't exported to the environment for unit test "make check." Fixed.
2010-06-03resolving bug 139: metaKindOf() warnings still exist, but it's probably a ↵Morgan Deters
g++ 4.3 and 4.4 issue
2010-06-02added a handful of debugTagIsOn("context") checks to resolve bug 143Morgan Deters
2010-06-01Fixing test failures in production buildChristopher L. Conway
2010-06-01This commit adds a debugTagIsOn() guard around some extremely verbose ↵Tim King
debugging statements. There is some evidence that these debugging statements were 20% of the running time for QF_LRA/miplib/fixnet-1000.smt in debug mode.
2010-06-01This commit is a fix for a bug in removeITEs(). The check that the then ↵Tim King
branch is a boolean should now be working. This fixes bug 138.
2010-06-01Adding SMT v2 parsing support for: QF_IDL, QF_NIA, QF_RDL, QF_UFIDLChristopher L. Conway
2010-06-01Fixed a bug in partial_model.cpp where the data was immediately deallocated ↵Tim King
before being used. Fixed a bug in node_builder.h's crop where a pointer is dereferenced after a realloc call.
2010-06-01Fixing failing test in r521Christopher L. Conway
Adding general support for associative operators in SMT v1 and v2
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback