1 #ifndef FUNCTIONENCODING_H
2 #define FUNCTIONENCODING_H
5 enum FunctionEncodingType {
6 ENUMERATEIMPLICATIONS, CIRCUIT
9 typedef enum FunctionEncodingType FunctionEncodingType;
11 union ElementPredicate {
16 typedef union ElementPredicate ElementPredicate;
18 struct FunctionEncoding {
19 FunctionEncodingType type;
20 bool isFunction;//true for function, false for predicate
24 FunctionEncoding * allocFunctionEncoding(FunctionEncodingType type, Element *function);
25 FunctionEncoding * allocPredicateEncoding(FunctionEncodingType type, Boolean *predicate);
26 void deleteFunctionEncoding(FunctionEncoding *This);