Software model checking

R Jhala, R Majumdar - ACM Computing Surveys (CSUR), 2009 - dl.acm.org
Software model checking Page 1 21 Software Model Checking RANJIT JHALA University of
California, San Diego and RUPAK MAJUMDAR University of California, Los Angeles We survey …

Compositional shape analysis by means of bi-abduction

C Calcagno, D Distefano, P O'Hearn… - Proceedings of the 36th …, 2009 - dl.acm.org
This paper describes a compositional shape analysis, where each procedure is analyzed
independently of its callers. The analysis uses an abstract domain based on a restricted …

Compositional shape analysis by means of bi-abduction

C Calcagno, D Distefano, PW O'hearn… - Journal of the ACM (JACM …, 2011 - dl.acm.org
The accurate and efficient treatment of mutable data structures is one of the outstanding
problem areas in automatic program verification and analysis. Shape analysis is a form of …

Mostly-automated verification of low-level programs in computational separation logic

A Chlipala - Proceedings of the 32nd ACM SIGPLAN conference on …, 2011 - dl.acm.org
Several recent projects have shown the feasibility of verifying low-level systems software.
Verifications based on automated theorem-proving have omitted reasoning about first-class …

The Bedrock structured programming system: Combining generative metaprogramming and Hoare logic in an extensible program verifier

A Chlipala - Proceedings of the 18th ACM SIGPLAN international …, 2013 - dl.acm.org
We report on the design and implementation of an extensible programming language and its
intrinsic support for formal verification. Our language is targeted at low-level programming of …

Natural proofs for structure, data, and separation

X Qiu, P Garg, A Ştefănescu, P Madhusudan - ACM SIGPLAN Notices, 2013 - dl.acm.org
We propose natural proofs for reasoning with programs that manipulate data-structures
against specifications that describe the structure of the heap, the data stored within it, and …

Detecting inefficiently-used containers to avoid bloat

G Xu, A Rountev - Proceedings of the 31st ACM SIGPLAN Conference …, 2010 - dl.acm.org
Runtime bloat degrades significantly the performance and scalability of software systems.
An important source of bloat is the inefficient use of containers. It is expensive to create …

Sound automation of magic wands

T Dardinier, G Parthasarathy, N Weeks, P Müller… - … on Computer Aided …, 2022 - Springer
The magic wand-∗(also called separating implication) is a separation logic connective
commonly used to specify properties of partial data structures, for instance during iterative …

Static race detection for device drivers: the Goblint approach

V Vojdani, K Apinis, V Rõtov, H Seidl, V Vene… - Proceedings of the 31st …, 2016 - dl.acm.org
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 …

Quantitative separation logic: a logic for reasoning about probabilistic pointer programs

K Batz, BL Kaminski, JP Katoen, C Matheja… - Proceedings of the ACM …, 2019 - dl.acm.org
We present quantitative separation logic (QSL). In contrast to classical separation logic, QSL
employs quantities which evaluate to real numbers instead of predicates which evaluate to …