}
else
{
+ AlwaysAssert(false) << "arith hole!";
os << "\n; Arithmetic proofs which use reasoning more complex than Farkas "
- "proofs are currently unsupported\n(clausify_false trust)\n";
+ "proofs and bound tightening are currently unsupported\n"
+ "(clausify_false trust)\n";
}
}
}
Assert(conflict.getNumChildren() == pf.d_farkasCoefficients->size());
- d_containing.d_proofRecorder->saveFarkasCoefficients(
- conflictInFarkasCoefficientOrder, pf.d_farkasCoefficients);
+ if (confConstraint->hasSimpleFarkasProof())
+ {
+ d_containing.d_proofRecorder->saveFarkasCoefficients(
+ conflictInFarkasCoefficientOrder, pf.d_farkasCoefficients);
+ }
})
if(Debug.isOn("arith::normalize::external")){
conflict = flattenAndSort(conflict);
Assert(coeffs != RationalVectorPSentinel);
Assert(conflictInFarkasCoefficientOrder.getNumChildren()
== coeffs->size());
- d_containing.d_proofRecorder->saveFarkasCoefficients(
- conflictInFarkasCoefficientOrder, coeffs);
+ if (implied->hasSimpleFarkasProof())
+ {
+ d_containing.d_proofRecorder->saveFarkasCoefficients(
+ conflictInFarkasCoefficientOrder, coeffs);
+ }
})
outputLemma(clause);
}else{