Abstract. We investigate ways to specify and check, at runtime, assertions that express properties of dynamically manipulated linked-list data structures. Check-ing an assertion involving whether pointers point to a valid linked list and sepa-ration properties of these lists typically requires linear or even quadratic time on the size of the heap. Our main contribution is a way to scale this checking by or-ders of magnitude, using a novel idea called abstraction-guided runtime checking, whereby we maintain an accurate abstraction of the dynamic heap by utilizing the evolving runtime state, and where the abstraction helps in checking the runtime assertions much faster. We develop this synergistic combination of abstractions and runtime check...
Abstract. We introduce streaming data string transducers that map input data strings to output data ...
Runtime Verification is a quickly growing technique for providing many of the guarantees of formal v...
AbstractWe present a runtime technique for checking that a concurrent implementation of a data struc...
Abstract. C programs that manipulate list-based dynamic data struc-tures remain a challenging target...
A number of approaches for helping programmers detect incorrect program behaviors are based on combi...
C programs that manipulate list-based dynamic data structures remain a challenging target for static...
In order to aid in the process of detecting incorrect pro- gram behaviors, a number of ap...
One of the most attractive features of untyped languages for programmers is the flexibility in term ...
Programs routinely use complicated pointer (linked list-type) data structures such as linked lists, ...
Instrumenting programs for performing run-time checking of properties, such as regular shapes, is a ...
Instrumenting programs for performing run-time checking of properties, such as regular shapes, is a ...
An algorithm is presented for automatically inferring loop invariants in separation logic for impera...
Abstract. Executable formal contracts help verify a program at run-time when static verification fai...
An algorithm is presented for automatically inferring loop invariants in separation logic for impera...
One of the most attractive features of untyped languages is the flexibility in term creation and man...
Abstract. We introduce streaming data string transducers that map input data strings to output data ...
Runtime Verification is a quickly growing technique for providing many of the guarantees of formal v...
AbstractWe present a runtime technique for checking that a concurrent implementation of a data struc...
Abstract. C programs that manipulate list-based dynamic data struc-tures remain a challenging target...
A number of approaches for helping programmers detect incorrect program behaviors are based on combi...
C programs that manipulate list-based dynamic data structures remain a challenging target for static...
In order to aid in the process of detecting incorrect pro- gram behaviors, a number of ap...
One of the most attractive features of untyped languages for programmers is the flexibility in term ...
Programs routinely use complicated pointer (linked list-type) data structures such as linked lists, ...
Instrumenting programs for performing run-time checking of properties, such as regular shapes, is a ...
Instrumenting programs for performing run-time checking of properties, such as regular shapes, is a ...
An algorithm is presented for automatically inferring loop invariants in separation logic for impera...
Abstract. Executable formal contracts help verify a program at run-time when static verification fai...
An algorithm is presented for automatically inferring loop invariants in separation logic for impera...
One of the most attractive features of untyped languages is the flexibility in term creation and man...
Abstract. We introduce streaming data string transducers that map input data strings to output data ...
Runtime Verification is a quickly growing technique for providing many of the guarantees of formal v...
AbstractWe present a runtime technique for checking that a concurrent implementation of a data struc...