I’d like to learn formal logic as a self-guided beginner for the purpose of building a better mathematical foundation (I stopped in high school) and improving my programming.<p>I was taking a look at Gensler's Introduction to Logic but the reviews suggest that it might be better as a second text than a first. What books can HN recommend instead?
I took a brief look at Gensler's book and it looks interesting!<p>If you're looking for something good that covers the basics in more detail, I recommend Epp's <i>Discrete Mathematics with Applications</i>. This covers material like truth tables, valid and invalid arguments, quantifiers, etc.<p>In addition to the treatment of logic, it also has chapters on induction, combinatorics, graphs and trees, analysis of algorithms, finite state automata, etc.<p>I chose this book when I taught a college course in "math for computer science majors", and it was a great choice overall. It's probably the most beginner-friendly of any book covering this material, and it's extremely organized and well written. Costs an arm and a leg to buy new, so buy a used copy of an older edition.
Teach Yourself Logic 2020: A Study Guide by Peter Smith is probably your best resource. It isn't a logic book but it explains which ones are good/bad and why. It almost definitely goes past your goals, but the beginner/intermediate sections have a lot of good recommendations.
I like <i>The Mathematics of Logic</i> by Richard Kaye. A rather unusual approach apparently intended for college math majors, maybe not for everybody. But I am not a math major and it appealed to me.<p><a href="https://web.mat.bham.ac.uk/R.W.Kaye/logic" rel="nofollow">https://web.mat.bham.ac.uk/R.W.Kaye/logic</a> (not very helpful, lots of broken links, just look at the book instead)<p>I also like <i>Logic in Computer Science</i> by Huth and Ryan, cited in another comment here. It is much more comprehensive and has a lot more about logic applications in computer science.
Just get the Gensler and see if it works.<p>You can buy a second hand copy of an older edition for a few dollars.<p>Maybe you have to read it twice.<p>So what?