Thesis (Ph.D.)--University of Washington, 2014This dissertation proposes a family of techniques for static verication of sequential and concurrent imperative programs by leveraging fine-grained characterizations of mutation. The key idea is that by attaching to each reference in a program (1) a restriction on mutations permitted using that reference, and (2) a characterization of possible interference through other aliases, a type system can reason about what properties are preserved by all mutations in a program. This thesis develops four variations on this idea: (1) We adapt reference immutability to support data-race-free concurrent programming. (2) We generalize reference immutability to rely-guarantee references, allowing two-state inv...
Linear references are guaranteed to be free from aliases. This is a strong property that simplifies ...
In this thesis, we address the problem of verifying the functional correctness of concurrent program...
We present a lightweight approach to Hoare-style specifications for fine-grained concurrency, based ...
Thesis (Ph.D.)--University of Washington, 2014This dissertation proposes a family of techniques for ...
Reasoning about side effects and aliasing is the heart of verifying imperative programs. Unrestricte...
It can be difficult to write safe concurrent programs which use shared mutable state. Subtle mistake...
The proliferation of shared mutable state in object-orientedprogramming complicates software develop...
The proliferation of shared mutable state in object-oriented programming complicates software develo...
Mutable state can be useful in certain algorithms, to structure programs, or for efficiency purpose...
AbstractIn this article we use model checking techniques to debug Concurrent Haskell programs. LTL f...
Recent program logics based on separation logic emphasise a modular approach to proving functional c...
We present CoCo, the Concurrency Commentator, a tool that recovers a declarative view of concurrent ...
AbstractWe present a trace semantics for a language of parallel programs which share access to mutab...
In the modern, multi-threaded, multi-core programming environment, correctly managing system resourc...
This thesis is not available on this repository until the author agrees to make it public. If you ar...
Linear references are guaranteed to be free from aliases. This is a strong property that simplifies ...
In this thesis, we address the problem of verifying the functional correctness of concurrent program...
We present a lightweight approach to Hoare-style specifications for fine-grained concurrency, based ...
Thesis (Ph.D.)--University of Washington, 2014This dissertation proposes a family of techniques for ...
Reasoning about side effects and aliasing is the heart of verifying imperative programs. Unrestricte...
It can be difficult to write safe concurrent programs which use shared mutable state. Subtle mistake...
The proliferation of shared mutable state in object-orientedprogramming complicates software develop...
The proliferation of shared mutable state in object-oriented programming complicates software develo...
Mutable state can be useful in certain algorithms, to structure programs, or for efficiency purpose...
AbstractIn this article we use model checking techniques to debug Concurrent Haskell programs. LTL f...
Recent program logics based on separation logic emphasise a modular approach to proving functional c...
We present CoCo, the Concurrency Commentator, a tool that recovers a declarative view of concurrent ...
AbstractWe present a trace semantics for a language of parallel programs which share access to mutab...
In the modern, multi-threaded, multi-core programming environment, correctly managing system resourc...
This thesis is not available on this repository until the author agrees to make it public. If you ar...
Linear references are guaranteed to be free from aliases. This is a strong property that simplifies ...
In this thesis, we address the problem of verifying the functional correctness of concurrent program...
We present a lightweight approach to Hoare-style specifications for fine-grained concurrency, based ...