src/HOL/Tools/ATP/atp_reconstruct.ML
changeset 43168 467d5b34e1f5
parent 43166 68e3cd19fee8
child 43176 29a3a1a7794d
equal deleted inserted replaced
43167:839f599bc7ed 43168:467d5b34e1f5
    15   type type_sys = ATP_Translate.type_sys
    15   type type_sys = ATP_Translate.type_sys
    16 
    16 
    17   datatype reconstructor =
    17   datatype reconstructor =
    18     Metis |
    18     Metis |
    19     MetisFT |
    19     MetisFT |
       
    20     MetisX |
    20     SMT of string
    21     SMT of string
    21 
    22 
    22   datatype play =
    23   datatype play =
    23     Played of reconstructor * Time.time |
    24     Played of reconstructor * Time.time |
    24     Trust_Playable of reconstructor * Time.time option|
    25     Trust_Playable of reconstructor * Time.time option|
    66 open ATP_Translate
    67 open ATP_Translate
    67 
    68 
    68 datatype reconstructor =
    69 datatype reconstructor =
    69   Metis |
    70   Metis |
    70   MetisFT |
    71   MetisFT |
       
    72   MetisX |
    71   SMT of string
    73   SMT of string
    72 
    74 
    73 datatype play =
    75 datatype play =
    74   Played of reconstructor * Time.time |
    76   Played of reconstructor * Time.time |
    75   Trust_Playable of reconstructor * Time.time option |
    77   Trust_Playable of reconstructor * Time.time option |
   251 
   253 
   252 (** Soft-core proof reconstruction: Metis one-liner **)
   254 (** Soft-core proof reconstruction: Metis one-liner **)
   253 
   255 
   254 fun reconstructor_name Metis = "metis"
   256 fun reconstructor_name Metis = "metis"
   255   | reconstructor_name MetisFT = "metisFT"
   257   | reconstructor_name MetisFT = "metisFT"
       
   258   | reconstructor_name MetisX = "metisX"
   256   | reconstructor_name (SMT _) = "smt"
   259   | reconstructor_name (SMT _) = "smt"
   257 
   260 
   258 fun reconstructor_settings (SMT settings) = settings
   261 fun reconstructor_settings (SMT settings) = settings
   259   | reconstructor_settings _ = ""
   262   | reconstructor_settings _ = ""
   260 
   263 
  1021       (if member (op =) qs Then then
  1024       (if member (op =) qs Then then
  1022          if member (op =) qs Show then "thus" else "hence"
  1025          if member (op =) qs Show then "thus" else "hence"
  1023        else
  1026        else
  1024          if member (op =) qs Show then "show" else "have")
  1027          if member (op =) qs Show then "show" else "have")
  1025     val do_term = maybe_quote o fix_print_mode (Syntax.string_of_term ctxt)
  1028     val do_term = maybe_quote o fix_print_mode (Syntax.string_of_term ctxt)
  1026     val reconstructor = if full_types then MetisFT else Metis
  1029     val reconstructor = if full_types then MetisX else Metis
  1027     fun do_facts (ls, ss) =
  1030     fun do_facts (ls, ss) =
  1028       reconstructor_command reconstructor 1 1
  1031       reconstructor_command reconstructor 1 1
  1029           (ls |> sort_distinct (prod_ord string_ord int_ord),
  1032           (ls |> sort_distinct (prod_ord string_ord int_ord),
  1030            ss |> sort_distinct string_ord)
  1033            ss |> sort_distinct string_ord)
  1031     and do_step ind (Fix xs) =
  1034     and do_step ind (Fix xs) =