Live data from Hacker News

Mathematics for Computer Science (2018) [pdf]

courses.csail.mit.edu

41–50 of 69 posts

Re: Mathematics for Computer Science (2018) [pdf]

#41
post #17

I always see lists of like 100 MUST HAVE books for Computer Science. Is there like a top 5 must have books for Computer Science?

Top 5 will never cover the field. Here's my top 10 * Brookshear and Brylow - Computer Science - An Overview * Forta - Teach yourself SQL in 10 minutes * Stallings - Computer Organization and Architecture * Stallings - Operating Systems - Internals and Design Principles * CLRS * Kurose, Ross - Computer Networking - A Top Down Approach * Sipser - Introduction to The Theory of Computation * Stallings, Brown - Computer S…

I agree that five books won't ever cover every discipline withing Computer Science. Just providing an introductory book, a university-level textbook, and an expert/graduate-level reference for each discipline turns into a long list.

See if this blog post helps out with sorting through the various CS subjects: https://tolerablecoder.blogspot.com/2022/03/a-short-list-of-...

Re: Mathematics for Computer Science (2018) [pdf]

#42
post #17

Earlier quoted context omitted.

Top 5 will never cover the field. Here's my top 10 * Brookshear and Brylow - Computer Science - An Overview * Forta - Teach yourself SQL in 10 minutes * Stallings - Computer Organization and Architecture * Stallings - Operating Systems - Internals and Design Principles * CLRS * Kurose, Ross - Computer Networking - A Top Down Approach * Sipser - Introduction to The Theory of Computation * Stallings, Brown - Computer S…

> * Kurose, Ross - Computer Networking - A Top Down Approach Over TCP/IP Illustrated?

I'd make the argument that TCP/IP Illustrated Volume 1 covers the details of TCP/IP in a very "packet and fields" oriented way. Volume 2 goes into a lot of the "data structures and implementation" way. That makes for a very good supplemental reference, but makes for a less than ideal introductory textbook on the subject of computer networking.

Kurose's book really does take the top-down approach from high level networking concepts through the application layer to the transport layer and downward. It provides just enough of the necessary details (here's a datagram with fields A and B) over a comprehensive list of all the details (here's every field, every field size, and a list of every field option).

Re: Mathematics for Computer Science (2018) [pdf]

#43
post #40

I took a look at the table of contents and found that the second chapter is about the well-ordering principle. That’s surprising to me because I’ve only heard of the well-ordering theorem by Zermelo, which is a fundamental theorem in set theory, stating that any set has a well-ordering assuming the axiom of choice. It’s amazing and mind-bending in its own right (imagine a well-ordering for reals), but is clearly not…

The well ordering principle, the axiom of choice, and Zorn's Lemma are all "equivalent", meaning you can pick any one as an axiom and prove the other two.

So some text books may pick one as the axiom and others pick a different axiom.

The crazy thing about the well-ordering principle: It states that a well ordering exists on the reals, which means that you can find an ordering such that any open set has a minimum. Apparently, elsewhere in mathematics, they've proven that even though it exists, you cannot articulate that ordering.

There's a common joke:

"The Axiom of Choice is obviously true, the well-ordering principle obviously false, and who can tell about Zorn's lemma?"

Re: Mathematics for Computer Science (2018) [pdf]

#44

I've not worked through a large book of problems like this before. At risk of sounding silly, are there solutions to the sample problems? I've given a few a go but can't find the answers anywhere to check my work.

Such problems are a cakewalk for LLMs, you realize? Lots of didactic activities you could do with LLMs.

Re: Mathematics for Computer Science (2018) [pdf]

#45
post #40

I took a look at the table of contents and found that the second chapter is about the well-ordering principle. That’s surprising to me because I’ve only heard of the well-ordering theorem by Zermelo, which is a fundamental theorem in set theory, stating that any set has a well-ordering assuming the axiom of choice. It’s amazing and mind-bending in its own right (imagine a well-ordering for reals), but is clearly not…

Not to say it isn't useful to a CS education, but the only time I've ever ran into the well-ordering principle was to establish the foundation for mathematical induction proofs. Students usually learn this in discrete math for CS in undergrad. Then in many future undergrad courses that are algorithms focused, the proofs tend to use induction and no one really thinks of the WOP

Re: Mathematics for Computer Science (2018) [pdf]

#46

I've not worked through a large book of problems like this before. At risk of sounding silly, are there solutions to the sample problems? I've given a few a go but can't find the answers anywhere to check my work.

I hate to be that guy, but ... frontier LLMs have gotten quite good at problems like these!

I recently was struggling with a linear algebra problem. It wanted me to prove X. If I used one route I could prove X. But then strangely enough, going another route, I disproved X!

I went to Gemini and asked how it could be so, and it pointed out flaws in my proof. Very helpful!

Re: Mathematics for Computer Science (2018) [pdf]

#47

I've not worked through a large book of problems like this before. At risk of sounding silly, are there solutions to the sample problems? I've given a few a go but can't find the answers anywhere to check my work.

I looked into this book before and without solutions it makes it much harder to use for self-study. Maybe LLMs do change that now but I'm not sure I'd trust their output if I were learning the topic

Susanna Epp's Discrete Mathematics With Applications is also a really good option

Re: Mathematics for Computer Science (2018) [pdf]

#48
post #45
post #40

I took a look at the table of contents and found that the second chapter is about the well-ordering principle. That’s surprising to me because I’ve only heard of the well-ordering theorem by Zermelo, which is a fundamental theorem in set theory, stating that any set has a well-ordering assuming the axiom of choice. It’s amazing and mind-bending in its own right (imagine a well-ordering for reals), but is clearly not…

Not to say it isn't useful to a CS education, but the only time I've ever ran into the well-ordering principle was to establish the foundation for mathematical induction proofs. Students usually learn this in discrete math for CS in undergrad. Then in many future undergrad courses that are algorithms focused, the proofs tend to use induction and no one really thinks of the WOP

Yeah. I have had several different courses teach induction, and nobody really thinks of the WOP. I’m pretty sure most of them skips the WOP when introducing induction.

Re: Mathematics for Computer Science (2018) [pdf]

#49
re: Chapter 15.8 on the so-called pigeonhole principle

Following Dijkstra’s EWD1094, here’s a way to solve the hairs-on-heads problem eschewing the language of pigeonholes and employing the fact that the mean is at most the maximum of a non-empty bag of numbers.

We are given that Boston has 500,000 non-bald people. The human head has at most 200,000 hairs. Show that there must be at least 3 people in Boston who have the same number of hairs on their head.

Each non-bald Bostonian must have a hair count between 1 and 200,000. The average number of such people per hair count is 500,000 / 200,000 = 2.5. The maximum is at least that; moreover, it must be a round number. So the maximum >= 3. QED.

Re: Mathematics for Computer Science (2018) [pdf]

#50

I've not worked through a large book of problems like this before. At risk of sounding silly, are there solutions to the sample problems? I've given a few a go but can't find the answers anywhere to check my work.

I looked into this book before and without solutions it makes it much harder to use for self-study. Maybe LLMs do change that now but I'm not sure I'd trust their output if I were learning the topic Susanna Epp's Discrete Mathematics With Applications is also a really good option

The logical skills to evaluate the output of a LLM are the same skills brought to bear reading any book. What makes you trust this textbook then? Textbooks are not infallible.
Post reply on HN