src/HOL/Tools/Sledgehammer/sledgehammer_prover_atp.ML
changeset 57735 056a55b44ec7
parent 57734 18bb3e1ff6f6
child 57738 25d1495e6641
equal deleted inserted replaced
57734:18bb3e1ff6f6 57735:056a55b44ec7
   133 
   133 
   134 fun run_atp mode name
   134 fun run_atp mode name
   135     ({debug, verbose, overlord, type_enc, strict, lam_trans, uncurried_aliases, fact_filter,
   135     ({debug, verbose, overlord, type_enc, strict, lam_trans, uncurried_aliases, fact_filter,
   136      max_facts, max_mono_iters, max_new_mono_instances, isar_proofs, compress, try0, smt_proofs,
   136      max_facts, max_mono_iters, max_new_mono_instances, isar_proofs, compress, try0, smt_proofs,
   137      slice, minimize, timeout, preplay_timeout, ...} : params)
   137      slice, minimize, timeout, preplay_timeout, ...} : params)
   138     minimize_command
       
   139     ({comment, state, goal, subgoal, subgoal_count, factss, ...} : prover_problem) =
   138     ({comment, state, goal, subgoal, subgoal_count, factss, ...} : prover_problem) =
   140   let
   139   let
   141     val thy = Proof.theory_of state
   140     val thy = Proof.theory_of state
   142     val ctxt = Proof.context_of state
   141     val ctxt = Proof.context_of state
   143 
   142 
   386                     (verbose, (metis_type_enc, metis_lam_trans), preplay_timeout, compress, try0,
   385                     (verbose, (metis_type_enc, metis_lam_trans), preplay_timeout, compress, try0,
   387                      minimize, atp_proof, goal)
   386                      minimize, atp_proof, goal)
   388                   end
   387                   end
   389 
   388 
   390                 val one_line_params =
   389                 val one_line_params =
   391                   (preplay, proof_banner mode name, used_facts, minimize_command [] name, subgoal,
   390                   (preplay, proof_banner mode name, used_facts, subgoal, subgoal_count)
   392                    subgoal_count)
       
   393                 val num_chained = length (#facts (Proof.goal state))
   391                 val num_chained = length (#facts (Proof.goal state))
   394               in
   392               in
   395                 proof_text ctxt debug isar_proofs smt_proofs isar_params num_chained one_line_params
   393                 proof_text ctxt debug isar_proofs smt_proofs isar_params num_chained one_line_params
   396               end,
   394               end,
   397            (if verbose then "\nATP real CPU time: " ^ string_of_time run_time ^ "." else "") ^
   395            (if verbose then "\nATP real CPU time: " ^ string_of_time run_time ^ "." else "") ^