Unfolding for CHR programs
-
Published:2013-10-08
Issue:3
Volume:15
Page:264-311
-
ISSN:1471-0684
-
Container-title:Theory and Practice of Logic Programming
-
language:en
-
Short-container-title:Theory and Practice of Logic Programming
Author:
GABBRIELLI MAURIZIO,MEO MARIA CHIARA,TACCHELLA PAOLO,WIKLICKY HERBERT
Abstract
AbstractProgram transformation is an appealing technique which allows to improve run-time efficiency, space-consumption, and more generally to optimize a given program. Essentially, it consists of a sequence of syntactic program manipulations which preserves some kind of semantic equivalence. Unfolding is one of the basic operations used by most program transformation systems and consists of the replacement of a procedure call by its definition. While there is a large body of literature on the transformation and unfolding of sequential programs, very few papers have addressed this issue for concurrent languages. This paper defines an unfolding system for Constraint Handling Rules programs. We define an unfolding rule, show its correctness and discuss some conditions that can be used to delete an unfolded rule while preserving the program meaning. We also prove that, under some suitable conditions, confluence and termination are preserved by the above transformation.
Publisher
Cambridge University Press (CUP)
Subject
Artificial Intelligence,Computational Theory and Mathematics,Hardware and Architecture,Theoretical Computer Science,Software
Reference20 articles.
1. Tacchella P. 2008. Constraint Handling Rules. Compositional Semantics and Program Transformation, PhD thesis, Università di Bologna, Bologna, Italy.
2. Theory and practice of constraint handling rules
3. Integration and Optimization of Rule-Based Constraint Solvers
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Constraint Handling Rules - What Else?;Rule Technologies: Foundations, Tools, and Applications;2015