Merge from quantifiers2-trunkmerge branch.
authorMorgan Deters <mdeters@gmail.com>
Mon, 11 Jun 2012 16:28:23 +0000 (16:28 +0000)
committerMorgan Deters <mdeters@gmail.com>
Mon, 11 Jun 2012 16:28:23 +0000 (16:28 +0000)
commit3378e253fcdb34c753407bb16d08929da06b3aaa
treedb7c7118dd0d1594175b56866f845b42426ae0a7
parent42794501e81c44dce5c2f7687af288af030ef63e
Merge from quantifiers2-trunkmerge branch.

Adds TheoryQuantifiers and TheoryRewriteRules, QuantifiersEngine, and other infrastructure.

Adds theory instantiators to many theories.

Adds the UF strong solver.
207 files changed:
.gitignore
src/bindings/compat/java/src/cvc3/Embedded.java
src/bindings/compat/java/src/cvc3/Expr_impl.cpp
src/context/cdhashmap.h
src/expr/kind_template.h
src/expr/mkexpr
src/expr/mkkind
src/expr/mkmetakind
src/expr/node.h
src/expr/node_manager.h
src/parser/cvc/Cvc.g
src/parser/smt/Smt.g
src/parser/smt/smt.cpp
src/parser/smt/smt.h
src/parser/smt2/Smt2.g
src/parser/smt2/smt2.cpp
src/parser/smt2/smt2.h
src/printer/cvc/cvc_printer.cpp
src/printer/smt2/smt2_printer.cpp
src/prop/minisat/core/Solver.cc
src/prop/minisat/core/Solver.h
src/prop/minisat/minisat.cpp
src/prop/minisat/minisat.h
src/prop/prop_engine.cpp
src/prop/prop_engine.h
src/prop/sat_solver.h
src/theory/Makefile.am
src/theory/arith/Makefile.am
src/theory/arith/congruence_manager.h
src/theory/arith/kinds
src/theory/arith/theory_arith.cpp
src/theory/arith/theory_arith.h
src/theory/arith/theory_arith_instantiator.cpp [new file with mode: 0644]
src/theory/arith/theory_arith_instantiator.h [new file with mode: 0644]
src/theory/arrays/Makefile.am
src/theory/arrays/kinds
src/theory/arrays/theory_arrays.cpp
src/theory/arrays/theory_arrays.h
src/theory/arrays/theory_arrays_instantiator.cpp [new file with mode: 0644]
src/theory/arrays/theory_arrays_instantiator.h [new file with mode: 0644]
src/theory/booleans/theory_bool.h
src/theory/builtin/theory_builtin.h
src/theory/bv/bv_subtheory_eq.h
src/theory/bv/theory_bv.cpp
src/theory/bv/theory_bv.h
src/theory/datatypes/Makefile.am
src/theory/datatypes/kinds
src/theory/datatypes/theory_datatypes.cpp
src/theory/datatypes/theory_datatypes.h
src/theory/datatypes/theory_datatypes_instantiator.cpp [new file with mode: 0644]
src/theory/datatypes/theory_datatypes_instantiator.h [new file with mode: 0644]
src/theory/example/theory_uf_tim.cpp
src/theory/example/theory_uf_tim.h
src/theory/inst_match.cpp [new file with mode: 0644]
src/theory/inst_match.h [new file with mode: 0644]
src/theory/inst_match_impl.h [new file with mode: 0644]
src/theory/instantiator_default.cpp [new file with mode: 0644]
src/theory/instantiator_default.h [new file with mode: 0644]
src/theory/instantiator_tables_template.cpp [new file with mode: 0644]
src/theory/mkinstantiator [new file with mode: 0755]
src/theory/mkrewriter
src/theory/mktheorytraits
src/theory/output_channel.h
src/theory/quantifiers/Makefile [new file with mode: 0644]
src/theory/quantifiers/Makefile.am [new file with mode: 0644]
src/theory/quantifiers/instantiation_engine.cpp [new file with mode: 0644]
src/theory/quantifiers/instantiation_engine.h [new file with mode: 0644]
src/theory/quantifiers/kinds [new file with mode: 0644]
src/theory/quantifiers/model_engine.cpp [new file with mode: 0644]
src/theory/quantifiers/model_engine.h [new file with mode: 0644]
src/theory/quantifiers/quantifiers_rewriter.cpp [new file with mode: 0644]
src/theory/quantifiers/quantifiers_rewriter.h [new file with mode: 0644]
src/theory/quantifiers/theory_quantifiers.cpp [new file with mode: 0644]
src/theory/quantifiers/theory_quantifiers.h [new file with mode: 0644]
src/theory/quantifiers/theory_quantifiers_instantiator.cpp [new file with mode: 0644]
src/theory/quantifiers/theory_quantifiers_instantiator.h [new file with mode: 0644]
src/theory/quantifiers/theory_quantifiers_type_rules.h [new file with mode: 0644]
src/theory/quantifiers_engine.cpp [new file with mode: 0644]
src/theory/quantifiers_engine.h [new file with mode: 0644]
src/theory/rewriterules/Makefile [new file with mode: 0644]
src/theory/rewriterules/Makefile.am [new file with mode: 0644]
src/theory/rewriterules/README.WHATS-NEXT [new file with mode: 0644]
src/theory/rewriterules/kinds [new file with mode: 0644]
src/theory/rewriterules/theory_rewriterules.cpp [new file with mode: 0644]
src/theory/rewriterules/theory_rewriterules.h [new file with mode: 0644]
src/theory/rewriterules/theory_rewriterules_params.h [new file with mode: 0644]
src/theory/rewriterules/theory_rewriterules_preprocess.h [new file with mode: 0644]
src/theory/rewriterules/theory_rewriterules_rewriter.h [new file with mode: 0644]
src/theory/rewriterules/theory_rewriterules_rules.cpp [new file with mode: 0644]
src/theory/rewriterules/theory_rewriterules_rules.h [new file with mode: 0644]
src/theory/rewriterules/theory_rewriterules_type_rules.h [new file with mode: 0644]
src/theory/shared_terms_database.cpp
src/theory/shared_terms_database.h
src/theory/term_registration_visitor.cpp
src/theory/theory.cpp
src/theory/theory.h
src/theory/theory_engine.cpp
src/theory/theory_engine.h
src/theory/theory_test_utils.h
src/theory/trigger.cpp [new file with mode: 0644]
src/theory/trigger.h [new file with mode: 0644]
src/theory/uf/Makefile.am
src/theory/uf/equality_engine.cpp
src/theory/uf/equality_engine.h
src/theory/uf/inst_strategy.cpp [new file with mode: 0644]
src/theory/uf/inst_strategy.h [new file with mode: 0644]
src/theory/uf/kinds
src/theory/uf/symmetry_breaker.cpp
src/theory/uf/theory_uf.cpp
src/theory/uf/theory_uf.h
src/theory/uf/theory_uf_candidate_generator.cpp [new file with mode: 0644]
src/theory/uf/theory_uf_candidate_generator.h [new file with mode: 0644]
src/theory/uf/theory_uf_instantiator.cpp [new file with mode: 0644]
src/theory/uf/theory_uf_instantiator.h [new file with mode: 0644]
src/theory/uf/theory_uf_strong_solver.cpp [new file with mode: 0644]
src/theory/uf/theory_uf_strong_solver.h [new file with mode: 0644]
src/theory/uf/theory_uf_type_rules.h
src/theory/valuation.cpp
src/theory/valuation.h
src/util/datatype.cpp
src/util/datatype.h
src/util/ite_removal.cpp
src/util/options.cpp
src/util/options.h
test/Makefile.am
test/regress/regress0/Makefile.am
test/regress/regress0/quantifiers/AdditiveMethods_AdditiveMethods..ctor.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/AdditiveMethods_OwnedResults.Mz.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/Arrays_Q1-noinfer.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/Makefile [new file with mode: 0644]
test/regress/regress0/quantifiers/Makefile.am [new file with mode: 0644]
test/regress/regress0/quantifiers/array-unsat-simp3.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/array-unsat-simp3.smt2.expect [new file with mode: 0644]
test/regress/regress0/quantifiers/bignum_quant.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/bug269.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/bug290.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/bug291.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/bug291.smt2.expect [new file with mode: 0644]
test/regress/regress0/quantifiers/burns13.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/burns4.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/ex1.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/ex1.smt2.expect [new file with mode: 0644]
test/regress/regress0/quantifiers/ex3.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/ex6.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/ex7.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/ex7.smt2.expect [new file with mode: 0644]
test/regress/regress0/quantifiers/gauss_init_0030.fof.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/javafe.ast.ArrayInit.35.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/javafe.ast.StandardPrettyPrint.319.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/javafe.ast.StmtVec.009.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/javafe.ast.WhileStmt.447.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/javafe.tc.CheckCompilationUnit.001.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/javafe.tc.FlowInsensitiveChecks.682.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/opisavailable-12.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/piVC_5581bd.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/ricart-agrawala6.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/set3.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/set8.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/smtlib384a03.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/smtlib46f14a.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/smtlibf957ea.smt2 [new file with mode: 0644]
test/regress/regress0/quantifiers/symmetric_unsat_7.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/Makefile [new file with mode: 0644]
test/regress/regress0/rewriterules/Makefile.am [new file with mode: 0644]
test/regress/regress0/rewriterules/datatypes.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/datatypes2.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/datatypes3.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/datatypes_clark.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/datatypes_sat.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_010.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_010_lemma.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_020.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_020_sat.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_040.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_040_lemma.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_040_lemma_trigger.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_080.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_1280.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_1280_lemma_trigger.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_160.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_160_lemma.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_160_lemma_trigger.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_160_sat.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_2560.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_2560_sat.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_640.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_640_lemma.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_640_sat.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_inv_1280.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_inv_160.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_n.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_gen_n_lemma.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_trick.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_trick2.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_trick3.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/length_trick3_int.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/set_A_new_fast_tableau-base.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/set_A_new_fast_tableau-base_sat.smt2 [new file with mode: 0644]
test/regress/regress0/rewriterules/test_guards.smt2 [new file with mode: 0644]
test/regress/regress0/uflia/xs-09-16-3-4-1-5.smt
test/regress/regress1/xs-11-20-5-2-5-3.smt
test/unit/prop/cnf_stream_black.h
test/unit/theory/theory_arith_white.h
test/unit/theory/theory_black.h
test/unit/theory/theory_engine_white.h