Hacker News new | more | comments | ask | show | jobs | submit login
Ask HN: Math books like SICP?
212 points by nextos on Apr 12, 2014 | hide | past | web | favorite | 89 comments
I'd like to start learning undergrad math at a rigorous level.

As a CS grad I already covered certain topics like abstract algebra at a respectable level. But I'm lacking consistent and broad knowledge throughout all areas.

I'm looking for math books covering undergrad topics like SICP, which Peter Norvig described as "[...] a way of synthesizing what you already know, and building a rich framework onto which you can add new learning over a career" [1].

[1] http://www.amazon.com/review/R403HR4VL71K8

Not the same type of book, but you could do a lot worse than reading through Mathematics: Its Content, Methods and Meaning, by M. A. Lavrent’ev, A. D. Aleksandrov, A. N. Kolmogorov. It's an amazing book which gives a mathematical (but not rigorous in the sense of proofs etc.) overview of most of mathematics.


Absolutely astounding: I have been looking for this book ever since I pored over it in the Wolfson Reading Room in Manchester Central Library 5 years ago. I didn't take down the authors' names, though, referring to it as "that yellow mathematics book" then and ever since.

I credit that book with much if not all my mathematical insight.

Thank you.

(Just seeing that cover leaves me all tear-eyed, reminiscing over that wonderfully irresponsible time.)

Glad to help. Amazing that an off-hand comment can have so much impact on a human being across the globe. I've certainly been on the other side of it several times before.

> "that yellow mathematics book"

