equal
deleted
inserted
replaced
26 |
26 |
27 val _$(_$Var(a_ixname,aT)) = concl_of spec; |
27 val _$(_$Var(a_ixname,aT)) = concl_of spec; |
28 |
28 |
29 fun add_term_frees thy = |
29 fun add_term_frees thy = |
30 let fun add(tm, vars) = case tm of |
30 let fun add(tm, vars) = case tm of |
31 Free(v,T) => if Sign.typ_instance thy (T,aT) then v ins vars |
31 Free(v,T) => if Sign.typ_instance thy (T,aT) then insert (op =) v vars |
32 else vars |
32 else vars |
33 | Abs (_,_,body) => add(body,vars) |
33 | Abs (_,_,body) => add(body,vars) |
34 | rator$rand => add(rator, add(rand, vars)) |
34 | rator$rand => add(rator, add(rand, vars)) |
35 | _ => vars |
35 | _ => vars |
36 in add end; |
36 in add end; |