Theoretical computer science introduction to automata, computability, complexity, algorithmics, randomization, communication, and cryptography - Hromkoviéc, Juraj 1958- (Texts in theoretical computer science., 2010)