International audienceIn this paper we analyze the complexity of checking safety and termination properties, for a very simple, yet non-trivial, class of programs with singly-linked list data structures. Since, in general, programs with lists are known to have the power of Turing machines, we restrict the control structure, by forbidding nested loops and destructive updates. Surprisingly, even with these simplifying conditions, verifying safety and termination for programs working on heaps with more than one cycle are undecidable, whereas decidability can be established when the input heap may have at most one loop. The proofs for both the undecidability and the decidability results rely on non-trivial number-theoretic results
We present a new approach for automatic verification of data-dependent programs manipulating dynamic...
We describe a new program termination analysis designed to handle imperative programs whose termina...
First order logic with transitive closure, and separation logic enable elegant interactive verificat...
International audienceIn this paper we analyze the complexity of checking safety and termination pro...
This paper shows that it is possible to reason about the safety and termination of programs handling...
Abstract. We aim at checking safety and temporal properties over models repre-senting the behavior o...
Abstract. This paper shows that it is possible to reason about the safety and termination of program...
International audienceWe address the problem of verifying programs manipulating one-selector linked ...
AbstractWe define a new decidable logic for expressing and checking invariants of programs that mani...
We define a new decidable logic for expressing and checking invariants of programs that manipulate d...
We propose a novel approach to proving the termination of heap-manipulating programs, which combines...
Almost all modern imperative programming languages include operations for dynamically manipulating t...
This paper shows how to harness existing theorem provers for first-order logic to automatically veri...
In heap-based languages, knowing that a variable x points to an acyclic data structure is useful for...
For programs whose data variables range over Boolean or finite domains, program verification is deci...
We present a new approach for automatic verification of data-dependent programs manipulating dynamic...
We describe a new program termination analysis designed to handle imperative programs whose termina...
First order logic with transitive closure, and separation logic enable elegant interactive verificat...
International audienceIn this paper we analyze the complexity of checking safety and termination pro...
This paper shows that it is possible to reason about the safety and termination of programs handling...
Abstract. We aim at checking safety and temporal properties over models repre-senting the behavior o...
Abstract. This paper shows that it is possible to reason about the safety and termination of program...
International audienceWe address the problem of verifying programs manipulating one-selector linked ...
AbstractWe define a new decidable logic for expressing and checking invariants of programs that mani...
We define a new decidable logic for expressing and checking invariants of programs that manipulate d...
We propose a novel approach to proving the termination of heap-manipulating programs, which combines...
Almost all modern imperative programming languages include operations for dynamically manipulating t...
This paper shows how to harness existing theorem provers for first-order logic to automatically veri...
In heap-based languages, knowing that a variable x points to an acyclic data structure is useful for...
For programs whose data variables range over Boolean or finite domains, program verification is deci...
We present a new approach for automatic verification of data-dependent programs manipulating dynamic...
We describe a new program termination analysis designed to handle imperative programs whose termina...
First order logic with transitive closure, and separation logic enable elegant interactive verificat...