133 fun set_file_name (SOME (dir, keep_probs, keep_proofs)) = |
133 fun set_file_name (SOME (dir, keep_probs, keep_proofs)) = |
134 let |
134 let |
135 val filename = "prob_" ^ |
135 val filename = "prob_" ^ |
136 StringCvt.padLeft #"0" 5 (str0 (Position.line_of pos)) ^ "_" ^ |
136 StringCvt.padLeft #"0" 5 (str0 (Position.line_of pos)) ^ "_" ^ |
137 StringCvt.padLeft #"0" 6 (str0 (Position.offset_of pos)) |
137 StringCvt.padLeft #"0" 6 (str0 (Position.offset_of pos)) |
|
138 fun mk_smt_file () = dir ^ "/" ^ filename ^ "__" ^ serial_string () |
138 in |
139 in |
139 Config.put Sledgehammer_Prover_ATP.atp_problem_prefix (filename ^ "__") |
140 Config.put Sledgehammer_Prover_ATP.atp_problem_prefix (filename ^ "__") |
140 #> (keep_probs ? Config.put Sledgehammer_Prover_ATP.atp_problem_dest_dir dir) |
141 #> (keep_probs ? Config.put Sledgehammer_Prover_ATP.atp_problem_dest_dir dir) |
141 #> (keep_proofs ? Config.put Sledgehammer_Prover_ATP.atp_proof_dest_dir dir) |
142 #> (keep_proofs ? Config.put Sledgehammer_Prover_ATP.atp_proof_dest_dir dir) |
142 #> (keep_probs ? Config.put SMT_Config.problem_dest_file |
143 #> (keep_probs ? Config.put SMT_Config.problem_dest_file (mk_smt_file ())) |
143 (dir ^ "/" ^ filename ^ "__" ^ serial_string ())) |
144 #> (keep_proofs ? Config.put SMT_Config.proof_dest_file (mk_smt_file ())) |
144 #> (keep_proofs ? Config.put Sledgehammer_Prover_ATP.atp_proof_dest_dir dir) |
|
145 #> Config.put SMT_Config.proof_dest_file |
|
146 (dir ^ "/" ^ filename ^ "__" ^ serial_string ()) |
|
147 end |
145 end |
148 | set_file_name NONE = I |
146 | set_file_name NONE = I |
149 val state' = state |
147 val state' = state |
150 |> Proof.map_context (set_file_name keep) |
148 |> Proof.map_context (set_file_name keep) |
151 |
149 |