src/Pure/IsaPlanner/isand.ML
changeset 18127 9f03d8a9a81b
parent 17970 a84ac7c201ea
child 18330 444f16d232a2
equal deleted inserted replaced
18126:b74145e46e0d 18127:9f03d8a9a81b
   222 (* change type-free's to type-vars *)
   222 (* change type-free's to type-vars *)
   223 fun unfix_tfrees ns th = 
   223 fun unfix_tfrees ns th = 
   224     let 
   224     let 
   225       val varfiytfrees = (map (fn x => Term.dest_TFree (Thm.typ_of x)) ns)
   225       val varfiytfrees = (map (fn x => Term.dest_TFree (Thm.typ_of x)) ns)
   226       val skiptfrees = Term.add_term_tfrees (Thm.prop_of th,[]) \\ varfiytfrees;
   226       val skiptfrees = Term.add_term_tfrees (Thm.prop_of th,[]) \\ varfiytfrees;
   227     in fst (Thm.varifyT' skiptfrees th) end;
   227     in #2 (Thm.varifyT' skiptfrees th) end;
   228 
   228 
   229 (* change schematic/meta vars to fresh free vars *)
   229 (* change schematic/meta vars to fresh free vars *)
   230 fun fix_vars_to_frees_in_terms names ts = 
   230 fun fix_vars_to_frees_in_terms names ts = 
   231     let 
   231     let 
   232       val vars = map Term.dest_Var (List.foldr Term.add_term_vars [] ts);
   232       val vars = map Term.dest_Var (List.foldr Term.add_term_vars [] ts);