src/HOL/Tools/record_package.ML
changeset 14854 61bdf2ae4dc5
parent 14709 d01983034ded
child 14959 014d4e006739
equal deleted inserted replaced
14853:8d710bece29f 14854:61bdf2ae4dc5
   613 
   613 
   614       val T = Sign.intern_typ sg (Syntax.typ_of_term (get_sort (Syntax.raw_term_sorts tm)) I tm) 
   614       val T = Sign.intern_typ sg (Syntax.typ_of_term (get_sort (Syntax.raw_term_sorts tm)) I tm) 
   615       val tsig = Sign.tsig_of sg
   615       val tsig = Sign.tsig_of sg
   616 
   616 
   617       fun mk_type_abbr subst name alphas = 
   617       fun mk_type_abbr subst name alphas = 
   618           let val abbrT = Type (name, map (fn a => TVar ((a,0),logicS)) alphas);
   618           let val abbrT = Type (name, map (fn a => TVar ((a, 0), [])) alphas);
   619           in Syntax.term_of_typ (! Syntax.show_sorts) (Envir.norm_type subst abbrT) end;    
   619           in Syntax.term_of_typ (! Syntax.show_sorts) (Envir.norm_type subst abbrT) end;    
   620 
   620 
   621       fun unify rT T = fst (Type.unify tsig (Vartab.empty,0) (Type.varifyT rT,T))
   621       fun unify rT T = fst (Type.unify tsig (Vartab.empty,0) (Type.varifyT rT,T))
   622 
   622 
   623    in if !print_record_type_abbr
   623    in if !print_record_type_abbr