Shared mutable objects pose grave challenges in reasoning, especially for data abstraction and modularity. This paper presents a novel logic for erroravoiding partial correctness o...
Anindya Banerjee, David A. Naumann, Stan Rosenberg
Abstract. Dynamicprogramming is an importantalgorithm design technique. It is used for solving problems whose solutions involve recursively solving subproblems that share subsubpro...
Abstract. Parallelizing a sequential algorithm—i.e., manually or automatically converting it into an equivalent parallel distributed algorithm—is an important problem. Ideally,...
Lei Pan, Ming Kin Lai, Michael B. Dillencourt, Lub...
In joint work with Peter O’Hearn and others, based on early ideas of Burstall, we have developed an extension of Hoare logic that permits reasoning about low-level imperative pr...
Abstract. We describe a programming interface for parallel computing on NUMA (NonUniform Memory Access) shared memory machines. Although the interest in this architecture is rapidl...
Marcus Dormanns, Walter Sprangers, Hubert Ertl, Th...