replace "that" with "those" ( http://en.wikipedia.org/wiki/Graduate_Texts_in_Mathematics ).

the dover books are also a good series, and pretty much anything by Artin is good. i also looked at the Halmos book a couple of people have mentioned.

perhaps one thing to be aware of, though, is that you're not always going to learn things in the linear way they're layed out on the page. moreover, it might be helpful to have more than one book for any given subject. Lang's Algebra, for example, is a really good reference, but a tome if you read it like a text. so you might pick up something small and subject-oriented with a lot of exercises like Artin's Galois Theory or Atiyah's Commutative Algebra, and supplement it with a reference like Dummit and Foote or Lang's texts on Algebra as a whole.

oh, right: whatever book you choose, do the exercises.

But that's not a Springer book, it appears to be published by Dover, and the covers look totally different. The GTM series is also highly variable in quality.

perhaps the GTM series has some bad titles; i haven't read them all. but it has some good titles, and from the description original poster's background, it's probably as far as the person wants to stretch right now. sure, the cambridge advanced math series might be more "quality," but those also tend to be both very focused (in terms of specificity of the topic) and very dense (in terms of delivering a lot of results with almost zero fluff).


The best thing I like about this book is that it often first gives a real-life example of a problem, then gives some history of how the problem was solved, and what the solution was. Even the first chapter was highly illuminating.

Sheldon Axler's "Linear Algebra Done Right" has my highest recommendation if you want expertise in linear algebra.

As a followup, Paolo Aluffi's "Algebra: Chapter Zero" is the best synthesizing text for abstract algebra for a beginning graduate student. The thing that makes it so amazing is the writing style: it introduces and demystifies category theory, and then discusses groups, rings, modules, linear algebra, fields, r-modules, and advanced topics (toward the end) with the unifying theme of how they work and relate as categories. It is very much a book that focuses on the why over the what and how. And there are many many many juicy exercises.

I would recommend against Spivak's Calculus on manifolds. It's too dense and too focused on advanced topics (unless you're an ivy league undergrad, you don't learn cohomology). That being said I don't have an analysis reference that fits your request.

As a CS person I can continue with book recommendations related to computing-related topics in math (computational algebraic geometry comes to mind). Let me know if you're interested.

Thanks. Axler's LADR is indeed fantastic, I have already worked through 1/2 of it. I'm really happy to see my opinion seconded. It's really short and precise. Some people seem to prefer Halmos' Finite Dimensional Vector Spaces, but I found the presentation less didactic. Perhaps it's also more of an upper division text, and I'm not there yet.

I was looking for a real analysis companion, perhaps baby Rudin. I was also wondering whether it'd make sense to proceed directly to real analysis, or to step down a bit and read something like Spivak's Calculus.

I'd also like to hear about recommendations at undergrad level in the fields of logic and set theory, geometry, combinatorics, and probability theory. Those would complete my basic math curriculum.

I've tried reading Rudin a couple times, but it's a bit of a slog. There are easier analysis texts. Abbott's Understanding Analysis is good, though a bit basic. I'm currently reading Terence Tao's Analysis I, which is very good if you're in the right frame of mind for it. The first 150 pages are spent building the real numbers from scratch, starting with set theory and the Peano axioms. You successively construct the naturals, the integers, the rationals, and then the reals (as equivalence classes of Cauchy sequences of rationals). It's fun to see how the sausage is made, but I can also admit that when I was just starting out in math I might have found this book unbearably tedious.

I third the recommendation on Axler's LADR.

I'd actually like to hear about alternatives to Rudin. My undergrad analysis class used it, but it's lack of diagrams was particularly bothersome. I'd spend an hour digesting a rat's nest of a paragraph only to discover that the underlying concept was simple enough that even a rough sketch ought to be able to get the gist of it across in seconds.

Wade's an easier book that has more undergraduate aids. http://www.amazon.com/Introduction-Analysis-Edition-William-...

I also like Strang for Linear Algebra for undergrads. Beyond that it's Hoffman and Kunze.

As mentioned in another subthread, Pugh's Real Mathematical Analysis is great, and better motivated than baby Rudin.

Wilf - Generatingfunctionology (CRC 3rd ed.; free 2nd ed. pdf[1])

Lovasz - Combinatorial Problems and Exercises (AMS Chelsea)

The classic probability book is Feller (2 vol), but it's absurdly priced. There's also Sidney Resnick's Probability Path and Adventures in Stochastic Processes. Grinstead & Snell - Introduction to Probability Theory is free[2], and there's also Chung's A Course in Probability Theory (Academic Press/Elsevier).

Dover publishes at least three good books on counterexamples and pathological cases: Counterexamples in {Analysis, Probability, Topology}

[1] http://www.math.upenn.edu/~wilf/DownldGF.html

[2] http://www.dartmouth.edu/~chance/teaching_aids/books_article...

I have essentially taught myself everything I know about analysis to suit my needs (and I'm probably worse off for it). I really wish there were a book like "Analysis from a computational perspective," which I suppose is just numerical analysis but I have yet to find any books that suit me in that topic either. That being said, something like Christianini's "Introduction to Support Vector Machines" has doubled as a synthesizing text on basic functional analysis for me. My recommendation, if you're comfortable with proofs that you would see in abstract algebra, is to jump right into baby Rudin or any other undergrad-level analysis text. I view them all pretty much the same.

Likewise I essentially learned all the probability theory and combinatorics I know from people and scraps, so I can't recommend a synthesizing text.

Undergraduate geometry can be a mess, so you should know what you're looking for. There are three kinds of undergraduate geometry classes: 1. Euclid's Elements (ugh), 2. The hyperbolic version of Euclid's Elements (meh), and 3. The "Erlangen Programme" style, which involves studying geometry via group theory and linear algebra. As you can probably tell, my recommendation is to study the last, because you already know group theory and with the other two you'll spend a lot of time wondering whether you can apply some basic obvious fact to prove some other basic obvious fact. The Erlangen style also allows you to describe projective and hyperbolic geometry via linear algebra (as well as the Euclid way), which is far more useful. See, for example, my post on projective geometry for elliptic curves [1]. I went through all three styles, but the last unfortunately had no textbook.

I'm not a huge fan of logic/set theory, but again the best treatment I can see for basic logic is to view it as algebra. In that vein, Halmos's "Logic as Algebra" was all I needed, and the prose is superb. This book does not contain any real set theory (say, about higher cardinals), but it's nice and short.

[1]: http://jeremykun.com/2014/02/16/elliptic-curves-as-algebraic...

Axler's book is a bit troublesome in inventing new terminology unnecessarily. There are also a number of minor errors, and while the abstract structure is fleshed out, it's not often well "motivated". I like the focus on theoretical instead of a matrix-first approach, I just think it's not well done.

Like what specifically?

You might be interested in this math.SE question I asked:


(comparing to Feynman's Lectures on Physics rather than SICP.)

However, I agree with zodiac: Math is a much broader field and I think very few living people have the kind knowledge you're talking about: consistent and broad knowledge in all areas.

I have the same background as you and I started doing exactly this about 8 years ago. I'm just finishing my PhD in math. I'll give you some advice. First, studying math for its own sake by yourself is extremely hard. That's one reason I ended up back in academia. If you can't go back to school, still find some kind of community. Second, rather than studying generally, try to identify a goal to work towards. What are you trying to understand or figure out? Third, try to model your plan on a rigorous undergrad program, e.g., MIT. Then, in each main undergrad area (algebra, analysis, topology, geometry, etc.) try to find the "SICP" and study that. For general book recommendations, I like Fowler's A Mathematics Autodidact's Aid:


> http://www.ams.org/notices/200510/comm-fowler.pdf

That's great one! Thank you for pointing this out very much.

I'm a big fan of SICP. I'd describe it as "hard-core": requiring hard work, but extremely rewarding for the people who take the time and effort to go through it.

I'd recommend the following three books to similarly cover the three main areas of higher mathematics (analysis, algebra, and topology):

1. Principles of Mathematical Analysis by Rudin (http://www.amazon.com/Principles-Mathematical-Analysis-Inter...)

2. Algebra by Artin (http://www.amazon.com/Algebra-2nd-Featured-Titles-Abstract/d...)

3. Topology by Munkres (http://www.amazon.com/Topology-2nd-James-Munkres/dp/01318162...)

Working through all three (including the exercises!) will give you a solid understanding of the basis of modern mathematics. If you don't have experience with proofwriting, you might find them difficult at first - the activity is very different from performing calculations or solving equations. It's also best to have someone trained in mathematics talk to you about the proofs, until you develop a feel for the needed level of logical rigor.

Rudin, in particular, leaves a lot of work to the reader; going through that book is the most intellectually difficult work I've ever done. If you find it hard-going (which is completely natural), you might want to try Artin first, especially since you have some background in algebra.

(Incidentally, these are the three books used to teach analysis, algebra, and topology to MIT mathematics majors. You can look up the assignments and exams for the three courses - 18.100B, 18.701, and 18.901 - for a good list of exercises to work through.)

Great list. Another addition to the list would be

4. Topics in Algebra by I.N.Herstein.

It has a slightly better (and tougher) set of problems than what you would find in the book by Artin.

Personally I have heard nothing but bad things about Artin. Most people I know recommend Dummit and Foote instead; its increase in difficulty is supposedly offset by superior presentation of the material.

The Princeton Companion to Mathematics [1] is good if you want to gawk at the breadth and depth of the field. For actual education I would just suggest looking at a math department's syllabus, e.g. at http://ocw.mit.edu/. As a CS grad you should start with analysis, as that's probably your most looming dark spot.

My warning as a math student is that a lot of book recommendations are just a tad bit elitist. Don't stick with a single book too long if it isn't cutting it for self-study. Exercises are good.

[1] http://press.princeton.edu/titles/8350.html

The Princeton Companion should come with a warning label.

It's difficult to find what you are looking for, since maths is a much older field. However, Spivak's 'Calculus' is pretty close: http://www.amazon.com/gp/aw/d/0914098918.

I clicked on this topic in order to make this suggestion. To expand on it a little bit, I was a math major and read Spivak's 'Calculus' after I had already taken real analysis. I found it delightful - it really approaches the topics from first principles and unlike many calculus textbooks actually goes through the effort of presenting proofs of the theorems. Highly recommended.

As some recreational reading, less suiting the original request, I very much enjoyed David Foster Wallace's 'Everything and More: A Compact History of Infinity' (http://www.amazon.com/Everything-More-Compact-History-Infini...). DFW is not for everyone, but I enjoyed it a lot. Maybe just check it out of the library first to see if it's for you.

I appreciated DFW's book for even attempting to do a popular treatment of what we would now call the history of real analysis. But there were some serious technical problems with it: http://www.ams.org/notices/200406/rev-harris.pdf

SICP doesn't really cover very much in the grand scheme of CS, so "like SICP" might mean ...

... something covering "how to do math". This might be an introductory real analysis or linear algebra book, or (alas, I haven't read much in this area) you could do no wrong looking for books on problem solving, contests, and inequalities, say by Polya or Andreescu.

... a higher-level view of day-to-day mathematical practice. There probably isn't one book for this, but I'd recommend Loomis and Sternberg's Advanced Calculus as a summation of linear algebra and calculus on manifolds; you'd also need to read on complex and functional analysis, algebra (Lang and the unofficial companion volume?), topology ...

... a broad but shallow introduction to several fields and applications unified but a common underlying approach (abstraction and programming language design). I'd recommend Geroch's Mathematical physics, which, as the name implies, studies algebra, algebraic topology, and functional analysis through the common lens of category theory.

... a somewhat quirky book on foundations? You could look for a book on naive or axiomatic set theory, categories, or type theory.

Run, don't walk, and get "An Introduction to Mathematical Reasoning"by Peter Eccles. That will open your eyes to mathematics, as done by mathematicians.

After that, anything by Serge Lang. He is a first-rate mathematician and a fine educator. A master of mathematical exposition, a rare talent.

I started with two books: "Principles of Mathematical Analysis" by Walter Rudin, and "Abstract Algebra" by Israel Herstein. Keyword is "started". Nearly every paragraph of either book sent me to a goose-chase of research and reading up on supporting materials. Safe to say that by the time I was nearly done with either, I have acquired about 50 other math books and had about zero social life ;-)

Good news is that good math books are cheap, compared to anything computing. You can find classics for $1-$5 in most yard sales and 2nd hand bookstores. The trick is to buy thin math books; the giant, multi-color text books they use in schools are highly confusing, at least to me. It's 200 pages of math stretched to 1200, with a similar jump in price.

Mathematics is both style and substance. Once you get the hang of the basic language, the succinct delivery style, the proofs and generalizations, how notation is introduced and then elided when it becomes too apparent .. all these will add up to help you navigate more "advanced" texts. You will come to recognize what is a well-posed mathematical problem, and what is not, even if you don't understand the domain itself.

Finally, if you have the option to study this formally at an institution, do it. The 2nd best option is to find a friend that shares this interest and discuss things. I didn't study it formally, but I was a barista at a coffee shop with plenty of mathphile customers. I had a lot of 1:1 instruction for highly qualified people on my 10 minute breaks :-)

The Chicago undergraduate mathematics bibliography is a fantastic list: http://www.ocf.berkeley.edu/~abhishek/chicmath.htm.

What a fantastically long list! But it appears to be a bit dated. For example, the Algebraic Topology section doesn't have either of Hatcher or Munkres, which are the standard graduate texts nowadays.

Update: yeah this list was last updated in 2000.

Math is a much, much broader field than the part of Computer Science than SICP covers, so it's really hard to search for "consistent and broad knowledge throughout all areas". Do you really need to learn analytic number theory? category theory? axiomatic set theory? tensor calculus?

My suggestion would be to narrow it down to a specific field you're interested in like abstract algebra and ask for suggestions about that field. Even narrowed down the field might be too big - a basic introduction to abstract algebra would probably contain the same amount of information as SICP.

CS people tend to find discrete math and linear algebra most useful in their work, but maybe you want to learn something just for the sake of it and not for work.

I was planning to structure my learning around linear algebra and real analysis, sort of like Harvard's Math 55 does.

Apart from that I wanted to expand on basic set theory, geometry, combinatorics and probability theory to have a well-rounded basic education.

My ultimate goal is to be able to digest advanced probability and statistics books.

I don't know an answer to your original question.

Re: statistics and such though, I have heard very good things about http://www.indiana.edu/~kruschke/DoingBayesianDataAnalysis/

If you are interested in a Math 55 approach (yikes! I took 25), you could consider using their syllabus. http://abel.math.harvard.edu/~elkies/M55a.02/index.html

Set theory: You should definitely look at Naive Set Theory by Halmos. Despite the name, it's totally rigorous development of ZF set theory with discussion on the meaning and equivalent statements of AC.

What about Lawvere's Conceptual Mathematics or Sets for Mathematics?

Precisely my interes what is the SICP equivalent for: Discrte Math ? And for Linear Algebra?

Also by Sussman - well worth looking into


As I said elsewhere in this thread, this is not like SICP.

at first I really thought it was a 4chan joke

It's not nearly as easy to work through as SICP is but Principles of Mathematical Analysis by Walter Rudin (sometimes referred to as little Rudin) is a great place to start if you're interested in analysis. It's a hard book, but it's pretty much the standard for undergrad analysis.

Echo the above. Pairing little Rudin with a more user-friendly book like Understanding Analysis by Abbott is a great way to learn the material if you get stuck.

Personally I would recommend mathematical analysis by Pugh. Goes into as much depth as Rudin, but more approachable and a great selection of exercises.

I was under the impression that Pugh, while more approachable, was also much more difficult. Especially with regards to the exercises.

I like Pugh too. All three are sitting on my bookshelf :). Coming from very little formal math training, and trying to self-study analysis, I would bounce from Rudin if I got stuck, go to Abbott for a confidence boost, and try out some Pugh for a different viewpoint. Pugh might have been just right in terms of rigor and accessibility.

Baby Rudin still gives me nightmares.

It shouldn't.

It starts off with metric spaces and Euclidean n-space. The main goal is to cover open and closed sets, convergence, and compactness.

Why? Because those topics are crucial in continuity and uniform continuity.

Why want those? Because continuous on a compact set means uniformly continuous and, thus, that the Riemann integral exists.

Any questions?

Real Analysis by Royden is the source of my nightmares.

Royden is breathtakingly gorgeous. But, it can be good to skip some parts.

The main content is just 'measure theory', and that's just freshman calculus grown up. Why? Because near 1900 it became clear that freshman calculus was clumsy for some important progress, especially cases of convergence of functions.

Measure theory? Well, first cut, 'measure' is just a grown up version of ordinary area. Simple.

Why interested in measure theory? Because want to cook up a new way to do integration, that is, what freshman calculus dues with the Riemann integral. Recall, the Riemann integral partitions the X axis and approximates the area under the curve with tall, thin rectangles. Measure theory partitions the Y axis: At first glance this seems a little clumsy, but in the usual cases get the same number for area under a curve and in bizarre cases, that can get from converging functions, get a nice answer that Riemann integration can't do.

Royden likes Littlewood's three principles, and they are cute. So, spend an evening on them. Yes, it's possible to use Littlewood's to do the subject, but there is a better way, also heavily in Royden, roughly called 'monotone class arguments' -- which are gorgeous and turn much of the whole book into something quite simple. So, prove the theorem for indicator functions. Then extend to simple functions by linearity. Then extend to non-negative measurable functions by a monotone sequence. Then extend to integrable functions by linearity. Can knock off much of the book this way, e.g., Fubini's theorem which is just interchange of order of integration grown up. The foundations of this little four step process is Fatou's lemma, the monotone convergence theorem, and the dominated convergence theorem.

About 2/3rds of the way through Royden is a single chapter that essentially compresses much of the rest of the book -- I would have to step into my library to find the chapter.

For the early exercises on upper and lower semi-continuity, they are a bit much and you likely won't see that topic again. So that exercise can be skipped.

Royden is elegant beyond belief; if you still have trouble finding the main themes, then chat for an hour with a good math proof who understand Royden well.

Then, don't miss the Radon-Nikodym theorem: It can be seen as a grown up version of the fundamental theorem of freshman calculus but, really, is much, much better. The role of the Radon-Nikodym theorem in 'modern' (i.e., Kolmogorov) probability theory, stochastic processes, Markov processes, martingales, etc. is astounding.

I'd agree with your assessment of Royden. Another fantastic book on Lebesgue Integration/Measure theory is Lebesgue Integration in Euclidean Spaces by Frank Jones. Fantastic textbook.

If you've already covered Vector Spaces, Groups, and Rings in your studies, I would suggest checking out Bill Lawvere's "Conceptual Mathematics: A First Introduction to Categories". i.e. An introduction to category theory through the category of sets. His "Sets for Mathematics" is also good but it's a more concise presentation of the topic but a less than gentle introduction than the former book.

I was going to recommend this one. Conceptual Mathematics is wonderful in that it provides a narrative of intuition instead of just the proofs. It's kind of like seeing How It Is Made for algebra.

Do Conceptual Mathematics and Sets for Mathematics cover the same ground?

I've only read Conceptual Mathematics; sorry for the confusion.

CM covers Category Theory as a general tool for probing and exploring algebraic concepts beginning as simply as endomorphism and extending all the way out to how it can be the foundations of a generalization of set theory via Toposes... all in a cheery and explorative fashion which really illuminates why the ideas work instead of merely stating them.

I'm not sure what the required background might be, but it's probably pretty minimal.

A lot of the same ground but Sets for Mathematics is more concise and probably goes into more depth by the end. If you've previously done rings, groups, vector spaces, topological spaces, the concepts tie nicely together in Sets for Mathematics.

Conceptual Mathematics puts a lot more time up front motivating the material with examples and tries to build your intuition before getting into the details. If all you've done previously was linear algebra and some discrete math, this book is probably better.

Well, I don't know how it goes over there, but here in Algeria, Engineers go through two common years (after which they chose a specialty in the third year, and then, in the fourth and fifth year, a specialty of specialty).

All Engineers go through both years, except Computer Science who don't do the common second year and they directly go to Computer Science.

In these two years, everyone goes through this (maybe it'll give you some ideas on what you want to add):

I'll only list the "Maths" we take first and second year:

First year: - Algebra: (a long course, bottom up. From Boole's algebra, to groups, sigma-algebra, yadda yadda), linear algebra(vector spaces, etc)..

- Probabilities and Statistics.

- Analysis: (Taylor series (Lagrange, Laplace, Young, Cauchy, Maclaurin), integrals, differentiations, different series, convergence/divergence kung fu), Riemann overall, proofs, etc.. Functions, multivariable, real and complex, etc.

Second year:

- Analysis I - Numerical Analysis (Equation systems, Gauss-Seidel, different algorithms(also calculating their speeds), Newton-Raphson, extrapolation, interpolation, etc).

- Analysis II - Integrals(up to 3rd - curves, areas/surfaces(Green) and volumes (Ostrogradsky)), Differential equations (Wronskian, etc).

This is the minimum (to be able to function in other modules, and some other modules are needed before you can function in these, so there's sort of bootstrapping of sort).

And then it depends what you take as specialty (if it's something involving Signal Processing, for instance, or Control Systems, you also need to do stuff).

Hope that helps and you can find some things.

PS: None of these are done with computers, so computing stuff with Newton algorithm and operations on big matrices are all done by hand. It takes a lot of time.

PPS: We don't have multiple answer questions. There's a question, and you answer it (and some answers take multiple pages).

Also, most tests are designed in a way that even if you have the answer sheet right next to you, it still takes you more time to copy the answers than the time of the exam itself. i.e: Even if you don't think and only "write", the time-frame is too tight.

>Also, most tests are designed in a way that even if you have the answer sheet right next to you, it still takes you more time to copy the answers than the time of the exam itself.

So the test is impossible then? If you don't even have time to copy the answers how can you possibly have time to work out the problems?

You don't have time to do "all of it".

For instance, in Control Systems .. We get a problem to design a system with certain characteristics. You then have to do Z transform, etc. Then design correction to match what you're asked for (a certain overshoot max, phase, etc).

Which involves a lot of matrice multiplication (Pontryagin, optimal control). Big matrices multiplied(and elements aren't numbers, they're bits of transfer functions. But I replace them with letters and double indices, many students recopy the same expression all the way :) ).

Or your design an RST control (polynomial, much, much complex than PID).

All of this takes a lot of time to write and requires a lot of concentration (if you screw up just one element in a matrix, all ensuing is wrong and gets you nothing, so you have to be rigorous and not the day-dreaming type).

And you end up pretty much not doing some part of the thing, which is something most students don't find frustrating, since most of them wouldn't touch a part of it anyway (they haven't studied it, they don't understand it, or something else).

They're not designed like that by some sadistic tendency, it's just some stuff that needs to go down the exam..

Although I remember a teacher who told us as he gave us the exam sheet: "Don't bother looking at the verso". Meaning "You'd be happy if you only did the recto to get your 10/20". It was a deliberate move.

And in addition, it's mostly end of year exams that are like that (content from the whole year). And not all modules are like this. Some are calculation intensive and next step is dependant on current step, so making a mistake in the beginning is "fatal".

But then again, I find the exam thingy slightly ... well, let's not even go there.

you have to retake Algebra even if you did it in high school?

I'd be surprised if the average high school algebra course covered group theory :-).

It's hard to explain the difference between high school algebra and "abstract algebra" but I'll.

In high school algebra, the variables stand for numbers. In abstract algebra, the variables might stand for the rules of algebra.

It's long on proofs and short on numbers.

Well, it's more advanced and in depth than Algebra you take in High-School.

Not Math, but Physics/Mechanics, by Sussman again. Title ? SICM hehe


SICM is not like SICP at all. SICM assumes you're pretty well versed in classical mechanics and already have an understanding of both Lagrangian and Hamiltonian mechanics.

Don't be fooled by the title and authors of the book!

Heh. I bought SICM expecting it would be "SICP for physics". I started reading and felt out of my depth after just a few pages. But it seemed interesting, so I got a Lagrangian and Hamiltonian mechanics book and started reading that. That was 6 months ago, I'm about halfway through and I'm really enjoying it!

Learning Lagrangian mechanics when all your life you only ever heard about the Newtonian approach is a lot like stumbling upon Scheme after years of programming in C.

I'm looking forward to cracking the cover of SICM once more this summer!

The only book on mathematics actually reassembling SICP I found is "What is mathematics?" by Richard Courant. I have read it after reading SICP, largely because I very much liked some of the more mathematical fragments in SICP, and surprisingly it felt like an actual follow up - it spends significant amount of time highlighting high level trends in mathematics, like use of abstraction and generalization, using very concrete examples. Sounds familiar?

Concrete Mathematics by Ronald Graham, Donald Knuth, and Oren Patashnik


Also Knuth's TAOCP series are very formal and dense, in a good way.

Concrete Mathematics is a great book, really good content and techniques about computing things, and a lot of depth and useful history and side information.

I'm in a similar position as well - perhaps at just a wee bit higher level (am learning grad-level math by myself). Below is a list of books that I have enjoyed. Some might perhaps be at a slightly higher level than you might need right now though.

1. Analysis - The Elias Stein, Rami Shakarchi Analysis series, Meassure Theory by Terrence Tao, Lebesgue Integration on Euclidean Spaces by Frank Jones, A radical approach to Lebesgue Integration by Bressoud

2. Algebra - Can't do much better than the classic texts by Herstein & Artin here. I know Artin doesn't get much love but after a point, you really begin to appreciate it.

3. Complex Analysis - is there a better math book than Visual Complex Analysis by Needham?

4. Topology - i'm partial to a Dover book on Topology by Theodore Gamelin. I learnt the basics of point-set topology & homotopy form this book. Great exercises.

5. Number Theory - check out the 2 problem books on number theory by Ram Murty. Melvyn Nathanson's book is quite good as well.

6. Combinatorics - Combinatorics of Finite Sets by Ian Anderson. Extremal Combinatorics by Jukna.

7. Graph Theory - Diestel or Bondy/Murty.

8. Galois Theory - Rotman is great.

I share exactly the same interest. Can anybody suggest some outline for what topics (more or less) should somebody cover to be on "undergrad-math" level?

Unfortunately I have to hold my own tongue this time, because books I found useful are mainly in russian and they surely aren't like SICP. And I still lack the whole understanding of the area anyway.

All the Mathematics You Missed: But Need to Know for Graduate School - http://www.amazon.com/All-Mathematics-You-Missed-Graduate/dp...

Words cannot express how grateful I am. This seems to be the very thing I looked for the long time and missed somehow! Seems not to cover really All the Mathematics I Missed however (nothing on algebra and number theory for example, which is admittedly my weak spot), but I'm already thrilled to start reading.

All major universities have their course catalog and requirements online, e.g. MIT, and with OCW, you can see the textbooks and syllabus for almost every class.

My idea was to cover 6 topics, which would be equivalent to a broad freshman and 1/2 sophomore math education:

* Set theory * Linear algebra * Geometry * Real analysis * Combinatorics * Probability theory

Eh, I was thinking about something else, actually. What you listed are taught in every CS program, aren't they? It isn't what I imagined when I heard "rigorous" at all.

Topology, number theory, abstract algebra (I mean, real one, not CS-course basics), statistics, tensor analysis? Isn't that "undergrad math"?

For things like Set theory/combinatorics/logic basics I'd recommend Rosen's "Discrete Math and Applications"[1]. CS oriented, simple, interesting, broad. Covers all the basic stuff.

Linear algebra — two books, "Linear algebra done Right" and "Linear algebra done Wrong". Second one more math-oriented, the first one — pretty simple, pretty clear, fun to read.

Real analysis ("calculus" you mean?) — I personally learned from different sources and probably the most concise book I read is Fichtengolz's "differential and integral calculus", but I don't know if it's available in english. I guess, almost any book on topic is fine.

Geometry & Probability theory — not sure what to recommend, because books on topic vary in depth dramatically, I would appreciate myself if somebody would outline the borders for what to cover first. Anyway, most of what I read and found useful is in russian, unfortunately. But still, what do you mean by geometry and prob. theory? Differential geometry, Riemannian geometry, erlangen program covered or only basic euclidean/analytic geometry stuff? Same goes for probability. If you care only for very basics — Khan's academy (or any random youtube videos) is fine. Any intro book on statistics covers it as well.

[1] - http://www.amazon.com/Discrete-Mathematics-Applications-Kenn...

I actually just bought Rosen's 'Discrete Math and Applications' on amazon. My college education was in art, so needless to say, not much mathematical training in my undergrad education. In my current job I'm a web developer and I've been trying to cover a CS knowledge base through self study. Through reading reviews about discrete mathematics books I was pointed towards Epps' 'Discrete Math with Applications' http://amzn.com/0495391328 and Rosen's book. I was told Epps' book doesn't go into as much depth, but doesn't assume any prior knowledge from the student. This is great for someone like me with an art degree and the will to learn discrete math. All this is tangentially related to why I'm posting. All of these books mentioned are really expensive, mostly because they are used in college classes. A trick I've started using is buying previous additions of these books for pennies on the dollar. I got Rosen's fifth edition for $7 as opposed to ~$160 for the seventh. After reading the update pages online, I don't think I really miss all that much doing this either.

Thanks. I have already covered those topics during my CS undergrad. But I'm trying to redo some things at a much higher level. Hence the comparison with SICP, which is far from a regular introductory book. In the same vein, a course with Axler & Rudin is far more advanced than a standard one.

http://ocw.mit.edu/courses/mathematics/ find a course(s) that covers what you're looking for, write a blog and call it Structural Interpretation Of Undergrad Math and pick the book chapters and lectures that go into depth like SICP does (:

Recently, I've been reading this mega book that covers a lot of advanced topics in math by Kolmogorov et al. It is nice because it covers a lot of topics w/o in a fairly short text --- it is a brick but it covers 2000 years of knowledge! http://www.amazon.com/Mathematics-Content-Methods-Meaning-Do...

For first-year stuff, I would recommend No bullshit guide to math and physics[1] and the No bullshit guide to linear algebra[2] of which I am the author.

[1] http://minireference.com/ [2] http://gum.co/noBSLA

I'm surprised no one has mention Mathematics for the Millions by Lancelot Hogben. http://www.amazon.com/Mathematics-Million-Master-Magic-Numbe...

He takes the approach of starting right at the beginning of human history when we first came to look at the stars and seasons and try to understand why they work, and then builds the math knowledge with each lesson. Excellent book!

My recommendation is "One-Variable-Calculus with and introduction to Linear Algebra" by Tom M. Apostol, followed by "Mathematical Analysis". Both books form a great combination!

There is a recent book by Sussman and Wisdom that goes over Differential Geometry with a focus on Physics applications.

http://groups.csail.mit.edu/mac/users/gjs/6946/calculus-inde... http://www.amazon.com/gp/product/0262019345/

Edit: included Amazon link.

This might be along the lines of what you're looking for: http://www.amazon.com/Mathematics-Birth-Numbers-Jan-Gullberg...

  "This extraordinary work takes the reader on a long and
   fascinating journey--from the dual invention of numbers
   and language, through the major realms of arithmetic,
   algebra, geometry, trigonometry, and calculus, to the
   final destination of differential equations, with
   excursions into mathematical logic, set theory, topology,
   fractals, probability, and assorted other mathematical
   byways. The book is unique among popular books on
   mathematics in combining an engaging, easy-to-read
   history of the subject with a comprehensive mathematical
   survey text."

I dunno about SICP-like, but here's some good book lists

https://github.com/ystael/chicago-ug-math-bib (updated Univ of Chicago bibliography




and 2 i got from HN and /r/machineLearning




finally, the "Maths for PHysics" texts





(if i had to recommend only one book, it would be the Boas, or maybe Princeton Companion: http://press.princeton.edu/titles/8350.html

David Mackay's Information Theory, Inference and Learning algorithms doesn't cover everything, but it ties up a lot of important topics.


It's not at all like SICP (I've never met a math book that was similar), but it's a wonderful introduction and I don't see it mentioned in this thread yet: Needham's "Visual Complex Analysis".

Spivak's Calculus is like SICP.

Jan Gullberg wrote an excellent book:

Mathematics: from the Birth of Numbers.

It's mainly pure math but is a great foundation. I mean really better than anything else I've read.


That would be just a list of title to browse. Buy the ones you find useful.

Naive set theory by Paul Halmos

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact