Simplify Code
[satune.git] / src / ASTTransform / transform.cc
index 312b450fe670acebf7dc310f118cef8f880fc436..99a181fd3c859d0865e517cace073b0cc07a0018 100644 (file)
@@ -1,45 +1,16 @@
 /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-
-/* 
  * File:   transform.cc
  * Author: hamed
- * 
+ *
  * Created on August 26, 2017, 5:14 PM
  */
 
 #include "transform.h"
-#include "set.h"
-#include "order.h"
-#include "satencoder.h"
-#include "csolver.h"
-#include "integerencodingrecord.h"
-
-Transform::Transform() {
-       orderIntegerEncoding = new HashTableOrderIntegerEncoding;
-}
 
-void Transform:: orderIntegerEncodingSATEncoder(CSolver *This, BooleanOrder *boolOrder) {
-       Order *order = boolOrder->order;
-       if (!orderIntegerEncoding->contains(order)) {
-               orderIntegerEncoding->put(order, new IntegerEncodingRecord(
-               This->createRangeSet(order->set->type, 0, (uint64_t) order->set->getSize()-1)));
-       }
-       IntegerEncodingRecord* ierec = orderIntegerEncoding->get(order);
-       //getting two elements and using LT predicate ...
-       Element *elem1 = ierec->getOrderIntegerElement(This, boolOrder->first);
-       Element *elem2 = ierec->getOrderIntegerElement(This, boolOrder->second);
-       Set *sarray[] = {ierec->set, ierec->set};
-       Predicate *predicate = This->createPredicateOperator(LT, sarray, 2);
-       Element *parray[] = {elem1, elem2};
-       Boolean *boolean = This->applyPredicate(predicate, parray, 2);
-       This->addConstraint(boolean);
-       This->replaceBooleanWithBoolean(boolOrder, boolean);
+Transform::Transform(CSolver *_solver)
+{
+       solver = _solver;
 }
 
-Transform::~Transform(){
-       delete orderIntegerEncoding;
+Transform::~Transform() {
 }