A Categorical Basis for Robust Program Analysis
Zachary Kincaid, Shaowei Zhu
摘要
Users of program analyses expect that results change predictably in response to changes in their programs, but many analyses do not ensure such robustness. This paper introduces a theoretical framework that provides a unified language to articulate robustness properties. We adopt a categorical view in which programs and their properties form a category, and robust analyses are characterized as structure-preserving functors. A diverse range of robustness properties-e.g., invariance under variable renaming and monotonicity-arise from instantiating the category's arrows accordingly. Beyond formulating the meaning of robustness, this paper provides methods for achieving it. The first is a general recipe for designing robust analyses, by lifting a sound and robust analysis from a restricted (sub-Turing) model of computation to a sound and robust analysis for general programs. This recipe demystifies the design of several existing loop summarization and termination analyses by showing they are instantiations of this general recipe, and furthermore elucidates their robustness properties. The second is a characterization of a sense in which an algebraic program analysis is robust, provided that it is comprised of robust operators. In particular, we show that such analyses behave predictably under common refactoring patterns, such as variable renaming and loop unrolling.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
它引用的顶会 Paper5
- Termination analysis without the tearsShaowei Zhu, Zachary KincaidPLDI 2021 · 被引用 16 次
- Solvable Polynomial Ideals: The Ideal Reflection for Program AnalysisJohn Cyphert, Zachary KincaidPOPL 2024 · 被引用 11 次
- Compiling with Abstract InterpretationDorian Lesbre, Matthieu LemerrePLDI 2024 · 被引用 6 次
- Monotone Procedure Summarization via Vector Addition Systems and Inductive PotentialsNikhil Pimpalkhare, Zachary KincaidOOPSLA 2024 · 被引用 4 次
- Breaking the Mold: Nonlinear Ranking Function Synthesis Without TemplatesShaowei Zhu, Zachary KincaidCAV 2024 · 被引用 2 次
相关 Paper
- Automatic and efficient variability-aware lifting of functional programsRamy Shahin, Marsha ChechikOOPSLA 2020 · 被引用 18 次
- Monotonicity and the Precision of Program AnalysisMarco Campion, Mila Dalla Preda, Roberto Giacobazzi, Caterina UrbanPOPL 2024 · 被引用 1 次
- Semantic Analysis of Macro Usage for PortabilityBrent Pappas, Paul GazzilloICSE 2024 · 被引用 2 次
- A Taxonomy of Hoare-Like Logics: Towards a Holistic View using Predicate Transformers and Kleene Algebras with Top and TestsLena Verscht, Benjamin Lucien KaminskiPOPL 2025 · 被引用 3 次
- Verifying observational robustness against a c11-style memory modelRoy David Margalit, Ori LahavPOPL 2021 · 被引用 22 次
