cvc5.git
14 years agoAdded theory output channel interfaces and "Interrupted" exception.
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.

14 years agoFixes to the cnf converter. Also a barebones utility for printing out a satisifying...
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.

14 years agoAdding extra test to parser
Christopher L. Conway [Wed, 3 Feb 2010 23:52:16 +0000 (23:52 +0000)]
Adding extra test to parser

14 years agoadding an option to minisat to not do any debug checks/output
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

14 years agoFixing bad commit
Christopher L. Conway [Wed, 3 Feb 2010 23:43:43 +0000 (23:43 +0000)]
Fixing bad commit

14 years agoAdding functions/predicates to SMT grammar
Christopher L. Conway [Wed, 3 Feb 2010 22:46:36 +0000 (22:46 +0000)]
Adding functions/predicates to SMT grammar

14 years agoAddressed many of the concerns of bug 10 (build system code review).
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.

14 years agoELSEIF support and parser debugging with '-d parser'
Dejan Jovanović [Wed, 3 Feb 2010 22:10:21 +0000 (22:10 +0000)]
ELSEIF support and parser debugging with '-d parser'

14 years agosimple ITE parsing
Dejan Jovanović [Wed, 3 Feb 2010 19:50:44 +0000 (19:50 +0000)]
simple ITE parsing

14 years agoBy popular demand, I also added a printAst to Expr.
Tim King [Wed, 3 Feb 2010 19:41:14 +0000 (19:41 +0000)]
By popular demand, I also added a printAst to Expr.

14 years agoI hacked in a temporary way to restart minisat for multiple queries.
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.

14 years agoWithin node I added printAst(..) for general purpose debugging use throughout the...
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.

14 years agoEnabled more regress tests. Takes 26s on my machine to run a make -k check in debug...
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.

14 years agocontext_mm testing
Dejan Jovanović [Wed, 3 Feb 2010 00:49:38 +0000 (00:49 +0000)]
context_mm testing

14 years agosome more tests for the context.
Dejan Jovanović [Wed, 3 Feb 2010 00:15:15 +0000 (00:15 +0000)]
some more tests for the context.

14 years ago(no commit message)
Dejan Jovanović [Tue, 2 Feb 2010 22:50:35 +0000 (22:50 +0000)]

14 years agoFixed bug in context code
Clark Barrett [Tue, 2 Feb 2010 22:40:55 +0000 (22:40 +0000)]
Fixed bug in context code

14 years agofor tim
Dejan Jovanović [Tue, 2 Feb 2010 22:36:57 +0000 (22:36 +0000)]
for tim

14 years agobeginings of test for CDO. one fail
Dejan Jovanović [Tue, 2 Feb 2010 22:01:59 +0000 (22:01 +0000)]
beginings of test for CDO. one fail

14 years agoRethrow rewrite in antlr_parser. Taking LT(0) to locate the error causes the build...
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.

14 years agoSwitched cnf conversion to go through CnfStream.
Tim King [Tue, 2 Feb 2010 20:56:47 +0000 (20:56 +0000)]
Switched cnf conversion to go through CnfStream.

14 years agoMinor changes to parser
Christopher L. Conway [Tue, 2 Feb 2010 20:04:18 +0000 (20:04 +0000)]
Minor changes to parser

14 years agoAdding support for escapes in string literals (strings like "\n\t\"")
Dejan Jovanović [Tue, 2 Feb 2010 19:12:09 +0000 (19:12 +0000)]
Adding support for escapes in string literals (strings like "\n\t\"")

14 years agoFixed compile errors
Clark Barrett [Tue, 2 Feb 2010 02:10:28 +0000 (02:10 +0000)]
Fixed compile errors

14 years agoUpdates to context:
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

14 years agoFixing the CVC grammar for parsing Boolean expressions. All the associativity stufff...
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.

