#include "preprocessing/preprocessing_pass_context.h"
#include "expr/node_algorithm.h"
+#include "expr/skolem_manager.h"
#include "options/base_options.h"
#include "smt/env.h"
#include "theory/theory_engine.h"
void PreprocessingPassContext::printSubstitution(const Node& lhs,
const Node& rhs) const
{
- Node eq = lhs.eqNode(rhs);
+ Node eq = SkolemManager::getOriginalForm(lhs.eqNode(rhs));
output(OutputTag::LEARNED_LITS)
<< "(learned-lit " << eq << " :preprocess-subs)" << std::endl;
output(OutputTag::SUBS) << "(substitution " << eq << ")" << std::endl;
for (const Node& lit : ppl)
{
output(OutputTag::LEARNED_LITS)
- << "(learned-lit " << lit << " :preprocess)" << std::endl;
+ << "(learned-lit " << SkolemManager::getOriginalForm(lit)
+ << " :preprocess)" << std::endl;
}
}
for (const Node& a : assertions)