|
|||||||||||||||||||||||||||||||||||
|
36 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
30 of 32 people found the following review helpful:
4.0 out of 5 stars
An Amazing Book on tough topic,
By Sean Francisco Smith "New York Jazz MythMaker" (Brooklyn, NY United States) - See all my reviews (REAL NAME)
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
This was one of my favorite textbooks from college. In fact, I still have it on my shelf. It is a fantastic textbook, attemtping to introduce the Theoretical Foundations of Computer Science, in essence the science. In covering this, it moves into topics such as Finite Automata, Parsing, and Turing Machines.I feel the negative reviews are due to some confusion. This is not an algorithms book, or a programming book, or an "intro to AI" book. It's a Math textbook. It's language is one of theorems and proofs, and this would be hard going for someone not comfortable with a college-level abstract mathematics background. For those of you who have such a background, this book covers a topic where mathematics can become elegant. A physics major friend of mine fell in love with it, and he had no interest in Comp Sci!! For it's topic, a similar book would be Feynman's lecture notes on Physics. Both those volumes and this book were attempt to bring the highest levels of theory within the field to the undergraduate audience. Both succeed.
14 of 14 people found the following review helpful:
5.0 out of 5 stars
You'll love it or hate it.,
By Jason T (Canada) - See all my reviews
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
I discuss the first edition- I havent read the updated version. People have strong opinions about this classic book. Many students have it forced upon them for a class and they absolutely despise it. But a small number of people like me loved it, in fact its still one of my favorite textbooks. I first learned automata and computation theory here (which explains some of my fondness for the book), and it seemed kind of dull and strange until about halfway through- at which point I realized it's all very cool and I subsequently poured over the entire book several times. To get through it you need to enjoy mathematics and careful, rigorous definitions and proofs- rather than viewing these things as pointless obscurantism or pedantic arrogance. Engineering students tend to find the book dense, boring, and too difficult. Some people are intimidated by the sheer volume of special notation used. But if you're inclined towards mathematics or theoretical work you'll appreciate the extra rigor and precision (compared to most computation theory books). There are a few rough spots in it (I admit the development of the Herbrand expansion theorem in the last chapter is a mess, and the coverage of parsing theory isn't great), and some of the terminology and approaches are a little nonstandard, but overall a great book that will give you the foundation to begin studying computational complexity theory, recursive function theory, or mathematical logic. Note that the second edition has removed the chapters on logic, and I've heard its watered down. If you want something a little harder and more pure-math oriented, try Martin Davis's Computability and Unsolvability.
7 of 7 people found the following review helpful:
5.0 out of 5 stars
A good textbook,
By Jill Malter (jillmalter@aol.com) - See all my reviews
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
I taught a couple of classes from the first edition of this textbook, and my students did fairly well. On the whole, they were able to understand the material and solve the homework problems. I certainly wouldn't mind teaching a class on this subject from the second edition as well, which I feel is a mild improvement over the first one.
The chapter on finite automata is excellent. And the material on context-free languages is thorough and well written. So is the introduction to Turing machines. Of course, the book then spends a fair amount of time on recursive function theory. That is exactly what I want it to do. And I think the chapter on unsolvability, starting with the Halting Problem, is excellent. The style, especially of the first edition, is a little formal. But this is serious mathematical material, and I think it is not asking too much to require students to handle this subject in such a manner.
4 of 4 people found the following review helpful:
4.0 out of 5 stars
First and foremost, a math book,
By
Amazon Verified Purchase(What's this?)
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
I enjoyed this book because I enjoy formal mathematics. This is not an applications book, but a formal study of the mathematics that underly algorithmic design and analysis. I'm no math wizard, and I found this book readable (but I had to take it very slowly). The course for which I bought the book only covered chapters 1 - 4 and glossed over the final 3 chapters, but I intend to read the rest over the summer between semesters because it's so well and thoroughly written. This book is *dense*. I had to re-read everything three times before I absorbed it all, but ultimately I've understood everything I've read. The hardest parts to understand were the formal "proofs by induction" on the lengths of strings and sets - and, as any math student knows, you can gloss over the proofs on the first reading. A lot of the formal definitions (finite automata, pushdown automata, Turing machines, context-free grammars, etc.) baffled me on the first reading, but after reviewing the examples and working through a few problems, I could go back, re-read the formal definition and understand it.
My principal complaint with this book, and the only reason I gave this book a four-star review instead of five, is the same complaint I have with a lot of other textbooks - there are no answers for any of the problems (nor can I find a supplement or a study guide or any help anywhere). Given the nature of the problems themselves, it's impossible to verify your answers. This seems to be a trend in textbooks, and it's extremely frustrating. I plan to self-study the last half of the book in the next few months, but without a self-study guide, I'm pretty much out of luck if I can't solve a problem.
5 of 6 people found the following review helpful:
5.0 out of 5 stars
A classic text on the theory of computation.,
By
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
Elements of the Theory of Computation, by Lewis and Papadimitriou, is something of a classic in the theory of computation. Of the many books I have used to teach the theory of computation, this is the one I have been most satisfied with. It covers all of the fundamental concepts one would expect in such a book (more on this below) but offers a bit more mathematical rigor than most other books I've seen on this topic. It also covers one topic that is rarely even mentioned in other textbooks: the composition of Turing machines.The book begins with a brief introduction to the relevant discrete mathematics (such as set theory and cardinality) and proof techniques, then introduces the concepts of finite automata, regular expressions, and regular languages, describing their interrelationships. It proceeds to context-free languages, pushdown automata, parse trees, pumping lemmas, Turing machines, undecidability, computational complexity, and the theory of NP-completeness. (These are all standard topics.) Along the way, Lewis and Papadimitriou also introduce random access Turing machines and recursive functions, and do a nice job of explaining the halting problem and how this translates into undecidable problems involving grammars, various questions about Turing machines, and even two-dimensional tiling problems. All of these topics are covered with an appropriate mix of formalism and intuition. Perhaps the feature I like best is the discussion of composing simple Turing machines to obtain more complex and interesting machines. The authors even introduce a convenient graphical notation for combining Turing machines and spell out specific rules for composition. While most authors are forced to immediately employ heuristics in reasoning about complex Turing machines (lest the notation become overwhelming), Lewis and Papadimitriou are able to keep the discussion more formal and structured by virtue of their Turing machine "schema". I believe this makes their arguments more rigorous and even easier to follow. This is clearly one of the best books on the theory of computation. However, be aware that there have been very significant changes from the first edition, which was lengthier and more thorough. I confess that I actually prefer the first edition, as it contains nice sections on logic and predicate calculus (which have been removed from the 2nd edition), and is a bit more formal (albeit with some fairly awful notation). The 2nd edition is definitely crisper, with much cleaner notation; it is clearly more student-friendly, which was presumably the aim of the new edition. If you wish to teach an introduction to theoretical computer science, or wish to learn it on your own, this would be a fine book to use. It's hard to go wrong with this classic.
9 of 12 people found the following review helpful:
5.0 out of 5 stars
At least the old edition of this book is great,
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
The other reviewers seem to agree in that this book is not to be recommended. I don't know the edition that is reviewed here (I browsed through it once and it seems to be heavily abridged compared to the old edition).The older edition is considered by me and most of my fellow students one of the best books on the matter (if not the best). Keep in mind that it is a book about the THEROTICAL foundations of computer science and not a programming or algorithm text book for beginners. Of course all the basic proofs of "long known" theorems have to be explained... Since I don't know how the undergraduate maths knowledge in the US is, I can't say if the explanations presented in this book are suitable for US undergraduates. I however (and I'm by far no maths genius) had no problems in understanding everything when I read the book starting with page one. I used the book as the only preparation material for my undergraduate examination on the subject--although our professor did use another book during his lecture--and I don't regret it. I strongly recommend the book to everyone with a serious interest in theoretical CS, but try to get the old edition (paperback has a red cover, hardcover has a brown cover, the format is slighty larger than A5 papersize).
1 of 1 people found the following review helpful:
5.0 out of 5 stars
The most understandable book on computation theory I have used,
By Charles Ashbacher (Marion, Iowa United States) - See all my reviews (TOP 500 REVIEWER) (VINE VOICE) (HALL OF FAME REVIEWER)
This review is from: Elements of the Theory of Computation (Prentice-Hall software series) (Hardcover)
Approximately two decades ago, I developed a course in the theory of computation for undergraduates. The coverage was finite automata, context-free languages, Turing machines and computational complexity. This was the text that I used and I have never regretted it and neither did the students. They found it to be very understandable, they were generally able to read and follow the proofs. Over the years, I left teaching and have recently come back to it. After using other texts for a course in computation theory in the last few years, next academic year I am going to return to this one.
One of the greatest strengths is the simple form of notation, when using other textbooks I have often said something equivalent to, "I am puzzled why the author used this form of notation for this operation." I have never said that when using this book. The examples are crisp, there are many diagrams and a large number of exercises are included at the ends of the chapters.
1 of 1 people found the following review helpful:
3.0 out of 5 stars
Good book, but lots of typos,
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
I used this book for a Theory of Computation (TOC) course that I did in the 4th year of my college. I must mention that I am a Math major, and had done courses in Mathematical Logic and others BEFORE doing TOC.
TOC is an extremely interesting subject. I had a great instructor for my course, and towards the later part of the course I used this book only for the end of the chapter problems which I found to be very useful in understanding the course contents. This book, unfortunately has a lot of typos. Typos in Mathematical proofs are extremely irritating, because students often end up wasting a lot of time on the proofs with the typos. Another thing that I didnt like about the book was that the authors don't give sufficient examples. The section on turing machines should ideally have examples of machines for various computable functions. The authors give examples for only a few. The few examples given are well explained, but am sure the authors could have done with a some more examples. Similar problems are seen in the sections covering the pumping lemmas. The authors give only a couple of examples wherein they apply the pumping lemma for regular/context-free languages. Too little to help undergraduates master the techniques of using the very versatile and powerful pumping lemmas. They do give a good selection of exercises at the end of the chapter, but if you are using the book for self study, and dont have a good instructor to help you, you are going to have a hard time trying to solve those problems. The exercises require many original ideas, and I don't think the text/solved examples prepare one for that.
7 of 10 people found the following review helpful:
2.0 out of 5 stars
Not a good book,
By M. A. Adnan (Lahore, Pakistan) - See all my reviews
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
The book is comprehensive. It is however not easy to follow and even simple concepts are hidden under mathematical terminology. More time is taken up understanding the math than is needed to understand the concept. It may be good for mathematics students but not for CS students. There are too few solved examples.
6 of 9 people found the following review helpful:
5.0 out of 5 stars
Good books suffer from not being understood!!,
By A Customer
This review is from: Elements of the Theory of Computation (2nd Edition) (Paperback)
I am really surprised sometimes, when I read the reviews about some of the books I have read. Unfortunately, some people lack the required intelligence or background and some probably both to understand such good books and for this reason they give very bad rates. I accept that this is not an easy book, but what I don't accept is to rate a book with 1 star since you couldn't get what it gives.This is one of the best (or at least one of the few) book on theoritical computer science. It is worth to buy it even for the np-completeness chapter that you cannot find anywhere easily. It touches the hardest subjects on this field, and it is of course not an easy book. But with a good undergraduate education on EE, CS, or mathematics, it is not very difficult to grasp the material. |
|
Most Helpful First | Newest First
|
|
Elements of the Theory of Computation (2nd Edition) by Christos H. Papadimitriou (Paperback - August 17, 1997)
$136.00 $102.76
In Stock | ||