return result;
}
-void addConstraint(CNF *cnf, Edge constraint) {
+void addConstraintCNF(CNF *cnf, Edge constraint) {
pushVectorEdge(&cnf->constraints, constraint);
}
Edge constraintNewVar(CNF *cnf);
void countPass(CNF *cnf);
void countConstraint(CNF *cnf, VectorEdge * stack, Edge e);
-void addConstraint(CNF *cnf, Edge constraint);
+void addConstraintCNF(CNF *cnf, Edge constraint);
int solveCNF(CNF *cnf);
bool getValueCNF(CNF *cnf, Edge var);
void printCNF(Edge e);
Edge c= encodeConstraintSATEncoder(This, constraint);
printCNF(c);
printf("\n\n");
- addConstraint(This->cnf, c);
+ addConstraintCNF(This->cnf, c);
}
}
OrderPair pairIK = {valueI, valueK};
Edge constIK = getPairConstraint(This, table, & pairIK);
Edge constJK = getPairConstraint(This, table, & pairJK);
- addConstraint(This->cnf, generateTransOrderConstraintSATEncoder(This, constIJ, constJK, constIK));
+ addConstraintCNF(This->cnf, generateTransOrderConstraintSATEncoder(This, constIJ, constJK, constIK));
}
}
}
Edge cor=constraintOR2(cnf, constraintAND2(cnf, c1, c2), v5);
printCNF(cor);
printf("\n");
- addConstraint(cnf, cor);
+ addConstraintCNF(cnf, cor);
int value=solveCNF(cnf);
if (value==1) {
bool v1v=getValueCNF(cnf, v1);