@INPROCEEDINGS{AntoyHanus06ICLP,
author       = {Antoy, S. and Hanus, M.},
title        = {Overlapping Rules and Logic Variables in Functional Logic Programs},
year         = {2006},
booktitle    = {Proceedings of the International Conference on Logic Programming
                (ICLP 2006)},
pages        = {87-101},
publisher    = {Springer LNCS 4079},
abstract = {
Functional logic languages extend purely functional languages with two
features: operations defined by overlapping rules and logic variables
in both defining rules and expressions to evaluate.  In this paper, we
show that only one of these features is sufficient in a core
language. On the one hand, overlapping rules can be eliminated by
introducing logic variables in rules. On the other hand, logic
variables can be eliminated by introducing operations defined by
overlapping rules. The proposed transformations between different
classes of programs not only give a better understanding of the
features of functional logic programs but also may simplify
implementations of functional logic languages.
}
}

