Back to the bookshelf

Typographic jacket · original cover not fetched

FROM THE SHARED SHELF · 2006–2026 SAMPLE

Introduction to the Theory of Computation

Michael Sipser

8 readers recommend it across 6 discussions

Topics are model-inferred labels.

Keep it on your reading list

THE WORD OF MOUTH

What made it worth passing on?

Original Hacker News comments, in the readers’ own words.

f1shy
Computer science: Knuth's TAOCP. And Sipser's Introduction to the Theory of Computation. Programming: SICP, K&R, and Stroustrup. Siebel's Practical common lisp. Artificial intelligence: AI a modern approach. Signals and Systems: Oppenheim's book Probability and statistics: Probability Theory: The Logic of Science by Jaynes
OJFord
The Annotated Turing by Petzold (On Computable Numbers broken down, annotated, explained, and talked around. Would recommend to anyone interested in CS but without (yet) having formally studied it. I read it in sixth form, and it probably swung me more towards CS from my since-childhood intention of studying electronics. (Ended up doing a mix, but applied to some straight CS too.)) Theory of Computation by Sipser. (More subject specific and just a textbook really, I just thought it was a really great one and was able to read it ahead of my most relevant course.)

Also recommended in this reply

bo1024
CS is like math, not philosophy -- the fundamental ideas are gradually refined by a community, and eventually someone puts them into a book. Usually there are many books and people have different favorites. So the closest parallels are original research papers like Turing's and Shannon's; but you're probably better off reading more recent textbooks. That said, to balance out the heavy emphasis on programming and engineering books here, some recommendations: - Sipser. Introduction to the Theory of Computation. - Russell, Norvig. AI: A Modern Approach. - For algorithms I don't have a preference. There is Dasgupta-Papadimitriou-Vazirani; Cormen-Leisersen-Rivest-Stein; Kleinberg-Tardos; and more. A bit farther from core CS, I also like: - Cover, Thomas. Elements of Information Theory. - Li, Vitanyi. An Introduction to Kolmogorov Complexity and Its Applications
T-R
It really depends on what you feel you're missing and what you're hoping to do (definitions of "daily work" vary widely). If you're looking to get up on theory by doing your own program of sorts, you could do worse than start with these (in roughly this order): Structure and Interpretation of Computer Programs - Abelson, Sussman, and Sussman Introduction to Algorithms - Cormen, Leiserson, Rivest, and Stein The Art of Assembly Language - Hyde a digital logic book (not sure which is most recommended), and an architecture book (see reply by tftfmacedo) Modern Operating Systems - Tanenbaum Introduction to the Theory of Computation - Sipser Compilers: Principles, Techniques, and Tools - Aho, Lam, Sethi, and Ullman (a.k.a. "Dragon Book") Programming Language Pragmatics - Scott…