KIT | KIT-Bibliothek | Impressum | Datenschutz

A Systematic Approach to Abstract Interpretation of Program Transformations

Keidel, Sven; Erdweg, Sebastian ORCID iD icon 1
1 Institut für Programmstrukturen und Datenorganisation (IPD), Karlsruher Institut für Technologie (KIT)

Abstract (englisch):

Abstract interpretation is a technique to define sound static analyses. While abstract interpretation is generally well-understood, the analysis of program transformations has not seen much attention. The main challenge in developing an abstract interpreter for program transformations is designing good abstractions that capture relevant information about the generated code. However, a complete abstract interpreter must handle many other aspects of the transformation language, such as backtracking and generic traversals, as well as analysis-specific concerns, such as interprocedurality and fixpoints. This deflects attention. We propose a systematic approach to design and implement abstract interpreters for program transformations that isolates the abstraction for generated code from other analysis aspects. Using our approach, analysis developers can focus on the design of abstractions for generated code, while the rest of the analysis definition can be reused. We show that our approach is feasible and useful by developing three novel inter-procedural analyses for the Stratego transformation language: a singleton analysis for constant propagation, a sort analysis for type checking, and a locally-illsorted sort analysis that can additionally validate type changing generic traversals.


Originalveröffentlichung
DOI: 10.1007/978-3-030-39322-9_7
Dimensions
Zitationen: 2
Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Proceedingsbeitrag
Publikationsjahr 2020
Sprache Englisch
Identifikator ISBN: 978-3-0303-9321-2
ISSN: 2512-2010
KITopen-ID: 1000188597
Erschienen in Proceedings of the 21st International Conference on Verification, Model Checking, and Abstract Interpretation, VMCAI 2020; New Orleans, LA, USA, 16.-21.01.2020
Veranstaltung 21st International Conference on Verification, Model Checking, and Abstract Interpretation (2020), New Orleans, LA, USA, 16.01.2020 – 21.01.2020
Verlag Springer
Seiten S. 136–157
Serie Lecture Notes in Computer Science ; 11990
Schlagwörter Abstracting; Program interpreters; Static analysis
Nachgewiesen in Scopus
Dimensions
OpenAlex
KIT – Die Universität in der Helmholtz-Gemeinschaft
KITopen Landing Page