AbstractWe define a new decidable logic for expressing and checking invariants of programs that manipulate dynamically-allocated objects via pointers and destructive pointer updates. The main feature of this logic is the ability to limit the neighborhood of a node that is reachable via a regular expression from a designated node. The logic is closed under boolean operations (entailment, negation) and has a finite model property. The key technical result is the proof of decidability.We show how to express preconditions, postconditions, and loop invariants for some interesting programs. It is also possible to express properties such as disjointness of data-structures, and low-level heap mutations. Moreover, our logic can express properties of...
We consider the problem of automatically verifying programs that manipulate a dynamic heap, maintain...
This paper shows that it is possible to reason about the safety and termination of programs handling...
Abstract. We propose a logic-based framework for automated reasoning about sequential programs manip...
We define a new decidable logic for expressing and checking invariants of programs that manipulate d...
AbstractWe define a new decidable logic for expressing and checking invariants of programs that mani...
This paper shows how to harness existing theorem provers for first-order logic to automatically veri...
The key to many approaches to reason about pointerbased data structures is the availability of a dec...
Abstract. This paper proposes a novel method of harnessing existing SAT solvers to verify reachabili...
. This paper aims to provide a better formalism for describing properties of linked data structures ...
The key to many approaches to reason about pointer-based data structures is the availability of a de...
We propose a bounded model checking procedure for programs manipulating dynamically allocated pointe...
We propose a bounded model checking procedure for programs manipulating dynamically allocated pointe...
In heap-based languages, knowing that a variable x points to an acyclic data structure is useful for...
First order logic with transitive closure, and separation logic enable elegant interactive verificat...
AbstractThe paper deals with the problem of automatic verification of programs with dynamic linked d...
We consider the problem of automatically verifying programs that manipulate a dynamic heap, maintain...
This paper shows that it is possible to reason about the safety and termination of programs handling...
Abstract. We propose a logic-based framework for automated reasoning about sequential programs manip...
We define a new decidable logic for expressing and checking invariants of programs that manipulate d...
AbstractWe define a new decidable logic for expressing and checking invariants of programs that mani...
This paper shows how to harness existing theorem provers for first-order logic to automatically veri...
The key to many approaches to reason about pointerbased data structures is the availability of a dec...
Abstract. This paper proposes a novel method of harnessing existing SAT solvers to verify reachabili...
. This paper aims to provide a better formalism for describing properties of linked data structures ...
The key to many approaches to reason about pointer-based data structures is the availability of a de...
We propose a bounded model checking procedure for programs manipulating dynamically allocated pointe...
We propose a bounded model checking procedure for programs manipulating dynamically allocated pointe...
In heap-based languages, knowing that a variable x points to an acyclic data structure is useful for...
First order logic with transitive closure, and separation logic enable elegant interactive verificat...
AbstractThe paper deals with the problem of automatic verification of programs with dynamic linked d...
We consider the problem of automatically verifying programs that manipulate a dynamic heap, maintain...
This paper shows that it is possible to reason about the safety and termination of programs handling...
Abstract. We propose a logic-based framework for automated reasoning about sequential programs manip...