Abstract. This paper addresses the problem of automatically generating quan-tified invariants for programs that manipulate singly and doubly linked-list data structures. Our algorithm is property-directed—i.e., its choices are driven by the properties to be proven. The algorithm is able to establish that a correct pro-gram has no memory-safety violations—e.g., null-pointer dereferences, double frees—and that data-structure invariants are preserved. For programs with errors, the algorithm produces concrete counterexamples. More broadly, the paper describes how to integrate IC3 with full predicate ab-straction. The analysis method is complete in the following sense: if an inductive invariant that proves that the program satisfies a given prop...
Abstract. Shape analyses are often imprecise in their numerical reasoning, whereas numerical static ...
We introduce \emph{field constraint analysis}, a new technique for verifying data structure invarian...
This paper concerns the question of how to create abstractions that are useful for program analysis....
Shape analysis deals with the synthesis of invariants for programs manipulating heap-allocated data...
Abstract. We propose a logic-based framework for automated reasoning about sequential programs manip...
One of the main challenges in the verification of software systems is the analysis of unbounded data...
Shape analysis algorithms conservatively verify imperative programs and algorithms that use destruct...
Shape analysis concerns the problem of determining \shape invariants" for programs that perform...
Abstract. The research in this proposal is aimed at creating a theo-rem proving framework that will ...
Verification of programs requires reasoning about sets of program states. In case of programs manip...
Shape analysis is a static analysis of the source code of a program to determine shapes and manipula...
This dissertation presents a novel approach for generating likely structural invariants of complex d...
© Springer Nature Switzerland AG 2018. Knowing the shapes of dynamic data structures is key when for...
We investigate description logics as a framework for symbolic shape analysis. We propose a predicate...
AbstractWe define a new decidable logic for expressing and checking invariants of programs that mani...
Abstract. Shape analyses are often imprecise in their numerical reasoning, whereas numerical static ...
We introduce \emph{field constraint analysis}, a new technique for verifying data structure invarian...
This paper concerns the question of how to create abstractions that are useful for program analysis....
Shape analysis deals with the synthesis of invariants for programs manipulating heap-allocated data...
Abstract. We propose a logic-based framework for automated reasoning about sequential programs manip...
One of the main challenges in the verification of software systems is the analysis of unbounded data...
Shape analysis algorithms conservatively verify imperative programs and algorithms that use destruct...
Shape analysis concerns the problem of determining \shape invariants" for programs that perform...
Abstract. The research in this proposal is aimed at creating a theo-rem proving framework that will ...
Verification of programs requires reasoning about sets of program states. In case of programs manip...
Shape analysis is a static analysis of the source code of a program to determine shapes and manipula...
This dissertation presents a novel approach for generating likely structural invariants of complex d...
© Springer Nature Switzerland AG 2018. Knowing the shapes of dynamic data structures is key when for...
We investigate description logics as a framework for symbolic shape analysis. We propose a predicate...
AbstractWe define a new decidable logic for expressing and checking invariants of programs that mani...
Abstract. Shape analyses are often imprecise in their numerical reasoning, whereas numerical static ...
We introduce \emph{field constraint analysis}, a new technique for verifying data structure invarian...
This paper concerns the question of how to create abstractions that are useful for program analysis....