From 5de2361a9f5cad7a7ba005e59817b474d0b9fc8e Mon Sep 17 00:00:00 2001 From: Hamed Date: Wed, 20 Sep 2017 12:19:16 -0700 Subject: [PATCH] Adding APIs needed --- src/csolver.cc | 19 ++++++++++++++----- src/csolver.h | 4 ++++ src/mymemory.h | 2 +- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/src/csolver.cc b/src/csolver.cc index 8ea79e4..fe21110 100644 --- a/src/csolver.cc +++ b/src/csolver.cc @@ -118,6 +118,10 @@ Set *CSolver::createRangeSet(VarType type, uint64_t lowrange, uint64_t highrange return set; } +VarType CSolver::getSetVarType(Set *set){ + return set->getType(); +} + Element *CSolver::createRangeVar(VarType type, uint64_t lowrange, uint64_t highrange) { Set *s = createRangeSet(type, lowrange, highrange); return getElementVar(s); @@ -149,6 +153,11 @@ Element *CSolver::getElementVar(Set *set) { return element; } +Set* CSolver::getElementRange (Element* element){ + return element->getRange(); +} + + Element *CSolver::getElementConst(VarType type, uint64_t value) { uint64_t array[] = {value}; Set *set = new Set(type, array, 1); @@ -430,8 +439,8 @@ int CSolver::solve() { long long startTime = getTimeNano(); computePolarities(this); - Preprocess pp(this); - pp.doTransform(); +// Preprocess pp(this); +// pp.doTransform(); DecomposeOrderTransform dot(this); dot.doTransform(); @@ -439,9 +448,9 @@ int CSolver::solve() { IntegerEncodingTransform iet(this); iet.doTransform(); - EncodingGraph eg(this); - eg.buildGraph(); - eg.encode(); +// EncodingGraph eg(this); +// eg.buildGraph(); +// eg.encode(); naiveEncodingDecision(this); satEncoder->encodeAllSATEncoder(this); diff --git a/src/csolver.h b/src/csolver.h index e492781..15da42e 100644 --- a/src/csolver.h +++ b/src/csolver.h @@ -18,6 +18,8 @@ public: Set *createRangeSet(VarType type, uint64_t lowrange, uint64_t highrange); + VarType getSetVarType(Set *set); + Element *createRangeVar(VarType type, uint64_t lowrange, uint64_t highrange); /** This function creates a mutable set. */ @@ -46,6 +48,8 @@ public: /** This function creates an element constrant. */ Element *getElementConst(VarType type, uint64_t value); + + Set* getElementRange (Element* element); BooleanEdge getBooleanTrue(); diff --git a/src/mymemory.h b/src/mymemory.h index 7c63aa1..e0a60bd 100644 --- a/src/mymemory.h +++ b/src/mymemory.h @@ -26,7 +26,7 @@ void * ourrealloc(void *ptr, size_t size); */ -#if 0 +#if 1 void * model_malloc(size_t size); void model_free(void *ptr); void * model_calloc(size_t count, size_t size); -- 2.34.1