Module Logtk.UntypedAST
Main AST before Typing
module Loc = ParseLocationmodule T = STermtype term= T.ttype ty= T.ttype form= T.ttype data={data_name : string;data_vars : string list;data_cstors : (string * (string option * ty) list) list;}Basic definition of inductive types
type attr=|A_app of string * attr list|A_quoted of string|A_list of attr listAttributes (general terms)
type attrs= attr listtype def={def_id : string;def_ty : ty;def_rules : term list;}type statement_view=|Include of string|Decl of string * ty|Def of def list|Rewrite of term|Data of data list|Assert of form|Lemma of form|Goal of formStatement
type statement={stmt : statement_view;attrs : attrs;loc : Loc.t option;}
val default_attrs : attrsval mk_def : string -> ty -> term list -> defval include_ : ?loc:Loc.t -> ?attrs:attrs -> string -> statementval decl : ?loc:Loc.t -> ?attrs:attrs -> string -> ty -> statementval def : ?loc:Loc.t -> ?attrs:attrs -> def list -> statementval data : ?loc:Loc.t -> ?attrs:attrs -> data list -> statementval rewrite : ?loc:Loc.t -> ?attrs:attrs -> term -> statementval assert_ : ?loc:Loc.t -> ?attrs:attrs -> term -> statementval lemma : ?loc:Loc.t -> ?attrs:attrs -> term -> statementval goal : ?loc:Loc.t -> ?attrs:attrs -> term -> statementval name_of_attrs : attrs -> string optionval name : statement -> string option
module A : sig ... endval attr_name : string -> attrval attr_ac : attrval attr_prefix : string -> attrval attr_infix : string -> attrval pp_attr : attr CCFormat.printerval pp_attrs : attrs CCFormat.printerval pp_attr_zf : attr CCFormat.printerval pp_attrs_zf : attrs CCFormat.printerval pp_attr_tstp : attr CCFormat.printerPrint as a TPTP general_term
val pp_statement : statement CCFormat.printer
Errors
exceptionParse_error of Loc.t * string