Abstract
In this paper we describe a new implementation of the Finite Domain solver ROPE [8], called MROPE II. This new version was preceded by an implementation on top of Prolog [9] and a version using an early version of Mercury [10]. In the previous implementation Mercury was chosen for its speed, compile-time checking properties and fast reliable development. This previous experiment with Mercury was already a success, still there were some problems: for an efficient execution backtrackable destructive assignment was needed. Later releases of the Mercury system [4] contained such backtrackable destructive assignment and also impure declarations. This was all we needed for a new implementation of ROPE: MROPE II. The performance of this new system, with a very high level implementation, approaches the performance of other well known systems.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
M. Bruynooghe and D. De Schreye. Meta-interpretation. In S. C. Shapiro, editor, Encyclopedia of Artificial Intelligence, pages 939–940. John Wiley & Sons, Inc, 1992.
M. Carlsson, G. Ottosson, and B Carlson. An open-ended finite domain constraint solver. In Proc. of Programming Languages: Implementations, Logics, and Programs, 1997.
P. Codognet and D. Diaz. Compiling constraints in clp(fd). The Journal of Logic Programming, 27(3):185–226, June 1996.
Fergus Henderson, Thomas Conway, Zoltan Somogyi, and David Jeffery. The Mercury Language Reference Manual 0.8.1. Melbourne, 1999.
Z. Somogyi, F. Henderson, and T. Conway. The implemenatation of mercury: an efficient declarative logic programming language. In Proceedings of the ILPS’94 Postconference Workshop on Implementation Techniques for Logic Programming Languages, 1994.
P. Van Hentenryck. Constraint Satisfaction in Logic Programming. The MIT press, 1989.
P. Van Hentenryck and Y. Deville. The cardinality operator: A new logical connective for constraint logic programming. In proceedings of ICLP, pages 745–759, 1991.
H. Vandecasteele. Constraint Logic Programming: Applications and Implementation. PhD thesis, Department of Computer Science, K.U.Leuven, 1999.
H. Vandecasteele and D. De Schreye. Implementing a finite-domain CLP-language on top of Prolog: a transformational approach. In Frank Pfenning, editor, Proceedings of Logic Programming and Automated Reasoning, number 822 in Lecture Notes in Artificial Intelligence, pages 84–98. Springer-Verlag, 1994.
H. Vandecasteele, B. Demoen, and J. Van Der Auwera. The use of Mercury for the implementation of a finite domain solver. In Proceedings of JICSLP’96 Post-conference Workshop on Parallelism and Implementation Technologies for (Constraint) Logic Languages, 1996.
H. Vandecasteele, B. Demoen, and J. Van Der Auwera. The use of Mercury for the implementation of a finite domain solver. In I. de Castro Dutra, M. Carro, V. Santos Costa, G. Gupta, E. Pontellia, and Silva F, editors, Nova Science Special Volume on Parallelism and Implementation of Logic and Constraint Logic Programming. Nova Science Publishers Inc, 1999.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Vandecasteele, H., Demoen, B., Janssens, G. (2000). A Finite Domain CLP Solver on Top of Mercury. In: Apt, K.R., Monfroy, E., Kakas, A.C., Rossi, F. (eds) New Trends in Constraints. WC 1999. Lecture Notes in Computer Science(), vol 1865. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44654-0_13
Download citation
DOI: https://doi.org/10.1007/3-540-44654-0_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67885-4
Online ISBN: 978-3-540-44654-5
eBook Packages: Springer Book Archive