src/HOL/Tools/Sledgehammer/sledgehammer.ML
changeset 39370 f8292d3020db
parent 39366 f58fbb959826
child 39371 6549ca3671f3
equal deleted inserted replaced
39369:8e585c7d418a 39370:f8292d3020db
   420              Pretty.chunks [Pretty.str "", Pretty.mark Markup.hilite
   420              Pretty.chunks [Pretty.str "", Pretty.mark Markup.hilite
   421                  (Pretty.str message)]))
   421                  (Pretty.str message)]))
   422       end
   422       end
   423     else if blocking then
   423     else if blocking then
   424       let val (success, message) = TimeLimit.timeLimit timeout go () in
   424       let val (success, message) = TimeLimit.timeLimit timeout go () in
   425         priority (desc ^ "\n" ^ message); (success, state)
   425         List.app priority
       
   426                  (Async_Manager.break_into_chunks [desc ^ "\n" ^ message]);
       
   427         (success, state)
   426       end
   428       end
   427     else
   429     else
   428       (Async_Manager.launch das_Tool birth_time death_time desc (snd o go);
   430       (Async_Manager.launch das_Tool birth_time death_time desc (snd o go);
   429        (false, state))
   431        (false, state))
   430   end
   432   end
   470             fold (fn prover => fn (true, state) => (true, state)
   472             fold (fn prover => fn (true, state) => (true, state)
   471                                 | (false, _) => run_prover prover)
   473                                 | (false, _) => run_prover prover)
   472                  provers (false, state)
   474                  provers (false, state)
   473           else
   475           else
   474             (if blocking then Par_List.map else map) run_prover provers
   476             (if blocking then Par_List.map else map) run_prover provers
   475             |> tap (fn _ =>
       
   476                        if verbose then
       
   477                          priority ("Total time: " ^
       
   478                                    signed_string_of_int (Time.toMilliseconds
       
   479                                        (Timer.checkRealTimer timer)) ^ " ms.")
       
   480                        else
       
   481                          ())
       
   482             |> exists fst |> rpair state
   477             |> exists fst |> rpair state
   483         end
   478         end
   484     in if blocking then go () else Future.fork (tap go) |> K (false, state) end
   479     in if blocking then go () else Future.fork (tap go) |> K (false, state) end
   485 
   480 
   486 val setup =
   481 val setup =