#include "integerencodingrecord.h"
#include "integerencorderresolver.h"
#include "tunable.h"
+#include "polarityassignment.h"
IntegerEncodingTransform::IntegerEncodingTransform(CSolver *_solver)
: Transform(_solver)
Predicate *predicate = solver->createPredicateOperator(SATC_LT, sarray, 2);
Element *parray[] = {elem1, elem2};
BooleanEdge boolean = solver->applyPredicate(predicate, parray, 2);
+ updateEdgePolarity(boolean, boolOrder);
solver->replaceBooleanWithBoolean(boolOrder, boolean);
}
uint cSize = isNodeEdge(cedge) ? cedge.node_ptr->numEdges : 1;
if (equalsEdge(cedge, nedge)) {
addEdgeToResizeNode(&result, cedge);
- result->numVars += cedge.node_ptr->numEdges;
+ result->numVars += cSize;
} else if (!sameNodeOppSign(nedge, cedge)) {
Node *clause = allocResizeNode(cSize + nSize);
if (isNodeEdge(nedge)) {