src/HOL/Tools/Sledgehammer/sledgehammer_fact.ML
changeset 48299 5e5c6616f0fe
parent 48298 f5b160f9859e
child 48327 568b3193e53e
--- a/src/HOL/Tools/Sledgehammer/sledgehammer_fact.ML	Wed Jul 18 08:44:03 2012 +0200
+++ b/src/HOL/Tools/Sledgehammer/sledgehammer_fact.ML	Wed Jul 18 08:44:03 2012 +0200
@@ -28,10 +28,10 @@
     Proof.context -> term list -> term -> (((unit -> string) * 'a) * thm) list
     -> (((unit -> string) * 'a) * thm) list
   val maybe_filter_no_atps : Proof.context -> ('a * thm) list -> ('a * thm) list
-  val all_facts_of : theory -> fact list
+  val all_facts_of : theory -> status Termtab.table -> fact list
   val nearly_all_facts :
-    Proof.context -> bool -> fact_override -> thm list -> term list -> term
-    -> fact list
+    Proof.context -> bool -> fact_override -> unit Symtab.table
+    -> status Termtab.table -> thm list -> term list -> term -> fact list
 end;
 
 structure Sledgehammer_Fact : SLEDGEHAMMER_FACT =
@@ -417,14 +417,14 @@
              |> op @
   end
 
-fun all_facts_of thy =
+fun all_facts_of thy css_table =
   let val ctxt = Proof_Context.init_global thy in
-    all_facts ctxt false Symtab.empty true [] []
-              (clasimpset_rule_table_of ctxt)
+    all_facts ctxt false Symtab.empty true [] [] css_table
     |> rev (* try to restore the original order of facts, for MaSh *)
   end
 
-fun nearly_all_facts ctxt ho_atp {add, del, only} chained_ths hyp_ts concl_t =
+fun nearly_all_facts ctxt ho_atp {add, del, only} reserved css_table chained_ths
+                     hyp_ts concl_t =
   if only andalso null add then
     []
   else
@@ -432,8 +432,6 @@
       val chained_ths =
         chained_ths
         |> maps (fn th => insert Thm.eq_thm_prop (zero_var_indexes th) [th])
-      val reserved = reserved_isar_keyword_table ()
-      val css_table = clasimpset_rule_table_of ctxt
     in
       (if only then
          maps (map (fn ((name, stature), th) => ((K name, stature), th))