Abstract
Program transformation and in particular partial evaluation are appealing techniques for declarative programs to improve not only their performance. This paper presents the first step towards developing program transformation techniques for a concurrent constraint programming language where guarded rules rewrite and augment multi-sets of atomic formulae, called Constraint Handling Rules (CHR).
We study the specialization of rules with regard to a given goal (query). We show the correctness of this program transformation: Adding and removing specialized rules in a program does not change the program’s operational semantics. Furthermore termination and confluence of the program are shown to be preserved.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abdennadher, S.: Operational semantics and confluence of constraint propagation rules. In: Smolka, G. (ed.) CP 1997. LNCS, vol. 1330. Springer, Heidelberg (1997)
Abdennadher, S., Frühwirth, T.: Operational equivalence of CHR programs and constraints. In: Jaffar, J. (ed.) CP 1999. LNCS, vol. 1713, pp. 43–57. Springer, Heidelberg (1999)
Abdennadher, S., Frühwirth, T.: Integration and optimization of rule-based constraint solvers. In: Bruynooghe, M. (ed.) Logic Based Program Synthesis and Transformation - LOPSTR 2003, Revised Selected Papers. LNCS. Springer, Heidelberg (2004)
Abdennadher, S., Frühwirth, T., Meuss, H.: Confluence and semantics of constraint simplification rules. Constraints Journal 4(2), 133–165 (1999)
Delzanno, G., Podelski, A.: Model checking in CLP. In: Cleaveland, W.R. (ed.) TACAS 1999. LNCS, vol. 1579, pp. 223–239. Springer, Heidelberg (1999)
Etalle, S., Gabbrielli, M., Meo, M.C.: Transformations of CCP programs. ACM Trans. Program. Lang. Syst. 23(3), 304–395 (2001)
Frühwirth, T., Abdennadher, S.: Essentials of Constraint Programming. Springer, Heidelberg (2003)
Fioravanti, F., Pettorossi, A., Proietti, M.: Verifying CTL properties of infinite state systems by specializing constraint logic programs. In: Leuschel, M., Podelski, A., Ramakrishnan, C.R., Ultes-Nitsche, U. (eds.) ACM SIGPLAN International Workshop on Verification and Computational Logic, pp. 85–96 (2001)
Fioravanti, F., Pettorossi, A., Proietti, M.: Transformation rules for locally stratified constraint logic programs (2004)
Frühwirth, T.: Theory and practice of constraint handling rules. Journal of Logic Programming 37(1-3), 95–138 (1998)
Frühwirth, T.: As time goes by: Automatic complexity analysis of simplification rules. In: 8th International Conference on Principles of Knowledge Representation and Reasoning, Toulouse, France (2002)
Mogensen, T., Sestoft, P.: Partial evaluation. In: Kent, A., Williams, J.G. (eds.) Encyclopedia of Computer Science and Technology, vol. 37, pp. 247–279 (1997)
Puyol-Gruart, J., Godo, L., Sierra, C.: Specialisation calculus and communication. International Journal of Approximate Reasoning 18(1/2), 107–130 (1998)
Pettorossi, A., Proietti, M.: Rules and strategies for transforming functional and logic programs. ACM Comput. Surv. 28(2), 360–414 (1996)
Roychoudhury, A., Narayan Kumar, K., Ramakrishnan, C.R., Ramakrishnan, I.V.: An unfold/fold transformation framework for definite logic programs. ACM Trans. Program. Lang. Syst. 26(3), 464–509 (2004)
Saraswat, V.A., Rinard, M.: Concurrent constraint programming. In: Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pp. 232–245. ACM Press, New York (1990)
Ueda, K., Furukawa, K.: Transformation rules for GHC programs. In: Proc. Int. Conf. on Fifth Generation Computer Systems 1988 (FGCS1988), pp. 582–591 (1988)
Walsh, T.: Constraint patterns. In: Rossi, F. (ed.) CP 2003. LNCS, vol. 2833, pp. 53–64. Springer, Heidelberg (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Frühwirth, T. (2005). Specialization of Concurrent Guarded Multi-set Transformation Rules. In: Etalle, S. (eds) Logic Based Program Synthesis and Transformation. LOPSTR 2004. Lecture Notes in Computer Science, vol 3573. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11506676_9
Download citation
DOI: https://doi.org/10.1007/11506676_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26655-6
Online ISBN: 978-3-540-31683-1
eBook Packages: Computer ScienceComputer Science (R0)