X-Git-Url: http://plrg.eecs.uci.edu/git/?p=satune.git;a=blobdiff_plain;f=src%2FAST%2Fops.h;h=6d6fd97a36242e1eac656145f145fc05bd348c86;hp=3b3e3c39bd11bf6ae9f2275d4b72de4d3e353716;hb=4c58af641a877bb6d65769994c8fd57ecedbd22c;hpb=fc1dd990c4a5d55165ff08da878fbda71dee83cf diff --git a/src/AST/ops.h b/src/AST/ops.h index 3b3e3c3..6d6fd97 100644 --- a/src/AST/ops.h +++ b/src/AST/ops.h @@ -1,28 +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 BooleanType {ORDERCONST, BOOLEANVAR, LOGICOP, COMPARE}; -typedef enum BooleanType BooleanType; +enum UndefinedBehavior {SATC_IGNOREBEHAVIOR, SATC_FLAGFORCEUNDEFINED, SATC_UNDEFINEDSETSFLAG, SATC_FLAGIFFUNDEFINED}; +typedef enum UndefinedBehavior UndefinedBehavior; + +enum InterpreterType {SATUNE, ALLOY, Z3, MATHSAT, SMTRAT}; +typedef enum InterpreterType InterpreterType; + + #endif