fact: Fixpoint Aeval (a: aexp) (S: ST.t) : V.t := match a with | CONST n => V.const n | VAR x => ST.get x S | PLUS a1 a2 => V.add (Aeval a1 S) (Aeval a2 S) | MINUS a1 a2 => V.sub (Aeval a1 S) (Aeval a2 S) end.
imports: Coq(ZArith Psatz Bool String List FMaps) CDF(Sequences IMP)