(***********************************************************************)
(*
- Time-stamp: <Last modified on 2013-03-09 11:12:54 CET by Kim Nguyen>
+ Time-stamp: <Last modified on 2013-03-09 11:16:29 CET by Kim Nguyen>
*)
INCLUDE "utils.ml"
let of_bool = function true -> true_ | false -> false_
+let fold f phi acc =
+ let rec loop phi acc =
+ match expr phi with
+ | And (phi1, phi2) | Or(phi1, phi2) ->
+ loop phi2 (loop phi1 (f phi acc))
+ | _ -> f phi acc
+ in
+ loop phi acc
+
end