Skip to content


The Cali Garmo does Math


Tag: book
Introduction to the theory of computation by Michael Sipser

Introduction to the Theory of Computation

This book was definitely one of the best books I’ve seen for introducing computation theory. Michael Sipser does an amazing job introducing not only Turing Machines, but also different types of machines such as RAM and Finite Automata. He not only gives a good intuitive description and explanation of different machines, but he also does a really good job explaining different languages. Although some of his proofs can be a little difficult to follow, they are all understandable to anyone who is coming at the topic for the first time. He also does a good job explaining the different issues that are relevant in computation theory. unlike most books that I’ve seen so far, he gives a very detailed proof of the Cook-Levin Theorem (That SAT is a NP-Complete language) and also gives multiple examples of proving NP-Completeness which is nice as that seems to be one of the more confusing parts of computation theory for most students. He also gives answers to many of his examples which makes it so that it’s easy to follow on your own and learn everything without needed secondary help.

Introduction to Mathematical Logic by Elliott Mendelson

Introduction to Mathematical Logic

This week we’re doing another book on Logic! Mendelson does an ok job with his book in introductory logic. He sets up a nice introduction to logic concepts, but then fails to deliver much needed exposition. Although the book is very descriptive and helps to get your hands very dirty in logic, it can sometimes be a little to follow what Mendelson is trying to prove and whether a certain problem is an exercise or a proof. Although at times it’s a little hard to follow this text does give an amazing introduction to the topic of logic. It doesn’t assume any presupposed knowledge and actually goes over almost every topic that a new student would be expected to know in the topic. Not only that, but he also breaks down Number Theory to prove Gödel’s incompleteness theorem and also does a fairly good job of showing the different axiomatizations of set theory. Not only that, but his introduction to second-order logic and modal theory are also fairly nicely laid out. I chose not to look at his computability section as it seemed that it would be lacking since it only seemed to barely touch on the subject and there are tons of books out there that go more in depth on the topic and do a phenomenal job. I’d definitely recommend this book with a secondary companion text to help guide you along if you have trouble understanding what Mendelson is trying to state.

Groups and Symmetry by M.A. Armstrong

Groups and Symmetry

Armstrong does an amazing job with his introduction to group theory. Unlike most texts he uses a geometric approach for a lot of his work in groups. With that he uses dihedral groups a lot in his exposition and is always going back to it (and symmetric groups) for examples. I thought it to be refreshing to see group theory presented from an alternative angle. Although he doesn’t provide answers for his exercises, all of the exercises are answerable using the text provided. Some of them were difficult enough to pose some fun challenges while reading the book. Although the book is not the best introductory text I’ve found out there, I thought Armstrong’s introduction of finitely generated abelian groups was very well done. It definitely was better than most of the ones I had seen out there and definitely worth reading more into. The final theorem he put in his book was the Nielsen-Schreier Theorem which states:

Every subgroup of a free group is free

Which is a super fun concept and is not fully introduced in a lot of the texts that I’ve read in the group theory world. If you want a text that does group theory from the slight angle of geometry I definitely recommend this book.


Beginning Logic

Beginning Logic

Edward John Lemmon was a logician whose main area of expertise was modal logic. His book ‘Beginning Logic‘ is likely one of the better ones out there for those just getting into logic in order to understand the different rules in modal logic. Lemmon begins with an introduction on logic and why it is necessary to talk about the subject. After giving a very well laid out overview of why logic is required he begins by talking about the rules of logic and why each one is necessary. Although the book on it’s own is likely difficult to understand, it is a good reference book to see why certain rules are the way they are. (By rules I refer to the rules of derivation from one set of formulae to another). Not only does he give a detailed explanation of each rule he also goes into the concepts of completion and why each set of rules are complete in their respective areas.

He covers 2 separate areas of logic: propositional and predicate. Propositional logic is logic that only uses ‘operators’ such as . (Here he uses instead of the now traditional ). Propositional logic is also sometimes referred to as sentential logic or propositional calculus. In predicate logic Lemmon adds the symbol for ‘there exists an x’, and for ‘for all x’. This format is not necessarily traditional, but Lemmon is working before standards were fully developed. His syntax can be slightly difficult to follow, but after working on it, it is not the worst syntax out there.

Who this book is for: This book should be used in conjunction with some other books and is good for someone who is looking for an english language description of logic and the different rules associated with proving results.