#include "AST.h"
#include "../STPManager/STPManager.h"
-
+#include "../AST/NodeFactory/SimplifyingNodeFactory.h"
namespace BEEV
{
debug_transform(0),
TransformMap(NULL)
{
- nf = bm->defaultNodeFactory;
+ nf = new SimplifyingNodeFactory(*(bm->hashingNodeFactory), *bm);
runTimes = bm->GetRunTimes();
ASTTrue = bm->CreateNode(TRUE);
ASTUndefined = bm->CreateNode(UNDEFINED);
}
+ ~ArrayTransformer()
+ {
+ delete nf;
+ }
+
// Takes a formula, transforms it by replacing array reads with
// variables, and returns the transformed formula
ASTNode TransformFormula_TopLevel(const ASTNode& form);