signature RecordType = sig include Abbrev val mk_recordtype_constructor : string -> string val prove_recordtype_thms : TypeBasePure.tyinfo * string list -> TypeBasePure.tyinfo val update_tyinfo : ((string * TypeBase.rcd_fieldinfo) list * thm list * thm list) option -> thm list -> TypeBasePure.tyinfo -> TypeBasePure.tyinfo end (* [prove_recordtype_thms] takes a tyinfo with the basic information about the type and a list of names for the record fields. Returns an augmented tyinfo and a string corresponding to an ML expression which modifies a tyinfo in the same way as the result has just been modified. [update_tyinfo ths] transforms a tyinfo by adding the ths to it as extra simplification theorems. Also updates the tyinfo with accessor and update information. *)