TY - GEN
T1 - On the power and limitation of strictness analysis based on abstract interpretation
AU - Sekar, R. C.
AU - Mishra, Prateek
AU - Ramakrishnan, I. V.
N1 - Publisher Copyright:
© 1990 ACM.
PY - 1991/1/3
Y1 - 1991/1/3
N2 - Strictness analysis based on abstract interpretation is an important technique for optimization of lazy functional languages. It is well known that all strictness analysis methods are incomplete, i.e., fail to report some strictness properties. In this paper, we provide the first precise and formal characterization of the loss of information that leads to this incompleteness. Specifically, we establish the following characterization theorem for Mycroft's strictness analysis method and its natural generalization to non-flat domains called ee-Analysis: Mycroft's method will deduce a strictness property for program P iff the property is independent of any constant appearing in any evaluation of P. To prove this, we specify a small set of equations called E-Axioms, that capture the information loss in Mycroft's method and develop a new proof technique called E-rewriting. E-rewriting extends the standard notion of rewriting to permit the use of reductions using E-Axioms interspersed with standard reduction steps. E-Axioms are a syntactic characterization of information loss and Erewriting provides an algorithm independent proof technique for characterizing the power of strictness analysis methods. It can be used to answer questions on completeness and incompleteness of Mycroft's method on certain natural classes of programs. Finally, the techniques developed in this paper provide a generzd principle for establishing similar results for other strictness analysis methods based on abstract interpretation. As a demonstration of the generality of our technique, we give a characterization theorem for another variation of Mycroft's method called old-Analysis.
AB - Strictness analysis based on abstract interpretation is an important technique for optimization of lazy functional languages. It is well known that all strictness analysis methods are incomplete, i.e., fail to report some strictness properties. In this paper, we provide the first precise and formal characterization of the loss of information that leads to this incompleteness. Specifically, we establish the following characterization theorem for Mycroft's strictness analysis method and its natural generalization to non-flat domains called ee-Analysis: Mycroft's method will deduce a strictness property for program P iff the property is independent of any constant appearing in any evaluation of P. To prove this, we specify a small set of equations called E-Axioms, that capture the information loss in Mycroft's method and develop a new proof technique called E-rewriting. E-rewriting extends the standard notion of rewriting to permit the use of reductions using E-Axioms interspersed with standard reduction steps. E-Axioms are a syntactic characterization of information loss and Erewriting provides an algorithm independent proof technique for characterizing the power of strictness analysis methods. It can be used to answer questions on completeness and incompleteness of Mycroft's method on certain natural classes of programs. Finally, the techniques developed in this paper provide a generzd principle for establishing similar results for other strictness analysis methods based on abstract interpretation. As a demonstration of the generality of our technique, we give a characterization theorem for another variation of Mycroft's method called old-Analysis.
UR - https://www.scopus.com/pages/publications/5844395882
U2 - 10.1145/99583.99591
DO - 10.1145/99583.99591
M3 - Conference contribution
AN - SCOPUS:5844395882
SN - 0897914198
T3 - Conference Record of the Annual ACM Symposium on Principles of Programming Languages
SP - 37
EP - 48
BT - Conference Record of the Annual ACM Symposium on Principles of Programming Languages
PB - Association for Computing Machinery
T2 - 18th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 1991
Y2 - 21 January 1991 through 23 January 1991
ER -