src/HOL/Tools/Sledgehammer/sledgehammer_isar.ML
changeset 48383 df75b2d7e26a
parent 48381 1b7d798460bb
child 48384 83dc102041e6
equal deleted inserted replaced
48382:641af72b0059 48383:df75b2d7e26a
    33 val minN = "min"
    33 val minN = "min"
    34 val messagesN = "messages"
    34 val messagesN = "messages"
    35 val supported_proversN = "supported_provers"
    35 val supported_proversN = "supported_provers"
    36 val kill_proversN = "kill_provers"
    36 val kill_proversN = "kill_provers"
    37 val running_proversN = "running_provers"
    37 val running_proversN = "running_provers"
       
    38 val unlearnN = "unlearn"
       
    39 val learnN = "learn"
       
    40 val relearnN = "relearn"
    38 val kill_learnersN = "kill_learners"
    41 val kill_learnersN = "kill_learners"
    39 val running_learnersN = "running_learners"
    42 val running_learnersN = "running_learners"
    40 val unlearnN = "unlearn"
       
    41 val refresh_tptpN = "refresh_tptp"
    43 val refresh_tptpN = "refresh_tptp"
    42 
    44 
    43 val auto = Unsynchronized.ref false
    45 val auto = Unsynchronized.ref false
    44 
    46 
    45 val _ =
    47 val _ =
   243                            [if timeout <= 0 then "none"
   245                            [if timeout <= 0 then "none"
   244                             else string_of_int timeout]
   246                             else string_of_int timeout]
   245                          end)]
   247                          end)]
   246   end
   248   end
   247 
   249 
   248 val infinity_time_in_secs = 60 * 60 * 24 * 365
   250 val the_timeout = the_default infinite_timeout
   249 val the_timeout = the_default (Time.fromSeconds infinity_time_in_secs)
       
   250 
   251 
   251 fun extract_params mode default_params override_params =
   252 fun extract_params mode default_params override_params =
   252   let
   253   let
   253     val raw_params = rev override_params @ rev default_params
   254     val raw_params = rev override_params @ rev default_params
   254     val lookup = Option.map implode_param o AList.lookup (op =) raw_params
   255     val lookup = Option.map implode_param o AList.lookup (op =) raw_params
   381       supported_provers ctxt
   382       supported_provers ctxt
   382     else if subcommand = kill_proversN then
   383     else if subcommand = kill_proversN then
   383       kill_provers ()
   384       kill_provers ()
   384     else if subcommand = running_proversN then
   385     else if subcommand = running_proversN then
   385       running_provers ()
   386       running_provers ()
       
   387     else if subcommand = unlearnN then
       
   388       mash_unlearn ctxt
       
   389     else if subcommand = learnN orelse subcommand = relearnN then
       
   390       (if subcommand = relearnN then mash_unlearn ctxt else ();
       
   391        mash_learn ctxt (get_params Normal ctxt
       
   392                                    (("verbose", ["true"]) :: override_params)))
   386     else if subcommand = kill_learnersN then
   393     else if subcommand = kill_learnersN then
   387       kill_learners ()
   394       kill_learners ()
   388     else if subcommand = running_learnersN then
   395     else if subcommand = running_learnersN then
   389       running_learners ()
   396       running_learners ()
   390     else if subcommand = unlearnN then
       
   391       mash_unlearn ctxt
       
   392     else if subcommand = refresh_tptpN then
   397     else if subcommand = refresh_tptpN then
   393       refresh_systems_on_tptp ()
   398       refresh_systems_on_tptp ()
   394     else
   399     else
   395       error ("Unknown subcommand: " ^ quote subcommand ^ ".")
   400       error ("Unknown subcommand: " ^ quote subcommand ^ ".")
   396   end
   401   end