Abstract
Debugging tools serve an important role in software development. This also holds for constraint programming and CLP(\(\mathcal{FD}\)) in particular, where it is often necessary to observe how the domains of various variables behave, how different constraints linked by shared variables affect each other, etc. There are numerous projects for implementing debuggers for CLP(\(\mathcal{FD}\)) systems. Some have committed themselves to interactive tools, others have chosen assertion based methods, and a large number of publications deal with trace generation and analysis.
We have decided to develop a trace based debugger for the CLP(\(\mathcal{FD}\)) library of SICStus Prolog, a library which neatly embeds the theory of finite domain constraints into Prolog. The SICStus environment has an advanced and extensible debugger for the base language, but until recently it has lacked direct support to observe the run of constraint programs. The goal of FDBG (which is short for Finite domain DeBuGger) is to fill in this gap.
FDBG was written almost entirely in Prolog, as user space code, no native routines were used directly. The library (along with its source code) is part of the SICStus Prolog distribution versions 3.9 and upwards, and is documented in detail in the SICStus User’s Manual.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
The subject is presented in full detail at the WLPE’04 workshop.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hanák, D., Szeredi, T., Szeredi, P. (2004). FDBG, the CLP\(\mathcal{FD}\) Debugger Library of SICStus Prolog. In: Demoen, B., Lifschitz, V. (eds) Logic Programming. ICLP 2004. Lecture Notes in Computer Science, vol 3132. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27775-0_37
Download citation
DOI: https://doi.org/10.1007/978-3-540-27775-0_37
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-22671-0
Online ISBN: 978-3-540-27775-0
eBook Packages: Springer Book Archive