diff options
author | ajreynol <andrew.j.reynolds@gmail.com> | 2016-03-01 16:29:14 -0600 |
---|---|---|
committer | ajreynol <andrew.j.reynolds@gmail.com> | 2016-03-01 16:29:14 -0600 |
commit | 811834a6aeab1e055b0417eaf988fc682e74e65a (patch) | |
tree | 0c9067c163a4c09faf7e10493124abedf63436fc /src/theory/theory_model.cpp | |
parent | 8dc28ec4709b847a995d57bc39b8bfbaf7c5a344 (diff) |
Shorter explanations for strings based on tracking which parts of normal forms are dependent upon which equalities. Add anti-skolemization module to quantifiers. Disable rewriting of non-clashing equalities between same constructors.
Diffstat (limited to 'src/theory/theory_model.cpp')
-rw-r--r-- | src/theory/theory_model.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/theory/theory_model.cpp b/src/theory/theory_model.cpp index 0eff9bd5d..2ce86852e 100644 --- a/src/theory/theory_model.cpp +++ b/src/theory/theory_model.cpp @@ -631,7 +631,9 @@ void TheoryEngineModelBuilder::buildModel(Model* m, bool fullModel) Trace("model-builder") << " Processing Term: " << n << endl; // Record as rep if this node was specified as a representative if (tm->d_reps.find(n) != tm->d_reps.end()){ - Assert(rep.isNull()); + //AJR: I believe this assertion is too strict, + // e.g. datatypes may assert representative for two constructor terms that are not in the care graph and are merged during collectModelInfo. + //Assert(rep.isNull()); rep = tm->d_reps[n]; Assert(!rep.isNull() ); Trace("model-builder") << " Rep( " << eqc << " ) = " << rep << std::endl; |