§Relation
eval
§relation eval: Exp => int =
§ axiom eval(INTconst(ival)) =>
ival
§ rule eval(e1) => v1 &
eval(e2) => v2 & int_add(v1,v2) => v3
§ ------------------------------------------------------
§ eval (PLUSop(e1,e2)) => v3
§ rule eval(e1) => v1 &
eval(e2) => v2 & int_sub(v1,v2) => v3
§ -----------------------------------------------------
§ eval (SUBop(e1,e2)) => v3
§ rule eval(e1) => v1 &
eval(e2) => v2 & int_mul(v1,v2) => v3
§ -----------------------------------------------------
§ eval (MULop(e1,e2)) => v3
§ rule eval(e1) => v1 &
eval(e2) => v2 & int_div(v1,v2) => v3
§ -----------------------------------------------------
§ eval (DIVop(e1,e2)) => v3
§ rule eval(e) => v1 &
int_neg(v1) => v2
§ -----------------------------------------------------
§ eval (NEGop(e)) => v2
§end
§