src/HOL/Tools/Sledgehammer/sledgehammer_mepo.ML
changeset 53127 60801776d8af
parent 51998 f732a674db1b
child 53158 4b9df3461eda
equal deleted inserted replaced
53126:f4d2c64c7aa8 53127:60801776d8af
    14   type relevance_fudge = Sledgehammer_Provers.relevance_fudge
    14   type relevance_fudge = Sledgehammer_Provers.relevance_fudge
    15 
    15 
    16   val trace : bool Config.T
    16   val trace : bool Config.T
    17   val pseudo_abs_name : string
    17   val pseudo_abs_name : string
    18   val pseudo_skolem_prefix : string
    18   val pseudo_skolem_prefix : string
    19   val const_names_in_fact :
       
    20     theory -> (string * typ -> term list -> bool * term list) -> term
       
    21     -> string list
       
    22   val mepo_suggested_facts :
    19   val mepo_suggested_facts :
    23     Proof.context -> params -> string -> int -> relevance_fudge option
    20     Proof.context -> params -> string -> int -> relevance_fudge option
    24     -> term list -> term -> raw_fact list -> fact list
    21     -> term list -> term -> raw_fact list -> fact list
    25 end;
    22 end;
    26 
    23 
   179 
   176 
   180 fun pconsts_in_fact thy is_built_in_const t =
   177 fun pconsts_in_fact thy is_built_in_const t =
   181   Symtab.fold (fn (s, pss) => fold (cons o pair s) pss)
   178   Symtab.fold (fn (s, pss) => fold (cons o pair s) pss)
   182               (Symtab.empty |> add_pconsts_in_term thy is_built_in_const true
   179               (Symtab.empty |> add_pconsts_in_term thy is_built_in_const true
   183                                                    (SOME true) t) []
   180                                                    (SOME true) t) []
   184 
       
   185 val const_names_in_fact = map fst ooo pconsts_in_fact
       
   186 
   181 
   187 (* Inserts a dummy "constant" referring to the theory name, so that relevance
   182 (* Inserts a dummy "constant" referring to the theory name, so that relevance
   188    takes the given theory into account. *)
   183    takes the given theory into account. *)
   189 fun theory_constify ({theory_const_rel_weight, theory_const_irrel_weight, ...}
   184 fun theory_constify ({theory_const_rel_weight, theory_const_irrel_weight, ...}
   190                      : relevance_fudge) thy_name t =
   185                      : relevance_fudge) thy_name t =