src/HOL/Tools/lin_arith.ML
changeset 74561 8e6c973003c8
parent 74290 b2ad24b5a42c
child 74611 98e7930e6d15
equal deleted inserted replaced
74560:5c8177fd1295 74561:8e6c973003c8
    72 (
    72 (
    73   type T = {splits: thm list,
    73   type T = {splits: thm list,
    74             inj_consts: (string * typ) list,
    74             inj_consts: (string * typ) list,
    75             discrete: string list};
    75             discrete: string list};
    76   val empty = {splits = [], inj_consts = [], discrete = []};
    76   val empty = {splits = [], inj_consts = [], discrete = []};
    77   val extend = I;
       
    78   fun merge
    77   fun merge
    79    ({splits = splits1, inj_consts = inj_consts1, discrete = discrete1},
    78    ({splits = splits1, inj_consts = inj_consts1, discrete = discrete1},
    80     {splits = splits2, inj_consts = inj_consts2, discrete = discrete2}) : T =
    79     {splits = splits2, inj_consts = inj_consts2, discrete = discrete2}) : T =
    81    {splits = Thm.merge_thms (splits1, splits2),
    80    {splits = Thm.merge_thms (splits1, splits2),
    82     inj_consts = Library.merge (op =) (inj_consts1, inj_consts2),
    81     inj_consts = Library.merge (op =) (inj_consts1, inj_consts2),