shorten Sledgehammer output, as suggested by Andrei Popescu
authorblanchet
Thu, 22 May 2014 03:29:35 +0200
changeset 5839546000c075d07
parent 58394 ea5912e3b008
child 58396 fed0329ea8e2
shorten Sledgehammer output, as suggested by Andrei Popescu
src/Doc/Sledgehammer/document/root.tex
src/HOL/Tools/Sledgehammer/sledgehammer.ML
     1.1 --- a/src/Doc/Sledgehammer/document/root.tex	Thu May 22 03:29:35 2014 +0200
     1.2 +++ b/src/Doc/Sledgehammer/document/root.tex	Thu May 22 03:29:35 2014 +0200
     1.3 @@ -269,24 +269,19 @@
     1.4  
     1.5  \prew
     1.6  \slshape
     1.7 -Sledgehammer: ``\textit{e\/}'' on goal \\
     1.8 -$[a] = [b] \,\Longrightarrow\, a = b$ \\
     1.9 +Sledgehammer: ``\textit{e\/}'' \\
    1.10  Try this: \textbf{by} (\textit{metis last\_ConsL}) (64 ms). \\[3\smallskipamount]
    1.11  %
    1.12 -Sledgehammer: ``\textit{z3\/}'' on goal \\
    1.13 -$[a] = [b] \,\Longrightarrow\, a = b$ \\
    1.14 +Sledgehammer: ``\textit{z3\/}'' \\
    1.15  Try this: \textbf{by} (\textit{metis list.inject}) (20 ms). \\[3\smallskipamount]
    1.16  %
    1.17 -Sledgehammer: ``\textit{vampire\/}'' on goal \\
    1.18 -$[a] = [b] \,\Longrightarrow\, a = b$ \\
    1.19 +Sledgehammer: ``\textit{vampire\/}'' \\
    1.20  Try this: \textbf{by} (\textit{metis hd.simps}) (14 ms). \\[3\smallskipamount]
    1.21  %
    1.22 -Sledgehammer: ``\textit{spass\/}'' on goal \\
    1.23 -$[a] = [b] \,\Longrightarrow\, a = b$ \\
    1.24 +Sledgehammer: ``\textit{spass\/}'' \\
    1.25  Try this: \textbf{by} (\textit{metis list.inject}) (17 ms). \\[3\smallskipamount]
    1.26  %
    1.27 -Sledgehammer: ``\textit{remote\_e\_sine\/}'' on goal \\
    1.28 -$[a] = [b] \,\Longrightarrow\, a = b$ \\
    1.29 +Sledgehammer: ``\textit{remote\_e\_sine\/}'' \\
    1.30  Try this: \textbf{by} (\textit{metis hd.simps}) (18 ms).
    1.31  \postw
    1.32  
     2.1 --- a/src/HOL/Tools/Sledgehammer/sledgehammer.ML	Thu May 22 03:29:35 2014 +0200
     2.2 +++ b/src/HOL/Tools/Sledgehammer/sledgehammer.ML	Thu May 22 03:29:35 2014 +0200
     2.3 @@ -54,15 +54,9 @@
     2.4         ordered_outcome_codes
     2.5    |> the_default unknownN
     2.6  
     2.7 -fun prover_description ctxt ({verbose, blocking, ...} : params) name num_facts i n goal =
     2.8 +fun prover_description verbose name num_facts =
     2.9    (quote name,
    2.10 -   (if verbose then
    2.11 -      " with " ^ string_of_int num_facts ^ " fact" ^ plural_s num_facts
    2.12 -    else
    2.13 -      "") ^
    2.14 -   " on " ^ (if n = 1 then "goal" else "subgoal " ^ string_of_int i) ^
    2.15 -   (if blocking then "."
    2.16 -    else "\n" ^ Syntax.string_of_term ctxt (Thm.term_of (Thm.cprem_of goal i))))
    2.17 +   if verbose then " with " ^ string_of_int num_facts ^ " fact" ^ plural_s num_facts else "")
    2.18  
    2.19  fun launch_prover (params as {debug, verbose, spy, blocking, max_facts, timeout, expect, ...}) mode
    2.20      output_result minimize_command only learn
    2.21 @@ -77,8 +71,6 @@
    2.22      val max_facts = max_facts |> the_default (default_max_facts_of_prover ctxt name)
    2.23      val num_facts = length facts |> not only ? Integer.min max_facts
    2.24  
    2.25 -    fun desc () = prover_description ctxt params name num_facts subgoal subgoal_count goal
    2.26 -
    2.27      val problem =
    2.28        {comment = comment, state = state, goal = goal, subgoal = subgoal,
    2.29         subgoal_count = subgoal_count,
    2.30 @@ -195,7 +187,8 @@
    2.31              |> List.app Output.urgent_message
    2.32        in (outcome_code, state) end
    2.33      else
    2.34 -      (Async_Manager.thread SledgehammerN birth_time death_time (desc ())
    2.35 +      (Async_Manager.thread SledgehammerN birth_time death_time
    2.36 +         (prover_description verbose name num_facts)
    2.37           ((fn (outcome_code, message) => (verbose orelse outcome_code = someN, message ())) o go);
    2.38         (unknownN, state))
    2.39    end