Blum, Avrim ; Hopcroft, John E. ; Kannan, Ravindran