sig   type term = Term.t   type location = ParseLocation.t   type inductive = {     id : Id.t;     vars : Statement.term list;     cstrs : (Id.t * Statement.term list) list;     loc : Statement.location option;   }   type descr =       Pack of Statement.t list     | Pop of int     | Push of int     | Prove     | Consequent of Statement.term     | Antecedent of Statement.term     | Include of string     | Set_logic of string     | Get_info of string     | Set_info of string * Statement.term option     | Get_option of string     | Set_option of string * Statement.term option     | Def of Id.t * Statement.term     | Decl of Id.t * Statement.term     | Inductive of Statement.inductive     | Get_proof     | Get_unsat_core     | Get_value of Statement.term list     | Get_assignment     | Get_assertions     | Exit   and t = {     id : Id.t;     descr : Statement.descr;     attr : Statement.term option;     loc : Statement.location option;   }   val annot : ?loc:location -> term -> term list -> term   val include_ : ?loc:location -> string -> Id.t list -> t   val clause : ?loc:location -> term list -> t   val pop : ?loc:location -> int -> t   val push : ?loc:location -> int -> t   val assert_ : ?loc:location -> term -> t   val check_sat : ?loc:location -> unit -> t   val set_logic : ?loc:location -> string -> t   val get_info : ?loc:location -> string -> t   val set_info : ?loc:location -> string * term option -> t   val get_option : ?loc:location -> string -> t   val set_option : ?loc:location -> string * term option -> t   val type_decl : ?loc:location -> Id.t -> int -> t   val type_def : ?loc:location -> Id.t -> Id.t list -> term -> t   val fun_decl : ?loc:location -> Id.t -> term list -> term -> t   val fun_def : ?loc:location -> Id.t -> term list -> term -> term -> t   val get_proof : ?loc:location -> unit -> t   val get_unsat_core : ?loc:location -> unit -> t   val get_value : ?loc:location -> term list -> t   val get_assignment : ?loc:location -> unit -> t   val get_assertions : ?loc:location -> unit -> t   val exit : ?loc:location -> unit -> t   val tpi : ?loc:location -> ?annot:term -> Id.t -> string -> term -> t   val thf : ?loc:location -> ?annot:term -> Id.t -> string -> term -> t   val tff : ?loc:location -> ?annot:term -> Id.t -> string -> term -> t   val fof : ?loc:location -> ?annot:term -> Id.t -> string -> term -> t   val cnf : ?loc:location -> ?annot:term -> Id.t -> string -> term -> t   val inductive :     ?loc:location -> Id.t -> term list -> (Id.t * term list) list -> t   val data : ?loc:location -> t list -> t   val decl : ?loc:location -> Id.t -> term -> t   val definition : ?loc:location -> Id.t -> term -> term -> t   val goal : ?loc:location -> ?attr:term -> term -> t   val assume : ?loc:location -> ?attr:term -> term -> t   val rewrite : ?loc:location -> ?attr:term -> term -> t   val pp : Buffer.t -> Statement.t -> unit   val print : Format.formatter -> Statement.t -> unit end