From f96c6affc7f990067f4d298d9c989f789933c9ce Mon Sep 17 00:00:00 2001 From: Hamed Gorjiara Date: Mon, 22 Oct 2018 18:35:52 -0700 Subject: [PATCH] Bug fix --- src/Backend/satelemencoder.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Backend/satelemencoder.cc b/src/Backend/satelemencoder.cc index 6f421ee..c586caa 100644 --- a/src/Backend/satelemencoder.cc +++ b/src/Backend/satelemencoder.cc @@ -227,7 +227,8 @@ void SATEncoder::generateBinaryIndexEncodingVars(ElementEncoding *encoding) { if (encoding->element->anyValue) { uint setSize = encoding->element->getRange()->getSize(); int maxIndex = getMaximumUsedIndex(encoding); - if (maxIndex !=-1 && (maxIndex - setSize) != 0 && (setSize/(maxIndex-setSize)) < pow(1.9, (uint)solver->getTuner()->getTunable(MUSTVALUE, &mustValueBinaryIndex) - 4)) { +// model_print("maxIndex=%d\tsetSize=%u\tmetric=%f\n", maxIndex, setSize, (maxIndex - setSize) == 0? -1.0 : (setSize*1.0/(maxIndex-setSize)) ); + if (maxIndex !=-1 && (maxIndex - setSize) != 0 && (setSize*1.0/(maxIndex-setSize)) < pow(1.9, (uint)solver->getTuner()->getTunable(MUSTVALUE, &mustValueBinaryIndex) - 4)) { generateAnyValueBinaryIndexEncodingPositive(encoding); } else { generateAnyValueBinaryIndexEncoding(encoding); -- 2.34.1