fact: Definition fact_in_coq : com := Z ::= AId X;; Y ::= ANum 1;; WHILE BNot (BEq (AId Z) (ANum 0)) DO Y ::= AMult (AId Y) (AId Z);; Z ::= AMinus (AId Z) (ANum 1) END.
imports: Coq.Bool.Bool Coq.Arith.Arith Coq.Arith.EqNat Coq.omega.Omega Coq.Lists.List Coq.omega.Omega Maps