Program Transformations Using Temporal Logic Side Conditions

被引:10
作者
Kalvala, Sara [1 ]
Warburton, Richard [1 ]
Lacey, David [2 ]
机构
[1] Univ Warwick, Dept Comp Sci, Coventry CV4 7AL, W Midlands, England
[2] XMOS Semicond, Bristol BS1 4PB, Avon, England
来源
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS | 2009年 / 31卷 / 04期
基金
英国工程与自然科学研究理事会;
关键词
Design; Languages; Verification; Optimizing compilers; program transformation; rewriting; temporal logic;
D O I
10.1145/1516507.1516509
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This article describes an approach to program optimization based on transformations, where temporal logic is used to specify side conditions, and strategies are created which expand the repertoire of transformations and provide a suitable level of abstraction. We demonstrate the power of this approach by developing a set of optimizations using our transformation language and showing how the transformations can be converted into a form which makes it easier to apply them, while maintaining trust in the resulting optimizing steps. The approach is illustrated through a transformational case study where we apply several optimizations to a small program.
引用
收藏
页数:48
相关论文
共 54 条
[1]  
AKERS SB, 1978, IEEE T COMPUT, V27, P509, DOI 10.1109/TC.1978.1675141
[2]  
[Anonymous], PLDI 03
[3]  
[Anonymous], 2007, COMPILERS PRINCIPLES
[4]  
[Anonymous], 1997, Advanced compiler design implementation
[5]  
[Anonymous], 1993, Symbolic Model Checking
[6]  
[Anonymous], PLDI 92
[7]  
Appel A. W., 1998, Modern Compiler Implementationin ML, V1
[8]  
ASSMANN U, 1999, GRAPH GRAMMAR HDB, V2
[9]  
ASSMANN U, 1996, LECT NOTES COMPUTER, V1060
[10]  
BOYLE JM, 1989, SOFTWARE REUSABILITY, V1, P361