summaryrefslogtreecommitdiff
path: root/src/smt/proof_post_processor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/smt/proof_post_processor.cpp')
-rw-r--r--src/smt/proof_post_processor.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/smt/proof_post_processor.cpp b/src/smt/proof_post_processor.cpp
index a292fec8f..167a82e26 100644
--- a/src/smt/proof_post_processor.cpp
+++ b/src/smt/proof_post_processor.cpp
@@ -422,6 +422,7 @@ Node ProofPostprocessCallback::expandMacros(PfRule id,
// not eliminated
return Node::null();
}
+ Trace("smt-proof-pp-debug") << "Expand macro " << id << std::endl;
// macro elimination
if (id == PfRule::MACRO_SR_EQ_INTRO)
{
@@ -855,7 +856,7 @@ Node ProofPostprocessCallback::expandMacros(PfRule id,
for (size_t j = 0, nchildi = children[i].getNumChildren(); j < nchildi;
j++)
{
- Node nodej = nm->mkConst(CONST_RATIONAL, Rational(j));
+ Node nodej = nm->mkConstInt(Rational(j));
cdp->addStep(
children[i][j], PfRule::AND_ELIM, {children[i]}, {nodej});
}
@@ -1086,8 +1087,10 @@ Node ProofPostprocessCallback::expandMacros(PfRule id,
TNode child = children[i];
TNode scalar = args[i];
bool isPos = scalar.getConst<Rational>() > 0;
- Node scalarCmp = nm->mkNode(
- isPos ? GT : LT, scalar, nm->mkConst(CONST_RATIONAL, Rational(0)));
+ Node scalarCmp =
+ nm->mkNode(isPos ? GT : LT,
+ scalar,
+ nm->mkConstRealOrInt(scalar.getType(), Rational(0)));
// (= scalarCmp true)
Node scalarCmpOrTrue = steps.tryStep(PfRule::EVALUATE, {}, {scalarCmp});
Assert(!scalarCmpOrTrue.isNull());
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback