X-Git-Url: http://plrg.eecs.uci.edu/git/?p=satune.git;a=blobdiff_plain;f=src%2FAST%2Fops.h;h=6d6fd97a36242e1eac656145f145fc05bd348c86;hp=1f94cb1a037c86cddb33d903a5d422efaf5b26fa;hb=e9ca288c7f0cf0f3bb9508c3cc9b212f557bcc40;hpb=ddc4141470ead8ab7bfa6047a6a6a0ac1766a91f diff --git a/src/AST/ops.h b/src/AST/ops.h index 1f94cb1..6d6fd97 100644 --- a/src/AST/ops.h +++ b/src/AST/ops.h @@ -1,38 +1,33 @@ #ifndef OPS_H #define OPS_H -enum LogicOp {L_AND, L_OR, L_NOT, L_XOR, L_IMPLIES}; +enum LogicOp {SATC_AND, SATC_OR, SATC_NOT, SATC_XOR, SATC_IFF, SATC_IMPLIES}; typedef enum LogicOp LogicOp; -enum ArithOp {ADD, SUB}; +enum ArithOp {SATC_ADD, SATC_SUB}; typedef enum ArithOp ArithOp; -enum CompOp {EQUALS}; +enum CompOp {SATC_EQUALS, SATC_LT, SATC_GT, SATC_LTE, SATC_GTE}; typedef enum CompOp CompOp; -enum OrderType {PARTIAL, TOTAL}; +enum OrderType {SATC_PARTIAL, SATC_TOTAL}; typedef enum OrderType OrderType; /** - * FLAGFORCESOVERFLOW forces the operation to overflow if the boolean flag is true - * OVERFLOWSETSFLAG -- sets the flag if the operation overflows - * FLAGIFFOVERFLOW -- flag is set iff the operation overflows - * IGNORE -- doesn't constrain output if the result cannot be represented - * WRAPAROUND -- wraps around like stand integer arithmetic - * NOOVERFLOW -- client has ensured that overflow is impossible + * SATC_FLAGFORCESOVERFLOW forces the operation to overflow if the boolean flag is true + * SATC_OVERFLOWSETSFLAG -- sets the flag if the operation overflows + * SATC_FLAGIFFOVERFLOW -- flag is set iff the operation overflows + * SATC_IGNORE -- doesn't constrain output if the result cannot be represented + * SATC_WRAPAROUND -- wraps around like stand integer arithmetic + * SATC_NOOVERFLOW -- client has ensured that overflow is impossible */ -enum OverFlowBehavior {IGNORE, WRAPAROUND, FLAGFORCESOVERFLOW, OVERFLOWSETSFLAG, FLAGIFFOVERFLOW, NOOVERFLOW}; +enum OverFlowBehavior {SATC_IGNORE, SATC_WRAPAROUND, SATC_FLAGFORCESOVERFLOW, SATC_OVERFLOWSETSFLAG, SATC_FLAGIFFOVERFLOW, SATC_NOOVERFLOW}; typedef enum OverFlowBehavior OverFlowBehavior; -enum UndefinedBehavior {IGNOREBEHAVIOR, FLAGFORCEUNDEFINED, UNDEFINEDSETSFLAG, FLAGIFFUNDEFINED}; +enum UndefinedBehavior {SATC_IGNOREBEHAVIOR, SATC_FLAGFORCEUNDEFINED, SATC_UNDEFINEDSETSFLAG, SATC_FLAGIFFUNDEFINED}; typedef enum UndefinedBehavior UndefinedBehavior; -enum FunctionType {TABLEFUNC, OPERATORFUNC}; -typedef enum FunctionType FunctionType; +enum InterpreterType {SATUNE, ALLOY, Z3, MATHSAT, SMTRAT}; +typedef enum InterpreterType InterpreterType; -enum PredicateType {TABLEPRED, OPERATORPRED}; -typedef enum PredicateType PredicateType; - -enum ASTNodeType {ORDERCONST, BOOLEANVAR, LOGICOP, PREDICATEOP, ELEMSET, ELEMFUNCRETURN}; -typedef enum ASTNodeType ASTNodeType; #endif