src/Provers/ind.ML
changeset 20854 f9cf9e62d11c
parent 20344 d02b43ea722e
equal deleted inserted replaced
20853:3ff5a2e05810 20854:f9cf9e62d11c
    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;