X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=src%2FBackend%2Fsatorderencoder.c;h=64f414cc302bfcdb4bac2ff2a1c0d03410e176b9;hb=3864e5b351f8262b769f0b2f4034f986871f3d14;hp=bb076ec14ce1dea867fe142a493ab4027abe8b0c;hpb=72df0425fdbb8581b5ae2b17a8c1da9fbaf848ae;p=satune.git diff --git a/src/Backend/satorderencoder.c b/src/Backend/satorderencoder.c index bb076ec..64f414c 100644 --- a/src/Backend/satorderencoder.c +++ b/src/Backend/satorderencoder.c @@ -61,6 +61,12 @@ Edge orderIntegerEncodingSATEncoder(SATEncoder *This, BooleanOrder *boolOrder){ Predicate *predicate =allocPredicateOperator(LT, (Set*[]){order->set, order->set}, 2); Boolean * boolean=allocBooleanPredicate(predicate, (Element *[]){elem1,elem2}, 2, NULL); setFunctionEncodingType(getPredicateFunctionEncoding((BooleanPredicate*)boolean), CIRCUIT); + {//Adding new elements and boolean/predicate to solver regarding memory management + pushVectorBoolean(This->solver->allBooleans, boolean); + pushVectorPredicate(This->solver->allPredicates, predicate); + pushVectorElement(This->solver->allElements, elem1); + pushVectorElement(This->solver->allElements, elem2); + } return encodeConstraintSATEncoder(This, boolean); }