%D 2008 %S Lecture Notes in Computer Science %R 10.1007/978-3-540-89982-2_29 %N 5366 %O 24th International Conference, ICLP 2008 Udine, Italy, December 9-13 2008 Proceedings %T A Folding Algorithm for Eliminating Existential Variables from Constraint Logic Programs %P 284-300 %I Springer %A Valerio Senni %A Alberto Pettorossi %A Maurizio Proietti %L eprints1375 %X The existential variables of a clause in a constraint logic program are the variables which occur in the body of the clause and not in its head. The elimination of these variables is a transformation technique which is often used for improving program efficiency and verifying program properties. We consider a folding transformation rule which ensures the elimination of existential variables and we propose an algorithm for applying this rule in the case where the constraints are linear inequations over rational or real numbers. The algorithm combines techniques for matching terms modulo equational theories and techniques for solving systems of linear inequations. We show that an implementation of our folding algorithm performs well in practice. %B Logic Programming