Dejan Jovanović [Mon, 22 Feb 2010 23:01:16 +0000 (23:01 +0000)]
Merging from branch branches/Liana r241
Christopher L. Conway [Mon, 22 Feb 2010 21:28:25 +0000 (21:28 +0000)]
Switching to types-as-attributes in parser
Morgan Deters [Mon, 22 Feb 2010 20:51:01 +0000 (20:51 +0000)]
* src/expr/attribute.h: fixed an issue with "const pointer"-valued
attributes.
* src/expr/attribute.h, src/expr/node_manager.h, src/expr/node.h:
hasAttribute() and getAttribute() are now const member functions.
Morgan Deters [Mon, 22 Feb 2010 20:33:00 +0000 (20:33 +0000)]
* configure.ac: Remove doc/ from search path for Makefile.ams
* configure.ac, test/unit/Makefile.am: Resolved an issue where even
when not testing, one unit test was built.
* Re-ran contrib/update-copyright.pl on all source files to ensure
consistent and correct header comments.
* contrib/get-authors: Change definition of "minor contributor"
to >= 10% of lines (rather than strictly greater than 10% of lines)
Morgan Deters [Mon, 22 Feb 2010 19:24:43 +0000 (19:24 +0000)]
Re-committing revision 232 properly:
* Add virtual destructors to CnfStream, Theory, OutputChannel, and
ExplainOutputChannel. Safer and stops a compiler warning.
* node attributes: fix compiler warnings on 64-bit.
* Node: add asserts to make sure the current NodeManager is non-NULL
when it's needed. This can happen when public-facing functions
don't properly set the node manager, and it can look like a bug in
another part of the library. Also some code format cleanup.
* configure.ac, config/cvc4.m4: added --enable-static-binary (see
discussion on bug 33), fixed bad configure lines (bug 19), added
documentation for some things.
* config.h.in: removed; it's auto-generated.
Morgan Deters [Mon, 22 Feb 2010 19:22:56 +0000 (19:22 +0000)]
undoing improperly-committed revision 232; will re-commit to get "svn blame" correct, etc..
Cesare Tinelli [Mon, 22 Feb 2010 18:59:37 +0000 (18:59 +0000)]
* Add virtual destructors to CnfStream, Theory, OutputChannel, and
ExplainOutputChannel. Safer and stops a compiler warning.
* node attributes: fix compiler warnings on 64-bit.
* Node: add asserts to make sure the current NodeManager is non-NULL
when it's needed. This can happen when public-facing functions
don't properly set the node manager, and it can look like a bug in
another part of the library. Also some code format cleanup.
* configure.ac, config/cvc4.m4: added --enable-static-binary (see
discussion on bug 32), fixed bad configure lines (bug 19), added
documentation for some things.
* config.h.in: removed; it's auto-generated.
Dejan Jovanović [Mon, 22 Feb 2010 16:57:11 +0000 (16:57 +0000)]
Small changes to the smt-engine, removed the assertions list.
Morgan Deters [Mon, 22 Feb 2010 07:40:23 +0000 (07:40 +0000)]
resolve bug 32; public-facing interface functions in expr package must set current NodeManager
Morgan Deters [Mon, 22 Feb 2010 06:54:19 +0000 (06:54 +0000)]
fix bug 33 (statically link the "cvc4" binary); also main driver cleanup
Morgan Deters [Mon, 22 Feb 2010 01:10:58 +0000 (01:10 +0000)]
fix bug 22 (remove tracing from non-trace builds; remove all output
from muzzled builds)
add public-facing CVC4::Configuration class that gives CVC4's (static)
configuration (whether debugging is enabled, assertions, version
information, etc...)
add some whitebox tests for assertions, output classes, and new
CVC4::Configuration class
main driver now gets about() information from CVC4::Configuration.
configure.ac now more flexible at specifying major/minor/release
versions of CVC4
add --show-config option that dumps CVC4's static configuration
commented option processing strings in src/main/getopt.cpp
fixed some compilation problems for muzzled builds.
fixed some test code for non-assertion builds (where no assertions are expected)
Morgan Deters [Fri, 19 Feb 2010 23:10:02 +0000 (23:10 +0000)]
specialized implementation for boolean node attributes ("flags"): they now share memory words properly; also, implementations of some output functionality
Morgan Deters [Fri, 19 Feb 2010 20:29:58 +0000 (20:29 +0000)]
* Attribute infrastructure -- static design. Documentation is coming.
See test/unit/expr/node_white.h for use examples, including how to
define new attribute kinds.
Also:
* fixes to test infrastructure
* minor changes to code formatting throughout
* attribute tests in test/unit/expr/node_white.h
* fixes to NodeManagerScope ordering
* use NodeValue::getKind() to properly deal with UNDEFINED_KIND
(removing compiler warning)
* ExprManager: add proper NodeManagerScope to public-facing member
functions
* store variable names and types in attributes
* SoftNode is a placeholder, not a real implementation
Christopher L. Conway [Fri, 19 Feb 2010 17:36:23 +0000 (17:36 +0000)]
Changing minArity of AND/OR to 1 in SMT parser
Christopher L. Conway [Thu, 18 Feb 2010 23:24:26 +0000 (23:24 +0000)]
Adding --no-checking option to disable semantic checks in parser
Christopher L. Conway [Thu, 18 Feb 2010 21:29:17 +0000 (21:29 +0000)]
Rm'ing doc from SUBDIRS
Christopher L. Conway [Thu, 18 Feb 2010 19:53:59 +0000 (19:53 +0000)]
Adding doxygen configuration parameters and doxygen-doc Makefile target
Tim King [Wed, 17 Feb 2010 21:29:57 +0000 (21:29 +0000)]
Initial draft of TheoryUF. Should compile without problems. A decent amount of functionality is stubbed out. Still needs a bit of cleanup.
Morgan Deters [Wed, 17 Feb 2010 19:07:49 +0000 (19:07 +0000)]
fix bug 27: --with-cxxtest-dir=(relative-path) now works
Christopher L. Conway [Tue, 16 Feb 2010 19:35:34 +0000 (19:35 +0000)]
Moving parser error checking into AntlrParser
Christopher L. Conway [Tue, 16 Feb 2010 19:13:35 +0000 (19:13 +0000)]
Adding --parse-only option
Dejan Jovanović [Tue, 16 Feb 2010 18:24:00 +0000 (18:24 +0000)]
removing assertion and warning that shouldn't be there. adding initialization of kind to undefined to a default constructor.
Christopher L. Conway [Tue, 16 Feb 2010 18:08:02 +0000 (18:08 +0000)]
Removing spurious commit of configure
Christopher L. Conway [Tue, 16 Feb 2010 18:07:41 +0000 (18:07 +0000)]
Converting semantic predicates in parser to AlwaysAssertions
Dejan Jovanović [Sat, 13 Feb 2010 21:30:18 +0000 (21:30 +0000)]
simplification minisat
Dejan Jovanović [Sat, 13 Feb 2010 00:55:40 +0000 (00:55 +0000)]
Improvements to CNF conversion when already in CNF
Dejan Jovanović [Fri, 12 Feb 2010 20:30:24 +0000 (20:30 +0000)]
build fix
Dejan Jovanović [Fri, 12 Feb 2010 20:26:56 +0000 (20:26 +0000)]
Fix to compile out Debug(...) << ... statements in optimized mode. Someone please look to see if it makes sense.
Dejan Jovanović [Fri, 12 Feb 2010 01:07:22 +0000 (01:07 +0000)]
Changes to hashing that solve the xinetd boolean benchmark in 14s (from ~25min). Switched to standard hash_set, hash_map, new hash for the vector of node values (from boost), changed the hash for nodes to be over id's, all the hash values are now size_t. The parser is down from 11s to 10s on the benchmark, so most of the solve time is parsing and we need to figure this out.
Dejan Jovanović [Thu, 11 Feb 2010 21:19:48 +0000 (21:19 +0000)]
svn ignore
Christopher L. Conway [Thu, 11 Feb 2010 17:10:36 +0000 (17:10 +0000)]
Adding precedence regressions
Morgan Deters [Wed, 10 Feb 2010 22:22:14 +0000 (22:22 +0000)]
note on setup(); for discussion at 2010.02.11 meeting
Morgan Deters [Wed, 10 Feb 2010 22:21:41 +0000 (22:21 +0000)]
svn:ignore for build stuff; add Liana to AUTHORS
Dejan Jovanović [Wed, 10 Feb 2010 03:52:27 +0000 (03:52 +0000)]
fixing annoying eclipse build settings, no more broken pipe errors with these settings
Clark Barrett [Wed, 10 Feb 2010 00:33:01 +0000 (00:33 +0000)]
Added calls to destructor in CDList plus optional flag to disable.
Dejan Jovanović [Tue, 9 Feb 2010 23:07:33 +0000 (23:07 +0000)]
Changes to the CNF conversion and the SAT solver. All regression pass now, and we're ready for nightly testing. We should not add regression tests that test future behaviour, as the builds will nag for all failing regressions. Thus, I've separated the multi-query regressions into multiple regressions until the cnf/context/sat is able to handle it. Also, fixed a typo in the CVC parser.
Morgan Deters [Tue, 9 Feb 2010 22:02:34 +0000 (22:02 +0000)]
removing other pieces of autotools stuff to fix bug #24
Morgan Deters [Tue, 9 Feb 2010 19:20:32 +0000 (19:20 +0000)]
moving built-in kinds out of the kind.h prologue/middle for uniformity; added TUPLE built-in
Dejan Jovanović [Tue, 9 Feb 2010 03:27:16 +0000 (03:27 +0000)]
empty stubs for push and pop to fix the build fail
Dejan Jovanović [Mon, 8 Feb 2010 18:47:48 +0000 (18:47 +0000)]
Disabling the failing test case for the context.
Dejan Jovanović [Mon, 8 Feb 2010 18:47:21 +0000 (18:47 +0000)]
Fixing the test case, it had a unary or. The cnf converter should be adapted to handle cases like this.
Dejan Jovanović [Mon, 8 Feb 2010 18:46:32 +0000 (18:46 +0000)]
Push/Pop parsing and commands
Dejan Jovanović [Mon, 8 Feb 2010 18:45:02 +0000 (18:45 +0000)]
Moving the template stuff back into the header in order to use CDList.
Christopher L. Conway [Sun, 7 Feb 2010 17:19:46 +0000 (17:19 +0000)]
Documenting type.h/cpp
Making Boolean and Kind types singletons
Morgan Deters [Sat, 6 Feb 2010 17:31:15 +0000 (17:31 +0000)]
force sorting of AC_CONFIG_FILES, otherwise different computers generate the configure script differently and we get useless commits of it; fix NodeBuilder memory leak in response to Kaustubh's expr code review (bug#15)
Christopher L. Conway [Sat, 6 Feb 2010 03:06:07 +0000 (03:06 +0000)]
Preliminary support for types in parser
Morgan Deters [Fri, 5 Feb 2010 23:21:55 +0000 (23:21 +0000)]
final fixes to addsourcedir source-directory-Makefile-generation script
Morgan Deters [Fri, 5 Feb 2010 22:31:33 +0000 (22:31 +0000)]
auto-generated list of AC_CONFIG_FILES so that you needn't add each recursive Makefile to configure.ac
Morgan Deters [Fri, 5 Feb 2010 22:30:22 +0000 (22:30 +0000)]
automatic generator script for sourcedir Makefiles and Makefile.ams
Morgan Deters [Fri, 5 Feb 2010 21:16:56 +0000 (21:16 +0000)]
remove the last vestiges of support for "make build-profile" without first configuring the build-profile, simplifying the build process and closing bug 21
Morgan Deters [Thu, 4 Feb 2010 23:59:41 +0000 (23:59 +0000)]
minor interface changes to TheoryEngine/Theory after meeting and conversation with Tim
Morgan Deters [Thu, 4 Feb 2010 23:50:25 +0000 (23:50 +0000)]
fix run_regression script
Dejan Jovanović [Thu, 4 Feb 2010 23:50:23 +0000 (23:50 +0000)]
beautification of the prop engine
Morgan Deters [Thu, 4 Feb 2010 23:31:00 +0000 (23:31 +0000)]
assign expected-status to regressions
Morgan Deters [Thu, 4 Feb 2010 23:29:47 +0000 (23:29 +0000)]
build system for multi-level regressions
Morgan Deters [Thu, 4 Feb 2010 22:14:28 +0000 (22:14 +0000)]
remove warnings from use of __gnu_cxx::hash_map<>; also spacing fixes in symbol table
Morgan Deters [Thu, 4 Feb 2010 22:10:47 +0000 (22:10 +0000)]
remove -*- c++ -*- emacs tag from source files (it overrides cvc4-c++-editing-mode from contrib/editing-with-emacs
Tim King [Thu, 4 Feb 2010 21:03:07 +0000 (21:03 +0000)]
Changed mapping from atoms to literals in the prop engine to be atoms to vars.
Tim King [Thu, 4 Feb 2010 21:01:04 +0000 (21:01 +0000)]
Moved regressions into various levels based on running time.
Morgan Deters [Thu, 4 Feb 2010 19:01:55 +0000 (19:01 +0000)]
test infrastructure updated for multiple-level regressions
Morgan Deters [Thu, 4 Feb 2010 03:47:41 +0000 (03:47 +0000)]
minor cleanup; give the main driver a different exit code for SAT-INVALID/UNSAT-VALID
Morgan Deters [Thu, 4 Feb 2010 03:31:38 +0000 (03:31 +0000)]
src/expr/kind.h is now automatically generated.
Build src/expr before src/util.
Moved CVC4::Command to the expr package.
Re-quieted the "result is sat/invalid" etc. from PropEngine (this is
now done at the main driver level).
Added file-level documentation to Antlr sources
When built for debug, spin on SEGV instead of aborting. Really useful
for debugging problems that crop up only on long runs. Added
'--segv-nospin' to override this spinning so that "make check,"
nightly regressions, etc. don't hang when built with debug.
Updated src/main/about.h for 2010.
Morgan Deters [Thu, 4 Feb 2010 02:58:12 +0000 (02:58 +0000)]
minor fix for update-copyright.pl; ran update-copyright.pl on all sources; regenerated configure script
Morgan Deters [Thu, 4 Feb 2010 02:47:30 +0000 (02:47 +0000)]
added bool and arith theory makefiles to AC_CONFIG_FILES in configure.ac
Morgan Deters [Thu, 4 Feb 2010 02:46:17 +0000 (02:46 +0000)]
Added theory output channel interfaces and "Interrupted" exception.
Updated contrib/update-copyright to handle Antlr (.g) parser/lexer inputs.
Updated copyright year.
Added a new "bool" theory (right now just to hold a kind.h contribution).
Added "kinds" files to UF and the new "bool" theory.
Tim King [Thu, 4 Feb 2010 00:47:45 +0000 (00:47 +0000)]
Fixes to the cnf converter. Also a barebones utility for printing out a satisifying model.
Christopher L. Conway [Wed, 3 Feb 2010 23:52:16 +0000 (23:52 +0000)]
Adding extra test to parser
Dejan Jovanović [Wed, 3 Feb 2010 23:45:53 +0000 (23:45 +0000)]
adding an option to minisat to not do any debug checks/output
Christopher L. Conway [Wed, 3 Feb 2010 23:43:43 +0000 (23:43 +0000)]
Fixing bad commit
Christopher L. Conway [Wed, 3 Feb 2010 22:46:36 +0000 (22:46 +0000)]
Adding functions/predicates to SMT grammar
Morgan Deters [Wed, 3 Feb 2010 22:20:25 +0000 (22:20 +0000)]
Addressed many of the concerns of bug 10 (build system code review).
Some parts split into other bugs: 19, 20, 21.
Addressed concerns of bug 11 (util package code review).
Slight parser source file modifications: file comments, #included
headers in generated parsers/lexers
Added CVC4::Result propagation back through
MiniSat->PropEngine->SmtEngine->main(). Silenced MiniSat when
verbosity is not requested.
Dejan Jovanović [Wed, 3 Feb 2010 22:10:21 +0000 (22:10 +0000)]
ELSEIF support and parser debugging with '-d parser'
Dejan Jovanović [Wed, 3 Feb 2010 19:50:44 +0000 (19:50 +0000)]
simple ITE parsing
Tim King [Wed, 3 Feb 2010 19:41:14 +0000 (19:41 +0000)]
By popular demand, I also added a printAst to Expr.
Tim King [Wed, 3 Feb 2010 19:25:50 +0000 (19:25 +0000)]
I hacked in a temporary way to restart minisat for multiple queries.
Tim King [Wed, 3 Feb 2010 19:23:45 +0000 (19:23 +0000)]
Within node I added printAst(..) for general purpose debugging use throughout the code. I also added debugPrint() to Node for use within gdb.
Tim King [Wed, 3 Feb 2010 19:19:36 +0000 (19:19 +0000)]
Enabled more regress tests. Takes 26s on my machine to run a make -k check in debug mode. All regress tests currently pass.
Dejan Jovanović [Wed, 3 Feb 2010 00:49:38 +0000 (00:49 +0000)]
context_mm testing
Dejan Jovanović [Wed, 3 Feb 2010 00:15:15 +0000 (00:15 +0000)]
some more tests for the context.
Dejan Jovanović [Tue, 2 Feb 2010 22:50:35 +0000 (22:50 +0000)]
Clark Barrett [Tue, 2 Feb 2010 22:40:55 +0000 (22:40 +0000)]
Fixed bug in context code
Dejan Jovanović [Tue, 2 Feb 2010 22:36:57 +0000 (22:36 +0000)]
for tim
Dejan Jovanović [Tue, 2 Feb 2010 22:01:59 +0000 (22:01 +0000)]
beginings of test for CDO. one fail
Dejan Jovanović [Tue, 2 Feb 2010 21:00:02 +0000 (21:00 +0000)]
Rethrow rewrite in antlr_parser. Taking LT(0) to locate the error causes the build to break on 64-bit machines. Changed to LT(1), it works now, but i'll ask around how this actually works.
Tim King [Tue, 2 Feb 2010 20:56:47 +0000 (20:56 +0000)]
Switched cnf conversion to go through CnfStream.
Christopher L. Conway [Tue, 2 Feb 2010 20:04:18 +0000 (20:04 +0000)]
Minor changes to parser
Dejan Jovanović [Tue, 2 Feb 2010 19:12:09 +0000 (19:12 +0000)]
Adding support for escapes in string literals (strings like "\n\t\"")
Clark Barrett [Tue, 2 Feb 2010 02:10:28 +0000 (02:10 +0000)]
Fixed compile errors
Clark Barrett [Tue, 2 Feb 2010 02:04:39 +0000 (02:04 +0000)]
Updates to context:
Use vector instead of linked list for Scopes
Added CDO and CDList templates
Dejan Jovanović [Mon, 1 Feb 2010 21:58:47 +0000 (21:58 +0000)]
Fixing the CVC grammar for parsing Boolean expressions. All the associativity stufff is now in the grammar. All the parser tests pass now.
Morgan Deters [Mon, 1 Feb 2010 17:28:15 +0000 (17:28 +0000)]
fix node manager code (bugzilla #15, comment #2) in case where there's a hash collision for distinct objects
Tim King [Mon, 1 Feb 2010 17:20:14 +0000 (17:20 +0000)]
Added this test back to avoid make check problems.
Morgan Deters [Sat, 30 Jan 2010 02:22:25 +0000 (02:22 +0000)]
cnf conversion (variable-introducing), cleanups, fixes to minisat calling for multiple-query cases
Tim King [Sat, 30 Jan 2010 00:05:31 +0000 (00:05 +0000)]
Checking in small test fixes for node_black
Dejan Jovanović [Fri, 29 Jan 2010 22:25:22 +0000 (22:25 +0000)]
fixing the last context build problem, it compiles now
Clark Barrett [Fri, 29 Jan 2010 22:04:43 +0000 (22:04 +0000)]
one more bug
Clark Barrett [Fri, 29 Jan 2010 21:02:15 +0000 (21:02 +0000)]
Fixed compile errors
Christopher L. Conway [Fri, 29 Jan 2010 20:16:10 +0000 (20:16 +0000)]
Adding Makefile.in to svn:ignore
Christopher L. Conway [Fri, 29 Jan 2010 20:14:37 +0000 (20:14 +0000)]
Adding Makefile.in to svn:ignore
Christopher L. Conway [Fri, 29 Jan 2010 20:05:46 +0000 (20:05 +0000)]
Fixing boolean operator precedences