tuned signature;
authorwenzelm
Thu, 12 Dec 2013 17:34:50 +0100
changeset 54728 445e7947c6b5
parent 54727 a806e7251cf0
child 54729 c5cd7a58cf2d
tuned signature;
src/Pure/raw_simplifier.ML
src/Pure/simplifier.ML
--- a/src/Pure/raw_simplifier.ML	Thu Dec 12 16:56:53 2013 +0100
+++ b/src/Pure/raw_simplifier.ML	Thu Dec 12 17:34:50 2013 +0100
@@ -73,10 +73,6 @@
   include BASIC_RAW_SIMPLIFIER
   exception SIMPLIFIER of string * thm
   val internal_ss: simpset ->
-   {rules: rrule Net.net,
-    prems: thm list,
-    bounds: int * ((string * typ) * string) list,
-    depth: int * bool Unsynchronized.ref} *
    {congs: (cong_name * thm) list * cong_name list,
     procs: proc Net.net,
     mk_rews:
@@ -287,7 +283,7 @@
     loop_tacs: (string * (Proof.context -> int -> tactic)) list,
     solvers: solver list * solver list};
 
-fun internal_ss (Simpset args) = args;
+fun internal_ss (Simpset (_, ss2)) = ss2;
 
 fun make_ss1 (rules, prems, bounds, depth) =
   {rules = rules, prems = prems, bounds = bounds, depth = depth};
--- a/src/Pure/simplifier.ML	Thu Dec 12 16:56:53 2013 +0100
+++ b/src/Pure/simplifier.ML	Thu Dec 12 17:34:50 2013 +0100
@@ -190,14 +190,14 @@
 
 fun solve_all_tac solvers ctxt =
   let
-    val (_, {subgoal_tac, ...}) = Raw_Simplifier.internal_ss (simpset_of ctxt);
+    val {subgoal_tac, ...} = Raw_Simplifier.internal_ss (simpset_of ctxt);
     val solve_tac = subgoal_tac (Raw_Simplifier.set_solvers solvers ctxt) THEN_ALL_NEW (K no_tac);
   in DEPTH_SOLVE (solve_tac 1) end;
 
 (*NOTE: may instantiate unknowns that appear also in other subgoals*)
 fun generic_simp_tac safe mode ctxt =
   let
-    val (_, {loop_tacs, solvers = (unsafe_solvers, solvers), ...}) =
+    val {loop_tacs, solvers = (unsafe_solvers, solvers), ...} =
       Raw_Simplifier.internal_ss (simpset_of ctxt);
     val loop_tac = FIRST' (map (fn (_, tac) => tac ctxt) (rev loop_tacs));
     val solve_tac = FIRST' (map (Raw_Simplifier.solver ctxt)
@@ -212,7 +212,7 @@
 
 fun simp rew mode ctxt thm =
   let
-    val (_, {solvers = (unsafe_solvers, _), ...}) = Raw_Simplifier.internal_ss (simpset_of ctxt);
+    val {solvers = (unsafe_solvers, _), ...} = Raw_Simplifier.internal_ss (simpset_of ctxt);
     val tacf = solve_all_tac (rev unsafe_solvers);
     fun prover s th = Option.map #1 (Seq.pull (tacf s th));
   in rew mode prover ctxt thm end;