equal
deleted
inserted
replaced
209 let |
209 let |
210 val (consts, thms) = join_func_thms (thms1, thms2); |
210 val (consts, thms) = join_func_thms (thms1, thms2); |
211 in (SOME consts, thms) end; |
211 in (SOME consts, thms) end; |
212 |
212 |
213 val eq_string = op = : string * string -> bool; |
213 val eq_string = op = : string * string -> bool; |
214 val eq_co = eq_pair eq_string (eq_list (is_equal o Term.typ_ord)); |
214 val eq_co = op = : (string * typ list) * (string * typ list) -> bool; |
215 fun eq_dtyp ((vs1, cs1), (vs2, cs2)) = |
215 fun eq_dtyp ((vs1, cs1), (vs2, cs2)) = |
216 gen_eq_set (eq_pair eq_string (gen_eq_set eq_string)) (vs1, vs2) |
216 gen_eq_set (eq_pair eq_string (gen_eq_set eq_string)) (vs1, vs2) |
217 andalso gen_eq_set eq_co (cs1, cs2); |
217 andalso gen_eq_set eq_co (cs1, cs2); |
218 fun merge_dtyps (tabs as (tab1, tab2)) = |
218 fun merge_dtyps (tabs as (tab1, tab2)) = |
219 let |
219 let |