equal
deleted
inserted
replaced
278 val names2 = map fst eqns; |
278 val names2 = map fst eqns; |
279 val _ = if eq_set (op =) (names1, names2) then () |
279 val _ = if eq_set (op =) (names1, names2) then () |
280 else primrec_err ("functions " ^ commas_quote names2 ^ |
280 else primrec_err ("functions " ^ commas_quote names2 ^ |
281 "\nare not mutually recursive"); |
281 "\nare not mutually recursive"); |
282 val (defs_thms, lthy') = lthy |> |
282 val (defs_thms, lthy') = lthy |> |
283 set_group ? LocalTheory.set_group (serial_string ()) |> |
283 set_group ? LocalTheory.set_group (serial ()) |> |
284 fold_map (apfst (snd o snd) oo |
284 fold_map (apfst (snd o snd) oo |
285 LocalTheory.define Thm.definitionK o fst) defs'; |
285 LocalTheory.define Thm.definitionK o fst) defs'; |
286 val qualify = Binding.qualify false |
286 val qualify = Binding.qualify false |
287 (space_implode "_" (map (Long_Name.base_name o #1) defs)); |
287 (space_implode "_" (map (Long_Name.base_name o #1) defs)); |
288 val names_atts' = map (apfst qualify) names_atts; |
288 val names_atts' = map (apfst qualify) names_atts; |