117 args, File.shell_path probfile] ^ " ; } 2>&1" |
117 args, File.shell_path probfile] ^ " ; } 2>&1" |
118 else |
118 else |
119 space_implode " " ["exec", File.shell_path cmd, args, |
119 space_implode " " ["exec", File.shell_path cmd, args, |
120 File.shell_path probfile, "2>&1"]) ^ |
120 File.shell_path probfile, "2>&1"]) ^ |
121 (if overlord then |
121 (if overlord then |
122 " | sed 's/,/, /g' | sed 's/\\([=|]\\)/ \\1 /g' | sed 's/! =/ !=/g' \ |
122 " | sed 's/,/, /g' \ |
123 \| sed 's/ / /g'" |
123 \| sed 's/\\([^!=]\\)\\([=|]\\)\\([^=]\\)/\\1 \\2 \\3/g' \ |
|
124 \| sed 's/! =/ !=/g' \ |
|
125 \| sed 's/ / /g' | sed 's/| |/||/g' \ |
|
126 \| sed 's/ = = =/===/g' \ |
|
127 \| sed 's/= = /== /g'" |
124 else |
128 else |
125 "") |
129 "") |
126 fun split_time s = |
130 fun split_time s = |
127 let |
131 let |
128 val split = String.tokens (fn c => str c = "\n"); |
132 val split = String.tokens (fn c => str c = "\n"); |
333 val remote_known_failures = |
337 val remote_known_failures = |
334 [(["Remote-script could not extract proof"], |
338 [(["Remote-script could not extract proof"], |
335 "Error: The remote ATP proof is ill-formed.")] |
339 "Error: The remote ATP proof is ill-formed.")] |
336 |
340 |
337 fun remote_prover_config prover_prefix args |
341 fun remote_prover_config prover_prefix args |
338 ({known_failures, max_new_clauses, prefers_theory_relevant, ...} |
342 ({known_failures, max_new_clauses, prefers_theory_relevant, |
|
343 supports_isar_proofs, ...} |
339 : prover_config) : prover_config = |
344 : prover_config) : prover_config = |
340 {command = Path.explode "$ISABELLE_ATP_MANAGER/SystemOnTPTP", |
345 {command = Path.explode "$ISABELLE_ATP_MANAGER/SystemOnTPTP", |
341 arguments = (fn timeout => |
346 arguments = (fn timeout => |
342 args ^ " -t " ^ string_of_int (generous_to_secs timeout) ^ " -s " ^ |
347 args ^ " -t " ^ string_of_int (generous_to_secs timeout) ^ " -s " ^ |
343 the_system prover_prefix), |
348 the_system prover_prefix), |
344 known_failures = remote_known_failures @ known_failures, |
349 known_failures = remote_known_failures @ known_failures, |
345 max_new_clauses = max_new_clauses, |
350 max_new_clauses = max_new_clauses, |
346 prefers_theory_relevant = prefers_theory_relevant, |
351 prefers_theory_relevant = prefers_theory_relevant, |
347 supports_isar_proofs = false} |
352 supports_isar_proofs = supports_isar_proofs} |
348 |
353 |
349 val remote_vampire = |
354 val remote_vampire = |
350 tptp_prover "remote_vampire" |
355 tptp_prover "remote_vampire" |
351 (remote_prover_config "Vampire---9" "" vampire_config) |
356 (remote_prover_config "Vampire---9" "" vampire_config) |
352 |
357 |