free_in : (term -> term -> bool)

SYNOPSIS
Tests if one term is free in another.

DESCRIBE
When applied to two terms t1 and t2, the function free_in returns true if t1 is free in t2, and false otherwise. It is not necessary that t1 be simply a variable.

FAILURE
Never fails.

EXAMPLE
In the following example free_in returns false because the x in SUC x in the second term is bound:
   #free_in "SUC x" "!x. SUC x = x + 1";;
   false : bool
whereas the following call returns true because the first instance of x in the second term is free, even though there is also a bound instance:
   #free_in "x:bool" "x /\ (?x. x=T)";;
   true : bool

SEEALSO  frees,   freesl,   thm_frees

HOL  Kananaskis 0