diff options
author | Morgan Deters <mdeters@gmail.com> | 2012-03-01 14:48:04 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2012-03-01 14:48:04 +0000 |
commit | 45a138c326da72890bf889a3670aad503ef4aa1e (patch) | |
tree | fa0c9a8497d0b33f78a9f19212152a61392825cc /src/theory/builtin | |
parent | 8c0b2d6db32103268f84d89c0d0545c7eb504069 (diff) |
Partial merge from kind-backend branch, including Minisat and CNF work to
support incrementality.
Some clean-up work will likely follow, but the CNF/Minisat stuff should be
left pretty much untouched.
Expected performance change negligible; slightly better on memory:
http://church.cims.nyu.edu/regress-results/compare_jobs.php?job_id=3705&reference_id=3697&mode=&category=&p=5
Note that there are crashes, but that these are exhibited in the nightly
regression run too!
Diffstat (limited to 'src/theory/builtin')
-rw-r--r-- | src/theory/builtin/kinds | 13 | ||||
-rw-r--r-- | src/theory/builtin/theory_builtin_type_rules.h | 20 |
2 files changed, 33 insertions, 0 deletions
diff --git a/src/theory/builtin/kinds b/src/theory/builtin/kinds index 61abfbfaf..519536c81 100644 --- a/src/theory/builtin/kinds +++ b/src/theory/builtin/kinds @@ -325,4 +325,17 @@ typerule EQUAL ::CVC4::theory::builtin::EqualityTypeRule typerule DISTINCT ::CVC4::theory::builtin::DistinctTypeRule typerule TUPLE ::CVC4::theory::builtin::TupleTypeRule +constant SUBTYPE_TYPE \ + ::CVC4::Predicate \ + ::CVC4::PredicateHashStrategy \ + "util/predicate.h" \ + "predicate subtype" +cardinality SUBTYPE_TYPE \ + "::CVC4::theory::builtin::SubtypeProperties::computeCardinality(%TYPE%)" \ + "theory/builtin/theory_builtin_type_rules.h" +well-founded SUBTYPE_TYPE \ + "::CVC4::theory::builtin::SubtypeProperties::isWellFounded(%TYPE%)" \ + "::CVC4::theory::builtin::SubtypeProperties::mkGroundTerm(%TYPE%)" \ + "theory/builtin/theory_builtin_type_rules.h" + endtheory diff --git a/src/theory/builtin/theory_builtin_type_rules.h b/src/theory/builtin/theory_builtin_type_rules.h index cd3e1437f..706196f8b 100644 --- a/src/theory/builtin/theory_builtin_type_rules.h +++ b/src/theory/builtin/theory_builtin_type_rules.h @@ -227,6 +227,26 @@ public: } };/* class TupleProperties */ +class SubtypeProperties { +public: + + inline static Cardinality computeCardinality(TypeNode type) { + Assert(type.getKind() == kind::SUBTYPE_TYPE); + Unimplemented("Computing the cardinality for predicate subtype not yet supported."); + } + + inline static bool isWellFounded(TypeNode type) { + Assert(type.getKind() == kind::SUBTYPE_TYPE); + Unimplemented("Computing the well-foundedness for predicate subtype not yet supported."); + } + + inline static Node mkGroundTerm(TypeNode type) { + Assert(type.getKind() == kind::SUBTYPE_TYPE); + Unimplemented("Constructing a ground term for predicate subtype not yet supported."); + } + +};/* class SubtypeProperties */ + }/* CVC4::theory::builtin namespace */ }/* CVC4::theory namespace */ }/* CVC4 namespace */ |