1 (* Title: HOL/TPTP/MaSh_Export.thy
2 Author: Jasmin Blanchette, TU Muenchen
5 header {* MaSh Exporter *}
11 ML_file "mash_export.ML"
14 [provers = spass, max_facts = 32, strict, dont_slice, type_enc = mono_native,
15 lam_trans = lifting, timeout = 2, dont_preplay, minimize]
17 declare [[sledgehammer_instantiate_inducts = false]]
19 hide_fact (open) HOL.ext
22 Multithreading.max_threads_value ()
30 val do_it = false (* switch to "true" to generate the files *)
31 val thys = [@{theory List}]
32 val params as {provers, ...} = Sledgehammer_Isar.default_params @{context} []
33 val prover = hd provers
37 val max_suggestions = 1024
39 val prefix = "/tmp/" ^ dir ^ "/"
44 Isabelle_System.mkdir (Path.explode prefix)
51 generate_accessibility @{context} thys linearize
52 (prefix ^ "mash_accessibility")
59 generate_features @{context} prover thys (prefix ^ "mash_features")
66 generate_isar_dependencies @{context} range thys linearize
67 (prefix ^ "mash_dependencies")
74 generate_isar_commands @{context} prover (range, step) thys linearize
75 max_suggestions (prefix ^ "mash_commands")
82 generate_mepo_suggestions @{context} params (range, step) thys linearize
83 max_suggestions (prefix ^ "mepo_suggestions")
90 generate_mesh_suggestions max_suggestions (prefix ^ "mash_suggestions")
91 (prefix ^ "mepo_suggestions") (prefix ^ "mesh_suggestions")
98 generate_prover_dependencies @{context} params range thys linearize
99 (prefix ^ "mash_prover_dependencies")
106 generate_prover_commands @{context} params (range, step) thys linearize
107 max_suggestions (prefix ^ "mash_prover_commands")
114 generate_mesh_suggestions max_suggestions (prefix ^ "mash_prover_suggestions")
115 (prefix ^ "mepo_suggestions") (prefix ^ "mesh_prover_suggestions")