Elements of the theory of computation / Harry R. Lewis, Christos H. Papadimitriou