We describe a simple algorithm for level-wise enumeration of the global states of a distributed computation. In addition to fast execution, it requires working memory for only two global states plus a variable amount of memory which permits the trading of higher speed for storage. Furthermore, we present a new caching strategy that speeds up the state enumeration algorithm described in [1].