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