Deriving descriptions of possible values of program variables by means of abstract interpretation
Journal of Logic Programming
Proving Termination of Constraint Solver Programs
Selected papers from the Joint ERCIM/Compulog Net Workshop on New Trends in Contraints
Termination Analysis of Logic Programs Based on Dependency Graphs
Logic-Based Program Synthesis and Transformation
Polynomial interpretations as a basis for termination analysis of logic programs
ICLP'05 Proceedings of the 21st international conference on Logic Programming
Research Summary: Termination of CHR
ICLP '09 Proceedings of the 25th International Conference on Logic Programming
A transformational approach for proving properties of the CHR constraint store
LOPSTR'09 Proceedings of the 19th international conference on Logic-Based Program Synthesis and Transformation
Improved termination analysis of CHR using self-sustainability analysis
LOPSTR'11 Proceedings of the 21st international conference on Logic-Based Program Synthesis and Transformation
Probabilistic termination of CHRiSM programs
LOPSTR'11 Proceedings of the 21st international conference on Logic-Based Program Synthesis and Transformation
Hi-index | 0.00 |
We propose a constraint-based approach towards automated termination analysis of Constraint Handling Rules (CHR). Similar to such approaches for Logic Programming (LP), we define a symbolic level mapping on atoms of the program and express termination conditions using these. Then, we search for an assignment to the symbolic coefficients, validating the termination conditions. However, different from the approaches developed for LP, termination of CHR programs is concerned with multi-headed rules, while the existing constraint-based approaches in LP are developed for definite programs. These cannot be adapted directly to a multi-headed context. In the following we discuss a constraint-based approach for CHR programs and show how such an approach can be obtained by an elegant reuse of existing techniques in LP. We evaluate the approach, using our implementation, CHRisTA.