src/Pure/logic.ML
changeset 24848 5dbbd33c3236
parent 24258 2f399483535a
child 25939 ddea202704b4
equal deleted inserted replaced
24847:bc15dcaed517 24848:5dbbd33c3236
   236   in S |> map (fn c => NameSpace.base c ^ "_" ^ b) end;
   236   in S |> map (fn c => NameSpace.base c ^ "_" ^ b) end;
   237 
   237 
   238 fun name_arity (t, dom, c) = hd (name_arities (t, dom, [c]));
   238 fun name_arity (t, dom, c) = hd (name_arities (t, dom, [c]));
   239 
   239 
   240 fun mk_arities (t, Ss, S) =
   240 fun mk_arities (t, Ss, S) =
   241   let val T = Type (t, ListPair.map TFree (Name.invent_list [] "'a" (length Ss), Ss))
   241   let val T = Type (t, ListPair.map TFree (Name.invents Name.context Name.aT (length Ss), Ss))
   242   in map (fn c => mk_inclass (T, c)) S end;
   242   in map (fn c => mk_inclass (T, c)) S end;
   243 
   243 
   244 fun dest_arity tm =
   244 fun dest_arity tm =
   245   let
   245   let
   246     fun err () = raise TERM ("dest_arity", [tm]);
   246     fun err () = raise TERM ("dest_arity", [tm]);