Merge from "cc" branch:
authorMorgan Deters <mdeters@gmail.com>
Tue, 17 Aug 2010 22:24:26 +0000 (22:24 +0000)
committerMorgan Deters <mdeters@gmail.com>
Tue, 17 Aug 2010 22:24:26 +0000 (22:24 +0000)
commit08a57829cdd0ef4c02fee349b4b721d3e4a3f6d1
tree9ea214ffb5a5a03e3c71c09814f17787be6d022b
parentdaf715e2ccb53bd88c6f374840b5d41e72c61c90
Merge from "cc" branch:

CongruenceClosure implementation; CongruenceClosure white-box test.

New UF theory implementation based on new CC module.  This one
supports predicates.  The two UF implementations exist in parallel
(they can be selected at runtime via the new command line option
"--uf").

Added type infrastructure for TUPLE.

Fixes to unit tests that failed in 16-August-2010 regressions.
Needed to instantiate TheoryEngine with an Options structure, and
explicitly call ->shutdown() on it before destruction (like the
SMTEngine does).

Fixed test makefiles to (1) perform all tests even in the presence of
failures, (2) give proper summaries of subdirectory tests
(e.g. regress0/uf and regress0/precedence)

Other minor changes.
48 files changed:
configure.ac
contrib/addsourcedir
src/context/cdmap.h
src/expr/expr_manager_template.cpp
src/expr/expr_manager_template.h
src/expr/node_builder.h
src/expr/node_manager.cpp
src/expr/node_manager.h
src/expr/type.cpp
src/expr/type.h
src/expr/type_node.cpp
src/expr/type_node.h
src/main/getopt.cpp
src/main/usage.h
src/smt/smt_engine.cpp
src/theory/builtin/kinds
src/theory/builtin/theory_builtin_type_rules.h
src/theory/theory_engine.h
src/theory/uf/Makefile.am
src/theory/uf/ecdata.cpp [deleted file]
src/theory/uf/ecdata.h [deleted file]
src/theory/uf/morgan/Makefile.am [new file with mode: 0644]
src/theory/uf/morgan/theory_uf_morgan.cpp [new file with mode: 0644]
src/theory/uf/morgan/theory_uf_morgan.h [new file with mode: 0644]
src/theory/uf/theory_uf.cpp [deleted file]
src/theory/uf/theory_uf.h
src/theory/uf/tim/Makefile.am [new file with mode: 0644]
src/theory/uf/tim/ecdata.cpp [new file with mode: 0644]
src/theory/uf/tim/ecdata.h [new file with mode: 0644]
src/theory/uf/tim/theory_uf_tim.cpp [new file with mode: 0644]
src/theory/uf/tim/theory_uf_tim.h [new file with mode: 0644]
src/util/congruence_closure.cpp [new file with mode: 0644]
src/util/congruence_closure.h
src/util/options.h
test/Makefile.am
test/regress/Makefile.am
test/regress/regress0/Makefile.am
test/regress/regress0/uf/Makefile.am
test/regress/regress1/Makefile.am
test/regress/regress2/Makefile.am
test/regress/regress3/Makefile.am
test/unit/Makefile.am
test/unit/expr/attribute_white.h
test/unit/theory/shared_term_manager_black.h
test/unit/theory/theory_engine_white.h
test/unit/theory/theory_uf_tim_white.h [new file with mode: 0644]
test/unit/theory/theory_uf_white.h [deleted file]
test/unit/util/congruence_closure_white.h [new file with mode: 0644]