From: bdemsky Date: Mon, 10 Jul 2017 05:53:01 +0000 (-0700) Subject: bug fixes X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=80091e255d2d254ea4eb29809c055d757b146c17;p=satune.git bug fixes --- diff --git a/src/Backend/nodeedge.c b/src/Backend/nodeedge.c index f836fff..fdc69ce 100644 --- a/src/Backend/nodeedge.c +++ b/src/Backend/nodeedge.c @@ -191,7 +191,7 @@ Edge constraintAND(CNF * cnf, uint numEdges, Edge * edges) { /** De-duplicate array */ uint lowindex=0; - edges[lowindex++]=edges[initindex++]; + edges[lowindex]=edges[initindex++]; for(;initindexenableMatching; @@ -561,7 +563,7 @@ void produceCNF(CNF * cnf, Edge e) { bool propagate(CNF *cnf, CNFExpr ** dest, CNFExpr * src, bool negate) { if (src != NULL && !isProxy(src) && getLitSizeCNF(src) == 0) { - if (dest == NULL) { + if (*dest == NULL) { *dest = allocCNFExprBool(negate ? alwaysFalseCNF(src) : alwaysTrueCNF(src)); } else if (isProxy(*dest)) { bool alwaysTrue = (negate ? alwaysFalseCNF(src) : alwaysTrueCNF(src)); diff --git a/src/Test/testcnf.c b/src/Test/testcnf.c index 82f926d..9405009 100644 --- a/src/Test/testcnf.c +++ b/src/Test/testcnf.c @@ -9,8 +9,9 @@ int main(int numargs, char ** argv) { Edge nv2=constraintNegate(v2); Edge iff1=constraintIFF(cnf, nv1, v2); Edge iff2=constraintIFF(cnf, nv2, v3); - Edge iff3=constraintIFF(cnf, v3, nv1); - Edge cand=constraintAND(cnf, 3, (Edge[]) {iff1, iff2, iff3}); + // Edge iff3=constraintIFF(cnf, v3, nv1); + //Edge cand=constraintAND(cnf, 3, (Edge[]) {iff1, iff2, iff3}); + Edge cand=constraintAND(cnf, 2, (Edge[]) {iff1, iff2}); addConstraint(cnf, cand); solveCNF(cnf); deleteCNF(cnf);