equal
deleted
inserted
replaced
35 |
35 |
36 val is_proof_method_direct : proof_method -> bool |
36 val is_proof_method_direct : proof_method -> bool |
37 val proof_method_distinguishes_chained_and_direct : proof_method -> bool |
37 val proof_method_distinguishes_chained_and_direct : proof_method -> bool |
38 val string_of_proof_method : Proof.context -> string list -> proof_method -> string |
38 val string_of_proof_method : Proof.context -> string list -> proof_method -> string |
39 val tac_of_proof_method : Proof.context -> thm list * thm list -> proof_method -> int -> tactic |
39 val tac_of_proof_method : Proof.context -> thm list * thm list -> proof_method -> int -> tactic |
40 val thms_influence_proof_method : Proof.context -> proof_method -> thm list -> bool |
|
41 val string_of_play_outcome : play_outcome -> string |
40 val string_of_play_outcome : play_outcome -> string |
42 val play_outcome_ord : play_outcome * play_outcome -> order |
41 val play_outcome_ord : play_outcome * play_outcome -> order |
43 val one_line_proof_text : Proof.context -> int -> one_line_params -> string |
42 val one_line_proof_text : Proof.context -> int -> one_line_params -> string |
44 end; |
43 end; |
45 |
44 |
139 | Linarith_Method => |
138 | Linarith_Method => |
140 let val ctxt = Config.put Lin_Arith.verbose false ctxt in Lin_Arith.tac ctxt end |
139 let val ctxt = Config.put Lin_Arith.verbose false ctxt in Lin_Arith.tac ctxt end |
141 | Presburger_Method => Cooper.tac true [] [] ctxt |
140 | Presburger_Method => Cooper.tac true [] [] ctxt |
142 | Algebra_Method => Groebner.algebra_tac [] [] ctxt)) |
141 | Algebra_Method => Groebner.algebra_tac [] [] ctxt)) |
143 |
142 |
144 val simp_based_methods = [Simp_Method, Simp_Size_Method, Auto_Method, Force_Method, Moura_Method] |
|
145 |
|
146 fun thms_influence_proof_method ctxt meth ths = |
|
147 not (member (op =) simp_based_methods meth) orelse |
|
148 (* unfortunate pointer comparison -- but it's always safe to consider a theorem useful *) |
|
149 not (pointer_eq (ctxt addsimps ths, ctxt)) |
|
150 |
|
151 fun string_of_play_outcome (Played time) = string_of_ext_time (false, time) |
143 fun string_of_play_outcome (Played time) = string_of_ext_time (false, time) |
152 | string_of_play_outcome (Play_Timed_Out time) = |
144 | string_of_play_outcome (Play_Timed_Out time) = |
153 if time = Time.zeroTime then "" else string_of_ext_time (true, time) ^ ", timed out" |
145 if time = Time.zeroTime then "" else string_of_ext_time (true, time) ^ ", timed out" |
154 | string_of_play_outcome Play_Failed = "failed" |
146 | string_of_play_outcome Play_Failed = "failed" |
155 |
147 |