equal
deleted
inserted
replaced
277 |
277 |
278 fun change_data id f = (Unsynchronized.change data (AList.map_entry (op =) id f); ()) |
278 fun change_data id f = (Unsynchronized.change data (AList.map_entry (op =) id f); ()) |
279 |
279 |
280 |
280 |
281 fun get_atp thy args = |
281 fun get_atp thy args = |
282 AList.lookup (op =) args proverK |
282 let |
283 |> the_default (hd (ATP_Manager.get_atps ())) (* FIXME partial *) |
283 fun default_atp_name () = hd (ATP_Manager.get_atps ()) |
284 |> (fn name => (name, the (ATP_Manager.get_prover thy name))) (* FIXME partial *) |
284 handle Empty => error "No ATP available." |
|
285 fun get_prover name = |
|
286 (case ATP_Manager.get_prover thy name of |
|
287 SOME prover => (name, prover) |
|
288 | NONE => error ("Bad ATP: " ^ quote name)) |
|
289 in |
|
290 (case AList.lookup (op =) args proverK of |
|
291 SOME name => get_prover name |
|
292 | NONE => get_prover (default_atp_name ())) |
|
293 end |
285 |
294 |
286 local |
295 local |
287 |
296 |
288 datatype sh_result = |
297 datatype sh_result = |
289 SH_OK of int * int * string list | |
298 SH_OK of int * int * string list | |