let constant fmt = function
  | Fol.ConstInt n -> 
      if n.[0] = '-'
      then Format.fprintf fmt "(%s)" n
      else pp_print_string fmt n
  | Fol.ConstBool b -> pp_print_string fmt (if b then "true" else "false")
  | Fol.ConstUnit -> pp_print_string fmt "void"
  | Fol.ConstFloat f -> 
      if f.[0] = '-' 
      then Format.fprintf fmt "(%s)" f
      else pp_print_string fmt f