10 type 'a proof = 'a ATP_Proof.proof |
10 type 'a proof = 'a ATP_Proof.proof |
11 type stature = ATP_Problem_Generate.stature |
11 type stature = ATP_Problem_Generate.stature |
12 type one_line_params = Sledgehammer_Print.one_line_params |
12 type one_line_params = Sledgehammer_Print.one_line_params |
13 |
13 |
14 type isar_params = |
14 type isar_params = |
15 bool * bool * Time.time option * bool * real * int * real |
15 bool * bool * Time.time option * bool * real * int * real * bool * bool |
16 * string Symtab.table * (string * stature) list vector |
16 * string Symtab.table * (string * stature) list vector |
17 * (string * term) list * int Symtab.table * string proof * thm |
17 * (string * term) list * int Symtab.table * string proof * thm |
18 |
18 |
19 val lam_trans_of_atp_proof : string proof -> string -> string |
19 val lam_trans_of_atp_proof : string proof -> string -> string |
20 val is_typed_helper_used_in_atp_proof : string proof -> bool |
20 val is_typed_helper_used_in_atp_proof : string proof -> bool |
407 chain_steps (try (List.last #> fst) assms) steps) |
407 chain_steps (try (List.last #> fst) assms) steps) |
408 and chain_proofs proofs = map (chain_proof) proofs |
408 and chain_proofs proofs = map (chain_proof) proofs |
409 in chain_proof end |
409 in chain_proof end |
410 |
410 |
411 type isar_params = |
411 type isar_params = |
412 bool * bool * Time.time option * bool * real * int * real |
412 bool * bool * Time.time option * bool * real * int * real * bool * bool |
413 * string Symtab.table * (string * stature) list vector |
413 * string Symtab.table * (string * stature) list vector |
414 * (string * term) list * int Symtab.table * string proof * thm |
414 * (string * term) list * int Symtab.table * string proof * thm |
415 |
415 |
416 fun isar_proof_text ctxt isar_proofs |
416 fun isar_proof_text ctxt isar_proofs |
417 (debug, verbose, preplay_timeout, preplay_trace, isar_compress, |
417 (debug, verbose, preplay_timeout, preplay_trace, isar_compress, |
418 isar_compress_degree, merge_timeout_slack, pool, fact_names, lifted, |
418 isar_compress_degree, merge_timeout_slack, isar_try0, isar_minimize, pool, |
419 sym_tab, atp_proof, goal) |
419 fact_names, lifted, sym_tab, atp_proof, goal) |
420 (one_line_params as (_, _, _, _, subgoal, subgoal_count)) = |
420 (one_line_params as (_, _, _, _, subgoal, subgoal_count)) = |
421 let |
421 let |
422 val (params, hyp_ts, concl_t) = strip_subgoal goal subgoal ctxt |
422 val (params, hyp_ts, concl_t) = strip_subgoal goal subgoal ctxt |
423 val (_, ctxt) = |
423 val (_, ctxt) = |
424 params |
424 params |
592 isar_proof |
592 isar_proof |
593 |> compress_proof |
593 |> compress_proof |
594 (if isar_proofs = SOME true then isar_compress else 1000.0) |
594 (if isar_proofs = SOME true then isar_compress else 1000.0) |
595 (if isar_proofs = SOME true then isar_compress_degree else 100) |
595 (if isar_proofs = SOME true then isar_compress_degree else 100) |
596 merge_timeout_slack preplay_interface |
596 merge_timeout_slack preplay_interface |
597 |> try0 preplay_timeout preplay_interface |
597 |> isar_try0 ? try0 preplay_timeout preplay_interface |
598 |> minimize_dependencies_and_remove_unrefed_steps preplay_interface |
598 |> minimize_dependencies_and_remove_unrefed_steps isar_minimize |
|
599 preplay_interface |
599 |> `overall_preplay_stats |
600 |> `overall_preplay_stats |
600 ||> clean_up_labels_in_proof |
601 ||> clean_up_labels_in_proof |
601 val isar_text = string_of_proof ctxt type_enc lam_trans subgoal |
602 val isar_text = string_of_proof ctxt type_enc lam_trans subgoal |
602 subgoal_count isar_proof |
603 subgoal_count isar_proof |
603 in |
604 in |