Towards a Generic Trace for Rule Based Constraint Reasoning

CHR is a very versatile programming language that allows programmers to declaratively specify constraint solvers. An important part of the development of such solvers is in their testing and debugging phases. Current CHR implementations support those phases by offering tracing facilities with limited information. In this report, we propose a new trace for CHR which contains enough information to analyze any aspects of \CHRv\ execution at some useful abstract level, common to several implementations. %a large family of rule based solvers. This approach is based on the idea of generic trace. Such a trace is formally defined as an extension of the $\omega_r^\lor$ semantics of CHR. We show that it can be derived form the SWI Prolog CHR trace.

[1]  Pierre Deransart,et al.  Towards a Generic Framework to Generate Explanatory Traces of Constraint Solving and Rule-Based Reasoning , 2009, ArXiv.

[2]  Thom W. Frühwirth,et al.  Constraint Handling Rules , 2009, Constraint Programming.

[3]  Olivier Ridoux,et al.  Specifying Prolog Trace Models with a Continuation Semantics , 2000, LOPSTR.

[4]  SWI-Prolog 5.6 Reference Manual , 2004 .

[5]  Mats Carlsson,et al.  A Generic Visualization Platform for CP , 2010, CP.

[6]  Pierre Deransart Generic Traces and Constraints, GenTra4CP revisited , 2011, ArXiv.

[7]  Patrick Cousot,et al.  Systematic design of program transformation frameworks by abstract interpretation , 2002, POPL '02.

[8]  V. S. Costa,et al.  Theory and Practice of Logic Programming , 2010 .

[9]  Salvador,et al.  Observable Semantics and Dynamic Analysis ofComputational Processes , 2000 .

[10]  M. Ducassé,et al.  A Generic Trace Schema for the Portability of CP(FD) Debugging Tools , 2003, CSCLP.

[11]  Bart Demoen,et al.  Search Strategies in CHR(Prolog) , 2006 .

[12]  Mireille Ducassé,et al.  Design and implementation of a tracer driver: Easy and efficient dynamic analyses of constraint logic programs , 2008, Theory Pract. Log. Program..

[13]  Philippe Codognet,et al.  Design and Implementation of the GNU Prolog System , 2001, J. Funct. Log. Program..

[14]  Thom Frühwirth,et al.  High-Level Implementations of Constraint Handling Rules , 1995 .

[15]  Slim Abdennadher,et al.  Essentials of Constraint Programming , 2010, Cognitive Technologies.