src/Tools/nbe.ML
changeset 47609 b3dab1892cda
parent 47573 6244475356ba
child 48072 ace701efe203
equal deleted inserted replaced
47608:572d7e51de4d 47609:b3dab1892cda
   117           |> map (Logic.dest_of_class #> of_class);
   117           |> map (Logic.dest_of_class #> of_class);
   118       in fold Thm.elim_implies prems_of_class thm end;
   118       in fold Thm.elim_implies prems_of_class thm end;
   119   in
   119   in
   120     ct
   120     ct
   121     |> (Drule.cterm_fun o map_types o map_type_tfree)
   121     |> (Drule.cterm_fun o map_types o map_type_tfree)
   122         (fn (v, sort) => TFree (v, (fst o the o AList.lookup (op =) vs_tab) v))
   122         (fn (v, _) => TFree (v, (fst o the o AList.lookup (op =) vs_tab) v))
   123     |> conv
   123     |> conv
   124     |> Thm.strip_shyps
   124     |> Thm.strip_shyps
   125     |> Thm.varifyT_global
   125     |> Thm.varifyT_global
   126     |> Thm.unconstrainT
   126     |> Thm.unconstrainT
   127     |> instantiate
   127     |> instantiate
   238 val put_result = Univs.put;
   238 val put_result = Univs.put;
   239 
   239 
   240 local
   240 local
   241   val prefix =     "Nbe.";
   241   val prefix =     "Nbe.";
   242   val name_put =   prefix ^ "put_result";
   242   val name_put =   prefix ^ "put_result";
   243   val name_ref =   prefix ^ "univs_ref";
       
   244   val name_const = prefix ^ "Const";
   243   val name_const = prefix ^ "Const";
   245   val name_abss =  prefix ^ "abss";
   244   val name_abss =  prefix ^ "abss";
   246   val name_apps =  prefix ^ "apps";
   245   val name_apps =  prefix ^ "apps";
   247   val name_same =  prefix ^ "same";
   246   val name_same =  prefix ^ "same";
   248 in
   247 in