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 …
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 …
problem areas in automatic program verification and analysis. Shape analysis is a form of …
Infer: An automatic program verifier for memory safety of C programs
C Calcagno, D Distefano - NASA Formal Methods Symposium, 2011 - Springer
Infer is a new automatic program verification tool aimed at proving memory safety of C
programs. It attempts to build a compositional proof of the program at hand by composing …
programs. It attempts to build a compositional proof of the program at hand by composing …
Scalable shape analysis for systems code
Pointer safety faults in device drivers are one of the leading causes of crashes in operating
systems code. In principle, shape analysis tools can be used to prove the absence of this …
systems code. In principle, shape analysis tools can be used to prove the absence of this …
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 …
commonly used to specify properties of partial data structures, for instance during iterative …
Automatic numeric abstractions for heap-manipulating programs
We present a logic for relating heap-manipulating programs to numeric abstractions. These
numeric abstractions are expressed as simple imperative programs over integer variables …
numeric abstractions are expressed as simple imperative programs over integer variables …
Automated cyclic entailment proofs in separation logic
We present a general automated proof procedure, based upon cyclic proof, for inductive
entailments in separation logic. Our procedure has been implemented via a deep …
entailments in separation logic. Our procedure has been implemented via a deep …
A decision procedure for satisfiability in separation logic with inductive predicates
We show that the satisfiability problem for the" symbolic heap" fragment of separation logic
with general inductively defined predicates---which includes most fragments employed in …
with general inductively defined predicates---which includes most fragments employed in …
Byte-precise verification of low-level list manipulation
K Dudka, P Peringer, T Vojnar - … Symposium, SAS 2013, Seattle, WA, USA …, 2013 - Springer
We propose a new approach to shape analysis of programs with linked lists that use low-
level memory operations. Such operations include pointer arithmetic, safe usage of invalid …
level memory operations. Such operations include pointer arithmetic, safe usage of invalid …