14 years agofix node manager code (bugzilla #15, comment #2) in case where there's a hash collisi...
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

14 years agoAdded this test back to avoid make check problems.
Tim King [Mon, 1 Feb 2010 17:20:14 +0000 (17:20 +0000)]
Added this test back to avoid make check problems.

14 years agocnf conversion (variable-introducing), cleanups, fixes to minisat calling for multipl...
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

14 years agoChecking in small test fixes for node_black
Tim King [Sat, 30 Jan 2010 00:05:31 +0000 (00:05 +0000)]
Checking in small test fixes for node_black

14 years agofixing the last context build problem, it compiles now
Dejan Jovanović [Fri, 29 Jan 2010 22:25:22 +0000 (22:25 +0000)]
fixing the last context build problem, it compiles now

14 years agoone more bug
Clark Barrett [Fri, 29 Jan 2010 22:04:43 +0000 (22:04 +0000)]
one more bug

14 years agoFixed compile errors
Clark Barrett [Fri, 29 Jan 2010 21:02:15 +0000 (21:02 +0000)]
Fixed compile errors

14 years agoAdding Makefile.in to svn:ignore
Christopher L. Conway [Fri, 29 Jan 2010 20:16:10 +0000 (20:16 +0000)]
Adding Makefile.in to svn:ignore

14 years agoAdding 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

14 years agoFixing boolean operator precedences
Christopher L. Conway [Fri, 29 Jan 2010 20:05:46 +0000 (20:05 +0000)]
Fixing boolean operator precedences

14 years agoUpdate of context module
Clark Barrett [Fri, 29 Jan 2010 19:46:26 +0000 (19:46 +0000)]
Update of context module

14 years agofixed CNF conversion, and more modular; CNF conversion command line option; various...
Morgan Deters [Fri, 29 Jan 2010 00:05:16 +0000 (00:05 +0000)]
fixed CNF conversion, and more modular; CNF conversion command line option; various cleanups; renamed numChildren() to getNumChildren() and added it to NodeBuilder interface; fancier, non-exponential CNF conversion with variable introduction is still buggy (?)

14 years agoRemoving Makefile.in's
Christopher L. Conway [Thu, 28 Jan 2010 18:31:46 +0000 (18:31 +0000)]
Removing Makefile.in's

14 years agoReplacing hand-coded autogen.sh with buildconf version
Christopher L. Conway [Thu, 28 Jan 2010 17:38:25 +0000 (17:38 +0000)]
Replacing hand-coded autogen.sh with buildconf version

14 years agosupport "make check" in src/ subdirs for unit-testing of just that module; also suppo...
Morgan Deters [Wed, 27 Jan 2010 22:48:03 +0000 (22:48 +0000)]
support "make check" in src/ subdirs for unit-testing of just that module; also support synonyms for "make check" globally

14 years agotest framework fixes; bug 13 closed
Morgan Deters [Wed, 27 Jan 2010 22:12:33 +0000 (22:12 +0000)]
test framework fixes; bug 13 closed

14 years agoAdded additional tests to node_black.h. CVC4 currently passes all but 1 test.
Tim King [Wed, 27 Jan 2010 20:53:28 +0000 (20:53 +0000)]
Added additional tests to node_black.h. CVC4 currently passes all but 1 test.

14 years agoUndoing stupid commit mistake. Rolling back to -r 102 for test/unit/expr/node_black.h
Tim King [Tue, 26 Jan 2010 18:03:11 +0000 (18:03 +0000)]
Undoing stupid commit mistake.  Rolling back to -r 102 for test/unit/expr/node_black.h

14 years agoAdded test/regress/boolean.cvc
Tim King [Tue, 26 Jan 2010 17:55:28 +0000 (17:55 +0000)]
Added test/regress/boolean.cvc

14 years agocnf conversion
Morgan Deters [Tue, 26 Jan 2010 15:06:24 +0000 (15:06 +0000)]
cnf conversion

14 years agofixes to build structure, util classes, lots of fixes to Node and NodeBuilder. outst...
Morgan Deters [Tue, 26 Jan 2010 07:29:41 +0000 (07:29 +0000)]
fixes to build structure, util classes, lots of fixes to Node and NodeBuilder.  outstanding SEGVs fixed

14 years agominor fixes to scoped-context node manager
Morgan Deters [Mon, 25 Jan 2010 21:15:29 +0000 (21:15 +0000)]
minor fixes to scoped-context node manager

14 years agoscoped node managers
Morgan Deters [Mon, 25 Jan 2010 21:10:01 +0000 (21:10 +0000)]
scoped node managers

14 years agoAdded pure PL regression tests. Mostly CNF
Tim King [Sat, 23 Jan 2010 02:20:57 +0000 (02:20 +0000)]
Added pure PL regression tests. Mostly CNF

14 years agoAdded regression test
Tim King [Fri, 22 Jan 2010 22:43:37 +0000 (22:43 +0000)]
Added regression test

14 years agominor changes to Theory
Morgan Deters [Tue, 19 Jan 2010 15:10:49 +0000 (15:10 +0000)]
minor changes to Theory

14 years agoChanges to configure.ac from code review
Christopher L. Conway [Tue, 5 Jan 2010 02:37:35 +0000 (02:37 +0000)]
Changes to configure.ac from code review

14 years agoMore fixes fot the parser tests.
Dejan Jovanović [Fri, 18 Dec 2009 23:34:05 +0000 (23:34 +0000)]
More fixes fot the parser tests.

14 years agoChanging some deatils on the parser. Now we know we are done if command is null,...
Dejan Jovanović [Fri, 18 Dec 2009 20:40:02 +0000 (20:40 +0000)]
Changing some deatils on the parser. Now we know we are done if command is null, or expression is null.

14 years agoMore fixes
Dejan Jovanović [Fri, 18 Dec 2009 19:57:34 +0000 (19:57 +0000)]
More fixes

14 years agonumerous fixes to nodes; more coming
Morgan Deters [Fri, 18 Dec 2009 19:47:42 +0000 (19:47 +0000)]
numerous fixes to nodes; more coming

14 years agoUpdated parser tests, which are all kinds of FAIL
Christopher L. Conway [Fri, 18 Dec 2009 18:23:18 +0000 (18:23 +0000)]
Updated parser tests, which are all kinds of FAIL

14 years agoChanges to the parser tests to make them compile.
Dejan Jovanović [Fri, 18 Dec 2009 17:25:25 +0000 (17:25 +0000)]
Changes to the parser tests to make them compile.

14 years agomore build system fix-ups
Morgan Deters [Fri, 18 Dec 2009 14:10:10 +0000 (14:10 +0000)]
more build system fix-ups

14 years agoLots of parser changes to make Chris happy. Yet more to come later.
Dejan Jovanović [Fri, 18 Dec 2009 05:07:19 +0000 (05:07 +0000)]
Lots of parser changes to make Chris happy. Yet more to come later.

14 years agomore build system fix-ups
Morgan Deters [Thu, 17 Dec 2009 22:11:37 +0000 (22:11 +0000)]
more build system fix-ups

14 years agoupdate-copyright.pl now retrieves and incorporates author information from repository...
Morgan Deters [Thu, 17 Dec 2009 21:05:15 +0000 (21:05 +0000)]
update-copyright.pl now retrieves and incorporates author information from repository history; re-ran update-copyright.pl; cleaned up some things with make

14 years agoAdding more parser tests
Christopher L. Conway [Thu, 17 Dec 2009 20:41:24 +0000 (20:41 +0000)]
Adding more parser tests

14 years agoAdding more parser tests
Christopher L. Conway [Thu, 17 Dec 2009 20:30:43 +0000 (20:30 +0000)]
Adding more parser tests

14 years agocoding standard fix on SmtEngine; fix recursive make
Morgan Deters [Thu, 17 Dec 2009 19:12:43 +0000 (19:12 +0000)]
coding standard fix on SmtEngine; fix recursive make

14 years agoCvcParserBlack and supporting Makefile changes
Christopher L. Conway [Thu, 17 Dec 2009 19:04:45 +0000 (19:04 +0000)]
CvcParserBlack and supporting Makefile changes

14 years ago+ test infrastructure fixes
Morgan Deters [Thu, 17 Dec 2009 18:48:39 +0000 (18:48 +0000)]
+ test infrastructure fixes
+ regenerate configure script
+ add CVC4::Message output class
+ add some IllegalArgument() assertion things
+ rename NodeManager::mkExpr() to mkNode()

14 years agoadd system regression testing infrastructure
Morgan Deters [Thu, 17 Dec 2009 17:07:57 +0000 (17:07 +0000)]
add system regression testing infrastructure

14 years agofix typos in Makefile.am for unit testing
Morgan Deters [Thu, 17 Dec 2009 17:03:43 +0000 (17:03 +0000)]
fix typos in Makefile.am for unit testing

14 years agoaddressed some concerns raised by Clark in bug #6 (code review of driver code)
Morgan Deters [Thu, 17 Dec 2009 05:34:36 +0000 (05:34 +0000)]
addressed some concerns raised by Clark in bug #6 (code review of driver code)

14 years agomaking config/mkbuilddir executable
Morgan Deters [Thu, 17 Dec 2009 03:29:53 +0000 (03:29 +0000)]
making config/mkbuilddir executable

14 years agoMinor changes from code review
Clark Barrett [Thu, 17 Dec 2009 02:32:49 +0000 (02:32 +0000)]
Minor changes from code review

14 years agobuild system cleanup; test system separation into white-box, black-box, and public...
Morgan Deters [Thu, 17 Dec 2009 01:43:31 +0000 (01:43 +0000)]
build system cleanup; test system separation into white-box, black-box, and public tests

14 years agotesting infrastructure fixes
Morgan Deters [Thu, 17 Dec 2009 00:29:10 +0000 (00:29 +0000)]
testing infrastructure fixes

14 years agosupport nonstandard, unconfigured builds (e.g., "./configure debug" followed by ...
Morgan Deters [Thu, 17 Dec 2009 00:02:12 +0000 (00:02 +0000)]
support nonstandard, unconfigured builds (e.g., "./configure debug" followed by "make production ASSERTIONS=1")

14 years ago+ refactoring fixes for expr package based on code review (see bug #4)
Morgan Deters [Wed, 16 Dec 2009 23:30:21 +0000 (23:30 +0000)]
+ refactoring fixes for expr package based on code review (see bug #4)
+ minor autogen/configure fixes for old versions of autotools

14 years agoSmall refactoring changes for the expr package.
Tim King [Wed, 16 Dec 2009 19:51:02 +0000 (19:51 +0000)]
Small refactoring changes for the expr package.

14 years agoSpelling correction in comments
Christopher L. Conway [Wed, 16 Dec 2009 18:33:31 +0000 (18:33 +0000)]
Spelling correction in comments

14 years agoStandardizing configure arguments for ANTLR/CxxTest
Christopher L. Conway [Wed, 16 Dec 2009 17:52:49 +0000 (17:52 +0000)]
Standardizing configure arguments for ANTLR/CxxTest

14 years agoFixes to the build system:
Morgan Deters [Wed, 16 Dec 2009 04:25:45 +0000 (04:25 +0000)]
Fixes to the build system:

Makefile.am files - remove obsolete INCLUDES, incorporate into AM_CPPFLAGS
Makefile files in src/ - support "make" under src/ (current build profile)
configure.ac - updates to fix warnings
config/antlr.m4 - updates to fix warnings
autogen.sh - updates to generate warnings from autotools; also support Macs
src/include/cvc4_config.h - guard with #ifdef
total reimplementation of NodeBuilder
ExprValue => NodeValue
context_mm.{h,cpp} - fixed numerous compile errors

14 years agoMinor changes to parser files from code review.
Christopher L. Conway [Tue, 15 Dec 2009 23:05:02 +0000 (23:05 +0000)]
Minor changes to parser files from code review.

14 years agoAdded context_mm (haven't tested compilation yet...)
Clark Barrett [Tue, 15 Dec 2009 18:20:31 +0000 (18:20 +0000)]
Added context_mm (haven't tested compilation yet...)

14 years agominor: fixing typos
Morgan Deters [Tue, 15 Dec 2009 17:26:09 +0000 (17:26 +0000)]
minor: fixing typos

14 years agoExtracted the public Expr and ExprManager interface to encapsulate the optimized...
Dejan Jovanović [Fri, 11 Dec 2009 04:00:14 +0000 (04:00 +0000)]
Extracted the public Expr and ExprManager interface to encapsulate the optimized expressions and the internal expression manager.

14 years agobuild fixes, configuration simplifications
Morgan Deters [Fri, 11 Dec 2009 00:15:37 +0000 (00:15 +0000)]
build fixes, configuration simplifications

14 years agokilling expr into node...
Dejan Jovanović [Thu, 10 Dec 2009 18:44:51 +0000 (18:44 +0000)]
killing expr into node...

14 years agocleanups, assert work, add a stubbed uf theory, fix driver
Morgan Deters [Thu, 10 Dec 2009 17:45:43 +0000 (17:45 +0000)]
cleanups, assert work, add a stubbed uf theory, fix driver

14 years agosome fixes and organizational adjustments to assert code, parsers/lexers, and build...
Morgan Deters [Wed, 9 Dec 2009 23:14:40 +0000 (23:14 +0000)]
some fixes and organizational adjustments to assert code, parsers/lexers, and build process

14 years agoA mess of changes in the expression manager, simple example still failing due to...
Dejan Jovanović [Wed, 9 Dec 2009 03:36:52 +0000 (03:36 +0000)]
A mess of changes in the expression manager, simple example still failing due to some problems in the prop_engine
* default null expr and expr value and reorganisation/rewrite of some methods
* fixed some bugs
* expressions should always be passed as const Expr& to methods, otherwise copy constructors are called

Problematic code:
* Expr class has a bunch of methods that return Exprs, such as a.andExpr(b). None of these know what is their expression manager. We should
 (a) Not allow this, all expression construction should go through the ExprBuilder or directly thorugh the expression manager
 (b) Allow this, as it is now, but the have the default expression manager be setup in every entry into the smt solver + these construction methods shouldn't be available to the user (oterwise a mess ensues)
* We have to decide how to construct ExprBuilders:
 (a) constructing ExprBuilders with em = ExprBuilder(e).andExpr(b) is problematic as at construction we can't know the expression manager, and the kind of em will be UNDEFINED, so when adding b we can't assume its not UNDEFINED
 (b) constructing it with ExprBuilder(em) << AND << a << b or ExprBuilder(em, AND) << a << b seems like a nicer approach

 I am still confused about these expression builders so we should talk about this.

14 years agofinal (?) fixes to parser/generated build directory modifications
Morgan Deters [Tue, 8 Dec 2009 23:18:52 +0000 (23:18 +0000)]
final (?) fixes to parser/generated build directory modifications

14 years agoparser build fixes
Morgan Deters [Tue, 8 Dec 2009 22:53:58 +0000 (22:53 +0000)]
parser build fixes

14 years agocheck in automake/libtool/autoconf-generated files; add better file not found handling
Morgan Deters [Tue, 8 Dec 2009 20:39:12 +0000 (20:39 +0000)]
check in automake/libtool/autoconf-generated files; add better file not found handling

14 years agobroken formula
Morgan Deters [Tue, 8 Dec 2009 19:00:53 +0000 (19:00 +0000)]
broken formula

14 years agowork on propositional layer, expression builder support for large expressions, output...
Morgan Deters [Tue, 8 Dec 2009 10:10:20 +0000 (10:10 +0000)]
work on propositional layer, expression builder support for large expressions, output classes, and minisat

14 years agofixing a few broken build-related items, adding test cases
Morgan Deters [Mon, 7 Dec 2009 23:23:33 +0000 (23:23 +0000)]
fixing a few broken build-related items, adding test cases

14 years agobig check-in of various fixes and adjustments
Morgan Deters [Mon, 7 Dec 2009 23:14:15 +0000 (23:14 +0000)]
big check-in of various fixes and adjustments

14 years agoantlr parser for the cvc4 language (boolean only)
Dejan Jovanović [Mon, 7 Dec 2009 05:51:09 +0000 (05:51 +0000)]
antlr parser for the cvc4 language (boolean only)
yet to be finalized, it should work as expected

14 years agoBig chunk of changes:
Dejan Jovanović [Sun, 6 Dec 2009 02:21:46 +0000 (02:21 +0000)]
Big chunk of changes:

* Fixed bugs in option parsing
* Simplified the main.cpp significantly (more c++ like)
* Added the null kind, expr value, and expression, with the default constructor public
* Simplified commands, we need to discuss this in the meeting (what to do with command results?)
* Removed all the lex/yacc files
* Symbol table is now a templated class, as we will have tables for variables, predicates and functions
* The ANTLR parsing infrastructure/makefiles is all in. SMT lib Boolean benchmarks should parse + giving nice error such as
      Parse Error: /home/dejan/eclipse-cxx/smtlib-parser/test/test4.smt:3:16: Undeclared variable p
      Parse Error: /home/dejan/eclipse-cxx/smtlib-parser/test/test2.smt:2:11: unexpected token: sa

Didn't add any unit tests as the unit testing doesn't work with the updated build system -- it doesn't know how to create directories in the corresponding build directory.

TODO:
 * add the PL grammar and unit test when the testing becomes available
 * with this build setup my eclipse debugger doesn't work.  Might have something to do with the visibility of symbols?
 * i'm getting g++ depracated warnings regarding the hash_map from the symbol table, need to figure out how to use it in a standard manner. the new <unordered_map> header is for C++0x, and the <ext/hash_map> is getting deprecation warningns... weird.

14 years agomore build system work
Morgan Deters [Sat, 5 Dec 2009 00:40:57 +0000 (00:40 +0000)]
more build system work