src/HOL/Tools/Sledgehammer/sledgehammer_prover_smt2.ML
changeset 57735 056a55b44ec7
parent 57734 18bb3e1ff6f6
child 57738 25d1495e6641
equal deleted inserted replaced
57734:18bb3e1ff6f6 57735:056a55b44ec7
   177     do_slice timeout 1 NONE Time.zeroTime
   177     do_slice timeout 1 NONE Time.zeroTime
   178   end
   178   end
   179 
   179 
   180 fun run_smt2_solver mode name (params as {debug, verbose, isar_proofs, compress, try0, smt_proofs,
   180 fun run_smt2_solver mode name (params as {debug, verbose, isar_proofs, compress, try0, smt_proofs,
   181       minimize, preplay_timeout, ...})
   181       minimize, preplay_timeout, ...})
   182     minimize_command ({state, goal, subgoal, subgoal_count, factss, ...} : prover_problem) =
   182     ({state, goal, subgoal, subgoal_count, factss, ...} : prover_problem) =
   183   let
   183   let
   184     val thy = Proof.theory_of state
   184     val thy = Proof.theory_of state
   185     val ctxt = Proof.context_of state
   185     val ctxt = Proof.context_of state
   186 
   186 
   187     val factss = map (apsnd (map (apsnd (Thm.transfer thy)))) factss
   187     val factss = map (apsnd (map (apsnd (Thm.transfer thy)))) factss
   207                fun isar_params () =
   207                fun isar_params () =
   208                  (verbose, (NONE, NONE), preplay_timeout, compress, try0, minimize, atp_proof (),
   208                  (verbose, (NONE, NONE), preplay_timeout, compress, try0, minimize, atp_proof (),
   209                   goal)
   209                   goal)
   210 
   210 
   211                val one_line_params =
   211                val one_line_params =
   212                  (preplay, proof_banner mode name, used_facts, minimize_command [] name, subgoal,
   212                  (preplay, proof_banner mode name, used_facts, subgoal, subgoal_count)
   213                   subgoal_count)
       
   214                val num_chained = length (#facts (Proof.goal state))
   213                val num_chained = length (#facts (Proof.goal state))
   215              in
   214              in
   216                proof_text ctxt debug isar_proofs smt_proofs isar_params num_chained one_line_params
   215                proof_text ctxt debug isar_proofs smt_proofs isar_params num_chained one_line_params
   217              end,
   216              end,
   218            if verbose then "\nSMT solver real CPU time: " ^ string_of_time run_time ^ "." else "")
   217            if verbose then "\nSMT solver real CPU time: " ^ string_of_time run_time ^ "." else "")