Introduction To The Theory Of Computation - Sipser (Michael)
25