src/HOL/Tools/ATP/atp_systems.ML
changeset 59577 012c6165bbd2
parent 59070 c67c0a729c2d
child 62519 a564458f94db
equal deleted inserted replaced
59576:913c4afb0388 59577:012c6165bbd2
   612 val dummy_thf = (dummy_thfN, fn () => dummy_thf_config)
   612 val dummy_thf = (dummy_thfN, fn () => dummy_thf_config)
   613 
   613 
   614 val dummy_thf_ml_config = dummy_config Hypothesis dummy_thf_format "ml_poly_native_higher" false
   614 val dummy_thf_ml_config = dummy_config Hypothesis dummy_thf_format "ml_poly_native_higher" false
   615 val dummy_thf_ml = (dummy_thf_mlN, fn () => dummy_thf_ml_config)
   615 val dummy_thf_ml = (dummy_thf_mlN, fn () => dummy_thf_ml_config)
   616 
   616 
   617 val spass_pirate_format = DFG Polymorphic
   617 val pirate_format = DFG Polymorphic
   618 val remote_spass_pirate_config : atp_config =
   618 val remote_pirate_config : atp_config =
   619   {exec = K (["ISABELLE_ATP"], ["scripts/remote_spass_pirate"]),
   619   {exec = K (["ISABELLE_ATP"], ["scripts/remote_pirate"]),
   620    arguments = fn _ => fn _ => fn _ => fn timeout => fn file_name => fn _ =>
   620    arguments = fn _ => fn _ => fn _ => fn timeout => fn file_name => fn _ =>
   621      string_of_int (to_secs 1 timeout) ^ " " ^ file_name,
   621      string_of_int (to_secs 1 timeout) ^ " " ^ file_name,
   622    proof_delims = [("Involved clauses:", "Involved clauses:")],
   622    proof_delims = [("Involved clauses:", "Involved clauses:")],
   623    known_failures = known_szs_status_failures,
   623    known_failures = known_szs_status_failures,
   624    prem_role = #prem_role spass_config,
   624    prem_role = #prem_role spass_config,
   625    best_slices = K [(1.0, (((200, ""), spass_pirate_format, "tc_native", combsN, true), ""))],
   625    best_slices = K [(1.0, (((200, ""), pirate_format, "tc_native", combsN, true), ""))],
   626    best_max_mono_iters = default_max_mono_iters,
   626    best_max_mono_iters = default_max_mono_iters,
   627    best_max_new_mono_instances = default_max_new_mono_instances}
   627    best_max_new_mono_instances = default_max_new_mono_instances}
   628 val remote_spass_pirate = (remote_prefix ^ spass_pirateN, fn () => remote_spass_pirate_config)
   628 val remote_pirate = (remote_prefix ^ pirateN, fn () => remote_pirate_config)
   629 
   629 
   630 
   630 
   631 (* Remote ATP invocation via SystemOnTPTP *)
   631 (* Remote ATP invocation via SystemOnTPTP *)
   632 
   632 
   633 val remote_systems = Synchronized.var "atp_remote_systems" ([] : string list)
   633 val remote_systems = Synchronized.var "atp_remote_systems" ([] : string list)
   762 
   762 
   763 fun effective_term_order ctxt atp =
   763 fun effective_term_order ctxt atp =
   764   let val ord = Config.get ctxt term_order in
   764   let val ord = Config.get ctxt term_order in
   765     if ord = smartN then
   765     if ord = smartN then
   766       {is_lpo = false, gen_weights = (atp = spassN), gen_prec = (atp = spassN),
   766       {is_lpo = false, gen_weights = (atp = spassN), gen_prec = (atp = spassN),
   767        gen_simp = String.isSuffix spass_pirateN atp}
   767        gen_simp = String.isSuffix pirateN atp}
   768     else
   768     else
   769       let val is_lpo = String.isSubstring lpoN ord in
   769       let val is_lpo = String.isSubstring lpoN ord in
   770         {is_lpo = is_lpo, gen_weights = not is_lpo andalso String.isSubstring xweightsN ord,
   770         {is_lpo = is_lpo, gen_weights = not is_lpo andalso String.isSubstring xweightsN ord,
   771          gen_prec = String.isSubstring xprecN ord, gen_simp = String.isSubstring xsimpN ord}
   771          gen_prec = String.isSubstring xprecN ord, gen_simp = String.isSubstring xsimpN ord}
   772       end
   772       end
   774 
   774 
   775 val atps =
   775 val atps =
   776   [agsyhol, alt_ergo, e, e_males, e_par, iprover, iprover_eq, leo2, satallax, spass, vampire,
   776   [agsyhol, alt_ergo, e, e_males, e_par, iprover, iprover_eq, leo2, satallax, spass, vampire,
   777    z3_tptp, zipperposition, dummy_thf, dummy_thf_ml, remote_agsyhol, remote_e, remote_e_sine,
   777    z3_tptp, zipperposition, dummy_thf, dummy_thf_ml, remote_agsyhol, remote_e, remote_e_sine,
   778    remote_e_tofof, remote_iprover, remote_iprover_eq, remote_leo2, remote_satallax, remote_vampire,
   778    remote_e_tofof, remote_iprover, remote_iprover_eq, remote_leo2, remote_satallax, remote_vampire,
   779    remote_snark, remote_spass_pirate, remote_waldmeister, remote_waldmeister_new]
   779    remote_snark, remote_pirate, remote_waldmeister, remote_waldmeister_new]
   780 
   780 
   781 val _ = Theory.setup (fold add_atp atps)
   781 val _ = Theory.setup (fold add_atp atps)
   782 
   782 
   783 end;
   783 end;