Jump to user comments
A safe program analysis is one which will not reach invalid
conclusions about the behaviour of the program. This may
involve making safe approximations to properties of parts of
the program. A safe approximation is one which gives less
information.
For example, strictness analysis aims to answer the question
"will this function evaluate its argument"?. The two possible
results are "definitely" and "don't know". A safe
approximation for "definitely" is "don't know". The two
possible results correspond to the two sets: "the set of all
functions which evaluate their argument" and "all functions".
A set can be safely approximated by another which contains it.