src/Pure/term.ML
changeset 22651 5ab11152daeb
parent 22572 c6bbe56afbf7
child 22723 a3a856313bcf
equal deleted inserted replaced
22650:0c5b22076fb3 22651:5ab11152daeb
   927     | _ => "uu")
   927     | _ => "uu")
   928   in Abs (x, fastype_of v, abstract_over (v, t)) end;
   928   in Abs (x, fastype_of v, abstract_over (v, t)) end;
   929 
   929 
   930 (*Form an abstraction over a free variable.*)
   930 (*Form an abstraction over a free variable.*)
   931 fun absfree (a,T,body) = Abs (a, T, abstract_over (Free (a, T), body));
   931 fun absfree (a,T,body) = Abs (a, T, abstract_over (Free (a, T), body));
   932 fun absdummy (T, body) = Abs (Name.internal "x", T, body);
   932 fun absdummy (T, body) = Abs (Name.internal "uu", T, body);
   933 
   933 
   934 (*Abstraction over a list of free variables*)
   934 (*Abstraction over a list of free variables*)
   935 fun list_abs_free ([ ] ,     t) = t
   935 fun list_abs_free ([ ] ,     t) = t
   936   | list_abs_free ((a,T)::vars, t) =
   936   | list_abs_free ((a,T)::vars, t) =
   937       absfree(a, T, list_abs_free(vars,t));
   937       absfree(a, T, list_abs_free(vars,t));