sig
  type t =
      VarL of Cil_types.logic_var * Formula.tau
    | VarT of string * int option * Formula.tau * Cil_types.logic_type option
  val mk_lvar_variable : Cil_types.logic_var -> Formula.tau -> Fol.Var.t
  val lvar_of_variable : Fol.Var.t -> Cil_types.logic_var option
  val var_type : Fol.Var.t -> Formula.tau
  val var_name : Fol.Var.t -> string
  val basename : Fol.Var.t -> string
  val kind_of_var : Fol.Var.t -> Formula.kind
  val var_counter : int Pervasives.ref
  val ident_named_var : string -> int -> Formula.tau -> Fol.Var.t
  val fresh_named_var : string -> Formula.tau -> Fol.Var.t
  val fresh_typed_var :
    string -> Cil_types.logic_type -> Formula.tau -> Fol.Var.t
  val fresh_var : Fol.Var.t -> Fol.Var.t
  val equal : Fol.Var.t -> Fol.Var.t -> bool
  val compare : Fol.Var.t -> Fol.Var.t -> int
end