Abstract
Proving termination of, or generating efficient control for Constraint Handling Rules (CHR) programs requires information about the kinds of constraints that can show up in the CHR constraint store. In contrast to Logic Programming (LP), there are not many tools available for deriving such information for CHR. Hence, instead of building analyses for CHR from scratch, we define a transformation from CHR to Prolog and reuse existing analysis tools for Prolog.
The proposed transformation has been implemented and combined with PolyTypes 1.3, a type analyser for Prolog, resulting in an accurate description of the types of CHR programs. Moreover, the transformation is not limited to type analysis. It can also be used to prove other properties of the constraints showing up in constraint stores, using tools for Prolog.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Bruynooghe, M., Codish, M., Gallagher, J.P., Genaim, S., Vanhoof, W.: Termination analysis of logic programs through combination of type-based norms. ACM Transactions on Programming Languages and Systems 29(2), 10 (2007)
Bruynooghe, M., Gallagher, J.P., Van Humbeeck, W.: Inference of Well-Typings for Logic Programs with Application to Termination Analysis. In: Hankin, C., Siveroni, I. (eds.) SAS 2005. LNCS, vol. 3672, pp. 35–51. Springer, Heidelberg (2005)
Coquery, E., Fages, F.: A Type System for CHR. In: CHR 2005: Proceedings of the 2nd International Workshop on Constraint Handling Rules, pp. 19–33 (2005)
De Schreye, D., Decorte, S.: Termination of Logic Programs: The Never-Ending Story. Journal of Logic Programming 19/20, 199–260 (1994)
Janssens, G., Bruynooghe, M.: Deriving descriptions of possible values of program variables by means of abstract interpretation. Journal of Logic Programming 13(2-3), 199–260 (1992)
Nguyen, M.T.: Termination Analysis: Crossing Paradigm Borders. PhD thesis, Katholieke Universiteit Leuven, Departement Computer Wetenschappen, Belgium (2009)
Pilozzi, P., De Schreye, D.: Termination Analysis of CHR Revisited. In: Garcia de la Banda, M., Pontelli, E. (eds.) ICLP 2008. LNCS, vol. 5366, pp. 501–515. Springer, Heidelberg (2008)
Pilozzi, P., De Schreye, D.: Automating termination proofs for CHR. In: Hill, P.M., Warren, D.S. (eds.) ICLP 2009. LNCS, vol. 5649, pp. 504–508. Springer, Heidelberg (2009)
Pilozzi, P., De Schreye, D.: Proving termination by invariance relations. In: Hill, P.M., Warren, D.S. (eds.) ICLP 2009. LNCS, vol. 5649, pp. 499–503. Springer, Heidelberg (2009)
Pilozzi, P., Schrijvers, T., De Schreye, D.: Proving termination of CHR in Prolog: A transformational approach. In: WST 2007: Proceedings of the 9th International Workshop on Termination (2007)
Schrijvers, T.: Analyses, optimizations and extensions of Constraint Handling Rules. PhD thesis, Katholieke Universiteit Leuven, Departement Computer Wetenschappen, Belgium (2005)
Schrijvers, T., Bruynooghe, M., Gallagher, J.P.: From monomorphic to polymorphic well-typings and beyond. In: Hanus, M. (ed.) LOPSTR 2008. LNCS, vol. 5438, pp. 152–167. Springer, Heidelberg (2009)
Vanhoof, W., Bruynooghe, M., Leuschel, M.: Binding-time analysis for mercury. In: Bruynooghe, M., Lau, K.-K. (eds.) Program Development in Computational Logic. LNCS, vol. 3049, pp. 189–232. Springer, Heidelberg (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pilozzi, P., Schrijvers, T., Bruynooghe, M. (2010). A Transformational Approach for Proving Properties of the CHR Constraint Store. In: De Schreye, D. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 2009. Lecture Notes in Computer Science, vol 6037. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-12592-8_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-12592-8_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-12591-1
Online ISBN: 978-3-642-12592-8
eBook Packages: Computer ScienceComputer Science (R0)