generate correct names
authorkuncar
Fri, 23 Nov 2012 17:24:12 +0100
changeset 50177 2006c50172c9
parent 50176 701747176952
child 50178 ad52ddd35c3a
generate correct names
src/HOL/Tools/Quotient/quotient_type.ML
--- a/src/HOL/Tools/Quotient/quotient_type.ML	Fri Nov 23 15:53:24 2012 +0100
+++ b/src/HOL/Tools/Quotient/quotient_type.ML	Fri Nov 23 17:24:12 2012 +0100
@@ -101,8 +101,8 @@
       | _ => error "unsupported equivalence theorem"
       )
     val def_term = Abs ("x", rty, Abs ("y", qty, Abs_body));
-    val qty_name = (fst o dest_Type) qty
-    val cr_rel_name = Binding.prefix_name "cr_" (Binding.qualified_name qty_name)  
+    val qty_name = (Binding.name o Long_Name.base_name o fst o dest_Type) qty
+    val cr_rel_name = Binding.prefix_name "cr_" qty_name
     val (fixed_def_term, lthy') = yield_singleton (Variable.importT_terms) def_term lthy
     val ((_, (_ , def_thm)), lthy'') =
       Local_Theory.define ((cr_rel_name, NoSyn), ((Thm.def_binding cr_rel_name, []), fixed_def_term)) lthy'
@@ -115,8 +115,8 @@
     val (_ $ _ $ abs_fun $ _) = (HOLogic.dest_Trueprop o prop_of) quot3_thm
     val (T_def, lthy') = define_cr_rel equiv_thm abs_fun lthy
     val (rty, qty) = (dest_funT o fastype_of) abs_fun
-    val qty_name = (fst o dest_Type) qty
-    val quotient_thm_name = Binding.prefix_name "Quotient_" (Binding.qualified_name qty_name) 
+    val qty_name = (Binding.name o Long_Name.base_name o fst o dest_Type) qty
+    val quotient_thm_name = Binding.prefix_name "Quotient_" qty_name
     val (reflp_thm, quot_thm) = (case (HOLogic.dest_Trueprop o prop_of) equiv_thm of
       Const (@{const_name equivp}, _) $ _ =>
         (SOME (equiv_thm RS @{thm equivp_reflp2}),