src/ZF/Tools/datatype_package.ML
changeset 58011 bc6bced136e5
parent 57877 4faa0b564a5f
child 58028 e4250d370657
equal deleted inserted replaced
58010:568840962230 58011:bc6bced136e5
    30   (*Insert definitions for the recursive sets, which
    30   (*Insert definitions for the recursive sets, which
    31      must *already* be declared as constants in parent theory!*)
    31      must *already* be declared as constants in parent theory!*)
    32   val add_datatype_i: term * term list -> Ind_Syntax.constructor_spec list list ->
    32   val add_datatype_i: term * term list -> Ind_Syntax.constructor_spec list list ->
    33     thm list * thm list * thm list -> theory -> theory * inductive_result * datatype_result
    33     thm list * thm list * thm list -> theory -> theory * inductive_result * datatype_result
    34   val add_datatype: string * string list -> (string * string list * mixfix) list list ->
    34   val add_datatype: string * string list -> (string * string list * mixfix) list list ->
    35     (Facts.ref * Attrib.src list) list * (Facts.ref * Attrib.src list) list *
    35     (Facts.ref * Token.src list) list * (Facts.ref * Token.src list) list *
    36     (Facts.ref * Attrib.src list) list -> theory -> theory * inductive_result * datatype_result
    36     (Facts.ref * Token.src list) list -> theory -> theory * inductive_result * datatype_result
    37 end;
    37 end;
    38 
    38 
    39 functor Add_datatype_def_Fun
    39 functor Add_datatype_def_Fun
    40  (structure Fp: FP and Pr : PR and CP: CARTPROD and Su : SU
    40  (structure Fp: FP and Pr : PR and CP: CARTPROD and Su : SU
    41   and Ind_Package : INDUCTIVE_PACKAGE
    41   and Ind_Package : INDUCTIVE_PACKAGE