KIT | KIT-Bibliothek | Impressum | Datenschutz

The Virtual Recency Abstraction: Strong Updates for Abstract Interpreters with Shared State

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

Abstract:

Abstract interpreters enable sound static analysis, but are hard to develop. In recent years, researchers have proposed a component-based approach to developing abstract interpreters, where different parts of the abstract domain (e.g., numeric, call frame, heap) are handled by isolated components. This works well as long as components do not share or expose their internal state: Any state update that is locally sound is also globally sound. However, some abstract domains require shared state, most prominently relational abstract domains, which use symbolic expressions such as 2x + 5 to represent abstract values. As the relational component performs a strong update of x, the abstract value 2x + 5 can change non-monotonically, which breaks soundness. We propose a novel solution to this problem: A virtual recency abstractions that decouples the relational component, supports strong updates, and allows recursion. We prove that the virtual recency abstraction restores soundness: Any shared state wrapped in our virtual recency abstraction may be locally updated non-monotonically, while global soundness persists. We applied our approach to develop the first relational WebAssembly analysis, reusing many components from an existing inter-procedural abstract interpreter. ... mehr


Verlagsausgabe §
DOI: 10.5445/IR/1000194827
Veröffentlicht am 30.06.2026
Originalveröffentlichung
DOI: 10.4230/LIPIcs.ECOOP.2026.14
Cover der Publikation
Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Proceedingsbeitrag
Publikationsdatum 25.06.2026
Sprache Englisch
Identifikator ISBN: 978-3-95977-423-9
ISSN: 1868-8969
KITopen-ID: 1000194827
HGF-Programm 46.23.03 (POF IV, LK 01) Engineering Security for Mobility Systems
Erschienen in 40th European Conference on Object-Oriented Programming (ECOOP 2026). Ed.: R. Krebbers
Veranstaltung 40th European Conference on Object-Oriented Programming (ECOOP 2026), Brüssel, Belgien, 29.06.2026 – 03.07.2026
Auflage 40
Verlag Schloss Dagstuhl - Leibniz-Zentrum für Informatik (LZI)
Seiten 413-442
Serie Leibniz International Proceedings in Informatics (LIPIcs)
Schlagwörter Relational Numerical Analysis, Recency Abstraction, Software and its engineering → Automated static analysis
Nachgewiesen in OpenAlex
KIT – Die Universität in der Helmholtz-Gemeinschaft
KITopen Landing Page