tuned to avoid list traversal and memory allocation
authordesharna
Tue, 25 Mar 2025 15:24:30 +0100
changeset 82345 d935fa3b90f2
parent 82344 ccc12a6dec13
child 82346 b1c40a1ae4a9
tuned to avoid list traversal and memory allocation
src/HOL/Tools/ATP/atp_problem_generate.ML
--- a/src/HOL/Tools/ATP/atp_problem_generate.ML	Tue Mar 25 15:14:08 2025 +0100
+++ b/src/HOL/Tools/ATP/atp_problem_generate.ML	Tue Mar 25 15:24:30 2025 +0100
@@ -1935,8 +1935,7 @@
            map_filter (try (specialize_helper t)) types
          else
            [t])
-        |> tag_list 1
-        |> map (fn (k, t) => ((dub needs_sound j k, (Global, status)), t))
+        |> map_index (fn (k, t) => ((dub needs_sound j (k + 1), (Global, status)), t))
       fun make_facts type_enc = map_filter (make_fact ctxt format type_enc false)
       val sound = is_type_enc_sound type_enc
       val could_specialize = could_specialize_helpers type_enc