In this talk, we describe environment abstraction, a new form of abstraction for parameterized systems. Characteristically, environment abstraction views a concurrent system from the point of view of a single process. We argue that for systems designed by human programmers this Ptolemaic view of the world yields precise and feasible abstract models. We survey examples of distributed algorithms and cache coherence protocols which were successfully verified by environment abstraction.
Joint Work with Ed Clarke and Muralidhar Talupur