84 fun one_line_proof_text num_chained |
84 fun one_line_proof_text num_chained |
85 (preplay, banner, used_facts, minimize_command, subgoal, subgoal_count) = |
85 (preplay, banner, used_facts, minimize_command, subgoal, subgoal_count) = |
86 let |
86 let |
87 val (chained, extra) = split_used_facts used_facts |
87 val (chained, extra) = split_used_facts used_facts |
88 val (failed, reconstr, ext_time) = |
88 val (failed, reconstr, ext_time) = |
89 case preplay of |
89 (case preplay of |
90 Played (reconstr, time) => (false, reconstr, (SOME (false, time))) |
90 Played (reconstr, time) => (false, reconstr, (SOME (false, time))) |
91 | Play_Timed_Out (reconstr, time) => |
91 | Play_Timed_Out (reconstr, time) => |
92 (false, reconstr, |
92 (false, reconstr, if time = Time.zeroTime then NONE else SOME (true, time)) |
93 (case time of |
93 | Play_Failed reconstr => (true, reconstr, NONE)) |
94 NONE => NONE |
|
95 | SOME time => if time = Time.zeroTime then NONE else SOME (true, time))) |
|
96 | Play_Failed reconstr => (true, reconstr, NONE) |
|
97 val try_line = |
94 val try_line = |
98 ([], map fst extra) |
95 ([], map fst extra) |
99 |> reconstructor_command reconstr subgoal subgoal_count (map fst chained) num_chained |
96 |> reconstructor_command reconstr subgoal subgoal_count (map fst chained) num_chained |
100 |> (if failed then |
97 |> (if failed then |
101 enclose "One-line proof reconstruction failed: " |
98 enclose "One-line proof reconstruction failed: " |