I am not sure to be honest, but if you want a book with answers, try Discrete Mathematics with Applications by Epp [0]

It has a very large number of answers in the back, but not all of them. You'll come out ahead even if you only do the problems with an answer as each section has anywhere between 30 to 60 problems. If you want to try every problem (or some of the interesting ones that don't have answers), there's an instructor's manual for 3rd edition. The one I linked is the 4th ed. No problem as the editions 3 and 4 mainly differ in numbering of their sections and chapters, so if you match a chapter from 4 ed to the one in the instructor's manual for 3rd ed, the answers are identical and in the same order. If none of this works for you, either just google the problem or visit MSE [1] as almost none of the problems in the undergrad books are original and many people before you have asked the same questions many times over.

Note, the price of the book is steep, but I am sure you know of libg3n.

My answer to your question is math. Learn to read and write proofs. Any intro to proofs will do: those employed in discrete math, the ones in analysis, the diagram chasing ones, whatever...Working with math proofs will definitely straighten out your thinking and whip your mind into shape.

This fall I will be teaching the required "Discrete Math for CS course" to about fifty students at the University of South Carolina. Previously I used Epp's book [1] which in my opinion is an outstanding book but regrettably is $280.44. Many of our students are working minimum wage jobs to make ends meet, and I don't want to make them pay so much if I can at all help it.

Lucky I saw this!!

I do have one reservation though -- many of our students come in with a weaker mathematical background than MIT students; for example we spent several weeks doing proofs by induction (and no other kinds of proofs) and this text doesn't seem to feature a couple of weeks worth of examples.

I think I'll probably go with this and supplement as needed. Really it looks quite wonderful. (And hell, the book seems to be open source which would mean that I could potentially write supplmentary material directly into the book and make my version available publicly as well.)

This thread seems like a particularly good place to solicit advice: experiences with this book or others, what you wished you'd learned in your own undergraduate course on this subject, etc. I've taught this course once before -- I feel I did quite well but I still have room to improve. Thanks!

It has a very large number of answers in the back, but not all of them. You'll come out ahead even if you only do the problems with an answer as each section has anywhere between 30 to 60 problems. If you want to try every problem (or some of the interesting ones that don't have answers), there's an instructor's manual for 3rd edition. The one I linked is the 4th ed. No problem as the editions 3 and 4 mainly differ in numbering of their sections and chapters, so if you match a chapter from 4 ed to the one in the instructor's manual for 3rd ed, the answers are identical and in the same order. If none of this works for you, either just google the problem or visit MSE [1] as almost none of the problems in the undergrad books are original and many people before you have asked the same questions many times over.

Note, the price of the book is steep, but I am sure you know of libg3n.

[0]https://www.amazon.com/Discrete-Mathematics-Applications-Sus...

[1] https://math.stackexchange.com/questions

Some suggestions to get you started:

Book of Proof by Richard Hammack: https://www.amazon.com/Discrete-Mathematics-Applications-Sus...

Mathematical Proofs: A Transition to Advanced Mathematics by Chartrand et al: https://www.amazon.com/Mathematical-Proofs-Transition-Advanc...

How to Think About Analysis by Lara Alcock: https://www.amazon.com/Think-About-Analysis-Lara-Alcock/dp/0...

Learning to Reason: An Introduction to Logic, Sets, and Relations by Nancy Rodgers: https://www.amazon.com/Learning-Reason-Introduction-Logic-Re...

Mathematics: A Discrete Introduction by Edward Scheinerman: https://www.amazon.com/Mathematics-Discrete-Introduction-Edw...

The Real Analysis Lifesaver: All the Tools You Need to Understand Proofs by Rafi Grinberg: https://www.amazon.com/Real-Analysis-Lifesaver-Understand-Pr...

Linear Algebra: Step by Step by Kuldeep Singh: https://www.amazon.com/Linear-Algebra-Step-Kuldeep-Singh/dp/...

Abstract Algebra: A Student-Friendly Approach by the Dos Reis: https://www.amazon.com/Abstract-Algebra-Student-Friendly-Lau...

That's probably plenty for a start.

Lucky I saw this!!

I do have one reservation though -- many of our students come in with a weaker mathematical background than MIT students; for example we spent several weeks doing proofs by induction (and no other kinds of proofs) and this text doesn't seem to feature a couple of weeks worth of examples.

I think I'll probably go with this and supplement as needed. Really it looks quite wonderful. (And hell, the book seems to be open source which would mean that I could potentially

write supplmentary material directly into the bookand make my version available publicly as well.)This thread seems like a particularly good place to solicit advice: experiences with this book or others, what you wished you'd learned in your own undergraduate course on this subject, etc. I've taught this course once before -- I feel I did quite well but I still have room to improve. Thanks!

[1] https://www.amazon.com/Discrete-Mathematics-Applications-Sus...