An Automata-Theoretic Approach to Linear Temporal Logic
introduction to automata theory , languages and computation .