173 set_arities = set_arities1, pred_arities = pred_arities1}, |
173 set_arities = set_arities1, pred_arities = pred_arities1}, |
174 {to_set_simps = to_set_simps2, to_pred_simps = to_pred_simps2, |
174 {to_set_simps = to_set_simps2, to_pred_simps = to_pred_simps2, |
175 set_arities = set_arities2, pred_arities = pred_arities2}) : T = |
175 set_arities = set_arities2, pred_arities = pred_arities2}) : T = |
176 {to_set_simps = Thm.merge_thms (to_set_simps1, to_set_simps2), |
176 {to_set_simps = Thm.merge_thms (to_set_simps1, to_set_simps2), |
177 to_pred_simps = Thm.merge_thms (to_pred_simps1, to_pred_simps2), |
177 to_pred_simps = Thm.merge_thms (to_pred_simps1, to_pred_simps2), |
178 set_arities = Symtab.merge_list op = (set_arities1, set_arities2), |
178 set_arities = Symtab.merge_list (op =) (set_arities1, set_arities2), |
179 pred_arities = Symtab.merge_list op = (pred_arities1, pred_arities2)}; |
179 pred_arities = Symtab.merge_list (op =) (pred_arities1, pred_arities2)}; |
180 ); |
180 ); |
181 |
181 |
182 fun name_type_of (Free p) = SOME p |
182 fun name_type_of (Free p) = SOME p |
183 | name_type_of (Const p) = SOME p |
183 | name_type_of (Const p) = SOME p |
184 | name_type_of _ = NONE; |
184 | name_type_of _ = NONE; |