> The entire book is available for free as an interactive online ebook. This should work well on all screen sizes, including smart phones, and work well with screen readers for visually impaired students. Hints and solutions to examples and exercises are hidden but easily revealed by clicking on their links. Some exercises also allow you to enter and check your work, so you can try multiple times without spoiling the answer.
https://discrete.openmathbooks.org/dmoi4/
> The source files for this book are available on GitHub.
there's more here https://textbooks.aimath.org/textbooks/approved-textbooks/
I love Cliff Stoll's introduction to this topic https://www.youtube.com/watch?v=W18FDEA1jRQ
I am yet to find a better introduction than Busby and Kolman's "Introductory Discrete Structures with Applications".
Beautifully written, concise, very accessible with the precise right amount of formalism.
http://books.google.com/books/about/Introductory_Discrete_St...
During my research years, we had to grind on Combinatorial Optimization book by Korte and Bygen for the weekly book reviews. Safe to say, it was not an introductory work. Still it was fun seeing the different examples my colleague would bring up during those meetings.
This is on my todo list for just after https://slc.openlogicproject.org/.
Two past discussions:
https://news.ycombinator.com/item?id=41267478 - Discussion on the 4th edition from 9 months ago.
https://news.ycombinator.com/item?id=23214961 - Discussion on the 3rd edition from 5 years ago.
Having just done a discrete math course the best resource has been Kimberley brehms videos on YouTube which follows very closely to a textbook though I can't recall the author at the moment
Think this would be a great course for high school or even middle school. No plug and chug that makes it a grind, plus a great intro to proofs and deeper mathematical thinking.
I taught mathematics for 30 years at the college level. This is a college level textbook and it is not appropriate for either high school or middle school. Very few students at that level would be able to understand this material.
I need to develop more intuition and maturity to understand a few relatively math-heavy engineering methods and ML/DL papers. Would you have any recommendations for not very bright college students? Perhaps something similar to Calculus Made Easy? Also, have you ever taught math using software like Mathematica or SageMath? (I graduated from college a long while ago and don't really have the bandwidth to solve problem sets by hand. I never enjoyed it or learned much from it.)
Unfortunately the best way to develop intuition is to solve problem sets :). And for ML to make sense, understanding some probability theory might be more important than understanding calculus. In math heavy papers you'll need calculus and linear algebra too, but it's going to be hard to understand them without a fair amount of prior study. I took lots of math classes and wrote out problem sets, and I still can't read many of those papers.
I meant more the subject itself rather than this particular textbook, but I’m curious about your opinion in general.
I came to this opinion after taking it in college and not recalling very much in the way of needed prerequisites, but maybe this is a selective memory…
What are some of the biggest things needed beyond algebra?
Not so sure. There are quite a lot of bright high school students that could indeed understand it. Maybe not in general but for a special interest group for sure. The local university had a group covering stuff like this and I found it to be very fun as a high school student, and there were at least 5 people that I went to school with that could easily handle this material (and I didn't go to some special school, either).
Unless you’re talking about an elite private school where 5 student class sizes are the norm, no, a discrete math course is not appropriate for high school students.
I took an intro discrete math course in second year of university (at a school which is easily top 5 in math and engineering in my country) and I along with most of my peers struggled intensely with it, despite all of us having completed the proof-heavy courses in first year.
On the other hand, I routinely work with high school students who are unable to multiply a pair of single digit numbers without a calculator.
[flagged]
You're right I think.
Though some High school kid with interest might grasp the parts he/she is interested in.
There is a big lap from there to "Could be taught in High School".
The sheer amount of work is the main obstacle in addition to the lack of specialization in the courses is one of the obstacles I think, apart from the obvious one which is the lack of foundational skills.
I’m speaking from the perspective of the U.S. I still contend though that the vast majority of people ages 12 - 18 are incapable of learning this book. Note that I’m talking about this book as it is in it’s totality.
This book includes counting principles in it so one can always claim that aspects of this book can be taught to people between ages of 12 - 18. We do teach people how to count at a young age. The subject matter is such that one can introduce concepts from this book in grades 7 - 12 but not at the depth the book covers them.
Calculus is taught in most high schools in the U.S. but very few students take calculus in high school.
Ninth grade introduced me to algebra and my 'technical' high school program spent a lot of resources teaching calculus and algebra. I also opted into all the other math courses they had, doing discrete math, complex numbers and stochastic math. I didn't have points to put into taking it but the school also offered a course on modern physics, teaching stuff like field equations and quantum mysteries.
One of my adolescence girlfriends left Russia after fifth grade and had an introduction to both algebra and some discrete math there.
You're so sarcastic I have no choice but to believe you.
Discrete Math it's far easier than Calculus with infinitesimals, limits and curves everywhere.
As a programmer with Lisp experienc but not HS-er, I'd say that any kid learning Python would be at home with Discrete Math, or most Elementary kids playing RPG's/JRPG's at home.
Here’s a sample problem from discrete math when I took it in university:
For any integer n ≥ 0, let Cn be the set of all integer compositions of n with odd number of parts, and each part is congruent to 1 modulo 3. Prove that:
|Cn| = [x^n] (x - x^4)/(1 - x^2 - 2x^3 + x^6)
Where [x^n] indicates the coefficient of the x^n term in the formal power series generated by the rational function (rational representation of the ordinary generating function).I doubt many elementary school students would be able to solve problems like this.
And the idea of a formal power series. And integer compositions. And combinatorial enumeration (counting sets in different ways for a proof). And a bit of set theory (cardinality of sets).
There is a whole lot of background stuff here that elementary school students do not have. Way more than what you’ve stated.
You obviously have not taught mathematics to high school students.
On the other hand, all the analysis really boils down to exploiting continuity and smoothness of functions. Once you get that, the epsilon-delta formulation becomes really obvious. And then you just keep building on top of it, adding layers and layers of abstraction, just like with programming.
With discrete math, there are really no unifying themes.
I would expect people to be more comfortable with discrete math, because we are more used to thinking of separate things as opposed to things without a boundry, so to say. There are exceptions to the latter, of course, like air, warmth, rain, etc.
I think of these with analogues with pixel rendering in order to understand integration and diferentiation on an intuitive way.
Once you 'see' how triangles/slopes are drawn on a GB/GBA, you begin to understand limits.
derivative of x^2 = 2x and a neglibile pixel/point that shouldn't be there but it 'exists' to show a changing factor.
This is already brilliant! I feel like giving myself a discrete math refresher.
Another CC book on discrete Math it's Gentle Introduction to the Art of Mathematics.
where is Polish translations?