diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2020-10-19 11:06:16 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-19 11:06:16 -0500 |
commit | a8e839e29325f06ecd2d5dda7d8f64a44ddafb0c (patch) | |
tree | 1cae41ba9583546dfa08590469a93d8fd8c2bb7b /src/smt/process_assertions.cpp | |
parent | e4d9d23f37f40705961b6c58c59fefb6a443eba9 (diff) |
(proof-new) Update preprocessing pass context for proofs (#5298)
This sets up the preprocessing pass context in preparation for proof production.
This PR makes the top level substitutions map into a TrustSubstitutionMap, the data structure that applies substitutions in a way that tracks proofs.
This PR also makes the "apply subst" preprocessing pass proof producing.
Diffstat (limited to 'src/smt/process_assertions.cpp')
-rw-r--r-- | src/smt/process_assertions.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/smt/process_assertions.cpp b/src/smt/process_assertions.cpp index 719165048..f8af72c3a 100644 --- a/src/smt/process_assertions.cpp +++ b/src/smt/process_assertions.cpp @@ -105,9 +105,6 @@ bool ProcessAssertions::apply(Assertions& as) return true; } - SubstitutionMap& top_level_substs = - d_preprocessingPassContext->getTopLevelSubstitutions(); - if (options::bvGaussElim()) { d_passes["bv-gauss"]->apply(&assertions); @@ -330,6 +327,8 @@ bool ProcessAssertions::apply(Assertions& as) // First, find all skolems that appear in the substitution map - their // associated iteExpr will need to be moved to the main assertion set set<TNode> skolemSet; + SubstitutionMap& top_level_substs = + d_preprocessingPassContext->getTopLevelSubstitutions().get(); SubstitutionMap::iterator pos = top_level_substs.begin(); for (; pos != top_level_substs.end(); ++pos) { |