Problem solving in automata, languages, and complexity - Ding-zhu Du (John Wiley and Sons, 2001)