Kalmer Apinis

dblp:66/11140 · DBLP profile ↗
← Back
8ranked-venue papers
3as first author
3since 2021 · last 2023
0009-0006-2395-6584ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 8 · 3 first-author · 3 since 2021
YearPublicationVenuePosition
2023 Context-Sensitive Meta-Constraint Systems for Explainable Program Analysis
abstract
Abstract We show how to generate a constraint system of symbolic expressions as part of an inter-procedural constraint-system–based program analysis such that any chosen slice of the intended analysis may be computed through the evaluation of the symbolic constraints. Thus, our method ensures that the computed expressions provide genuine explanations for the chosen analysis slice. The resulting system is then annotated with program location information, translated into closed-form expressions, and simplified to yield a human-readable justification for the analyzer’s verdict. Justifications are given using program locations, constants from the program, abstract lattice operations, loops in the analysis, and computed results.
Kalmer Apinis, Vesal Vojdani
TACAS (2)1
2021 Improving Thread-Modular Abstract Interpretation
Michael Schwarz 0007, Simmo Saan, Helmut Seidl, Kalmer Apinis, Julian Erhard, Vesal Vojdani
SAS4
2021 Goblint: Thread-Modular Abstract Interpretation Using Side-Effecting Constraints - (Competition Contribution)
abstract
Abstract Goblintis a static analysis framework for C programs specializing in data race analysis. It relies on thread-modular abstract interpretation where thread interferences are accounted for by means of flow-insensitive global invariants.
Simmo Saan, Michael Schwarz 0007, Kalmer Apinis, Julian Erhard, Helmut Seidl, Ralf Vogler, Vesal Vojdani
TACAS (2)3
2016 Static race detection for device drivers: the Goblint approach
abstract
Device drivers rely on fine-grained locking to ensure safe access to shared data structures. For human testers, concurrency makes such code notoriously hard to debug; for automated reasoning, dynamically allocated memory and low-level pointer manipulation poses significant challenges. We present a flexible approach to data race analysis, implemented in the open source Goblint static analysis framework, that combines different pointer and value analyses in order to handle a wide range of locking idioms, including locks allocated dynamically as well as locks stored in arrays. To the best of our knowledge, this is the most ambitious effort, having lasted well over ten years, to create a fully automated static race detection tool that can deal with most of the intricate locking schemes found in Linux device drivers. Our evaluation shows that these analyses are sufficiently precise, but practical use of these techniques requires inferring environmental and domain-specific assumptions.
Vesal Vojdani, Kalmer Apinis, Vootele Rõtov, Helmut Seidl, Varmo Vene, Ralf Vogler
ASE2
2016 Efficiently intertwining widening and narrowing
Gianluca Amato, Francesca Scozzari, Helmut Seidl, Kalmer Apinis, Vesal Vojdani
Sci. Comput. Program.4
2014 Precise Analysis of Value-Dependent Synchronization in Priority Scheduled Programs
Martin D. Schwarz, Helmut Seidl, Vesal Vojdani, Kalmer Apinis
VMCAI4
2013 How to combine widening and narrowing for non-monotonic systems of equations
abstract
Non-trivial analysis problems require complete lattices with infinite ascending and descending chains. In order to compute reasonably precise post-fixpoints of the resulting systems of equations, Cousot and Cousot have suggested accelerated fixpoint iteration by means of widening and narrowing.
Kalmer Apinis, Helmut Seidl, Vesal Vojdani
PLDI1
2012 Side-Effecting Constraint Systems: A Swiss Army Knife for Program Analysis
Kalmer Apinis, Helmut Seidl, Vesal Vojdani
APLAS1