src/HOL/ex/predicate_compile.ML
changeset 31551 995d6b90e9d6
parent 31550 b63d253ed9e2
child 31556 ac0badf13d93
child 31573 0047df9eb347
--- a/src/HOL/ex/predicate_compile.ML	Wed Jun 10 21:04:36 2009 +0200
+++ b/src/HOL/ex/predicate_compile.ML	Thu Jun 11 12:06:13 2009 +0200
@@ -1443,12 +1443,14 @@
 (* TODO: must create state to prove multiple cases *)
 fun generic_code_pred prep_const raw_const lthy =
   let
+  
     val thy = ProofContext.theory_of lthy
     val const = prep_const thy raw_const
+    
     val lthy' = LocalTheory.theory (PredData.map (Graph.extend (dependencies_of thy) const)) lthy
     val thy' = ProofContext.theory_of lthy'
     val preds = Graph.all_preds (PredData.get thy') [const] |> filter_out (has_elim thy')
-    val _ = Output.tracing ("preds: " ^ commas preds)
+    
     fun mk_cases const =
       let
         val nparams = nparams_of thy' const
@@ -1458,7 +1460,8 @@
     fun after_qed thms =
       LocalTheory.theory (fold set_elim (map the_single thms) #> add_equations const)
   in
-    Proof.theorem_i NONE after_qed (map (single o (rpair [])) cases_rules) lthy'
+    Proof.theorem_i NONE after_qed (map (single o (rpair [])) cases_rules) lthy
+    (* FIXME: expected the actual local_theory to be lthy'; but works with lthy ??*) 
   end;
 
 structure P = OuterParse