trim context for persistent storage;
authorwenzelm
Wed, 02 Sep 2015 17:25:14 +0200
changeset 61085 30b0c4584244
parent 61084 d83494bf57ed
child 61086 fc7ab11128dc
trim context for persistent storage;
src/Pure/Isar/class.ML
--- a/src/Pure/Isar/class.ML	Wed Sep 02 16:52:36 2015 +0200
+++ b/src/Pure/Isar/class.ML	Wed Sep 02 17:25:14 2015 +0200
@@ -219,7 +219,8 @@
       (c, (class, ((ty, Free v_ty), false)))) params;
     val add_class = Graph.new_node (class,
         make_class_data (((map o apply2) fst params, base_sort,
-          base_morph, export_morph, some_assm_intro, of_class, some_axiom), ([], operations)))
+          base_morph, export_morph, Option.map Thm.trim_context some_assm_intro,
+          Thm.trim_context of_class, Option.map Thm.trim_context some_axiom), ([], operations)))
       #> fold (curry Graph.add_edge class) sups;
   in Class_Data.map add_class thy end;
 
@@ -246,7 +247,7 @@
 
 fun register_def class def_thm thy =
   let
-    val sym_thm = Thm.symmetric def_thm
+    val sym_thm = Thm.trim_context (Thm.symmetric def_thm)
   in
     thy
     |> (Class_Data.map o Graph.map_node class o map_class_data o apsnd o apfst)