This article presents and illustrates a practical approach to the data
flow analysis of constraint logic programming languages using abstract
interpretation. It is first argued that, from the framework point of
view, it suffices to propose relatively simple extensions of tradition
al analysis methods which have already been proved useful and practica
l and for which efficient fixpoint algorithms exist. This is shown by
proposing a simple extension of Bruynooghe's traditional framework whi
ch allows it to analyze constraint logic programs. Then, and using thi
s generalized framework, two abstract domains and their required abstr
act functions are presented: the first abstract domain approximates de
finiteness information and the second one freeness. Finally, an approa
ch for combining those domains is proposed. The two domains and their
combination have been implemented and used in the analysis of CLP(R) a
nd Prolog-III applications. Results from this implementation showing i
ts performance and accuracy are also presented.