src/HOL/Tools/Sledgehammer/sledgehammer_atp_reconstruct.ML
changeset 42595 13c7194a896a
parent 42593 f9d7f1331a00
child 42606 0c76cf483899
equal deleted inserted replaced
42594:62398fdbb528 42595:13c7194a896a
   194   banner ^ ": " ^ Markup.markup Markup.sendback command ^ "."
   194   banner ^ ": " ^ Markup.markup Markup.sendback command ^ "."
   195 fun using_labels [] = ""
   195 fun using_labels [] = ""
   196   | using_labels ls =
   196   | using_labels ls =
   197     "using " ^ space_implode " " (map string_for_label ls) ^ " "
   197     "using " ^ space_implode " " (map string_for_label ls) ^ " "
   198 fun metis_name full_types = if full_types then "metisFT" else "metis"
   198 fun metis_name full_types = if full_types then "metisFT" else "metis"
   199 fun metis_call full_types ss = command_call "metis" ss
   199 fun metis_call full_types ss = command_call (metis_name full_types) ss
   200 fun metis_command full_types i n (ls, ss) =
   200 fun metis_command full_types i n (ls, ss) =
   201   using_labels ls ^ apply_on_subgoal "" i n ^ metis_call full_types ss
   201   using_labels ls ^ apply_on_subgoal "" i n ^ metis_call full_types ss
   202 fun minimize_line _ [] = ""
   202 fun minimize_line _ [] = ""
   203   | minimize_line minimize_command ss =
   203   | minimize_line minimize_command ss =
   204     case minimize_command ss of
   204     case minimize_command ss of
   970            |> redirect_proof hyp_ts concl_t
   970            |> redirect_proof hyp_ts concl_t
   971            |> kill_duplicate_assumptions_in_proof
   971            |> kill_duplicate_assumptions_in_proof
   972            |> then_chain_proof
   972            |> then_chain_proof
   973            |> kill_useless_labels_in_proof
   973            |> kill_useless_labels_in_proof
   974            |> relabel_proof
   974            |> relabel_proof
   975            |> string_for_proof ctxt type_sys i n of
   975            |> string_for_proof ctxt (is_type_sys_fairly_sound type_sys) i n of
   976         "" => "\nNo structured proof available (proof too short)."
   976         "" => "\nNo structured proof available (proof too short)."
   977       | proof => "\n\nStructured proof:\n" ^ Markup.markup Markup.sendback proof
   977       | proof => "\n\nStructured proof:\n" ^ Markup.markup Markup.sendback proof
   978     val isar_proof =
   978     val isar_proof =
   979       if debug then
   979       if debug then
   980         isar_proof_for ()
   980         isar_proof_for ()