Live data from Hacker News

Ask HN: Learn Math the Hard Way

news.ycombinator.com

61–70 of 88 posts

Re: Ask HN: Learn Math the Hard Way

#61
post #28

Just follow the usual path for education in relatively applied math. Here is a nutshell description: The standard high school level subjects are algebra, plane geometry, second year algebra, trigonometry, and solid geometry. The standard college level subjects are calculus, abstract algebra, linear algebra, advanced calculus, ordinary differential equations. Might also take elementary courses in probability and stati…

There is a number of really quite good applied maths courses on youtube (roughly in this order from each group): MIT 18.06, 18.085, 18.086, 6.262, 6.450 Stanford EE263, EE364A, EE261 Profs Strang, Boyd and Gallager are quite a bit better with maths than the typical engineering lecturer, even though their courses are not exactly at the level of Rudin, Breiman et al.

My favorite math class was probably 18.310, intro to applied math, which is on ocw: http://ocw.mit.edu/courses/mathematics/18-310c-principles-of...

It's not comprehensive by any means, and you probably need to know at least calculus to be ready for most of this, but it covers some pretty cool stuff, including RSA.

Re: Ask HN: Learn Math the Hard Way

#62
post #45

Earlier quoted context omitted.

Most areas of CS you do are unlikely to need advanced calculus or topics that depend on it (differential equations, topology, measure theory...). Yes, we can both name exceptions, but on the whole you can learn them later if it proves relevant to what you want to do. You are right that you do need algebra, linear algebra, just enough calculus to understand infinite series (which is usually put in the second calculus…

> Most areas of CS you do are unlikely to need advanced calculus or topics that depend on it (differential equations, topology, measure theory...). Right. The only advanced calculus text I listed was 'Baby Rudin', and the main contribution there is just to get some of the more important properties of the real numbers, Euclidean n-space, infinite sequences and series, and Riemann integration solid. If a CS student is…

Meh. If you want to learn hard math to make it harder, and to give you background for stuff you might encounter, why not go whole hog? Go ahead, learn algebraic topology so that you can understand category theory properly, then when you encounter it in CS you'll know what people are talking about.

I think there is a point of diminishing returns.

Baby Rudin I'm dubious about. But Royden and big Rudin (both of which you recommended) I have certainty about. There are good reasons that I never saw CS students in my real analysis classes. I don't think it is particularly valuable for CS either then or now, to acquire a deep understanding of real analysis.

And yes, I know about measure theory. I know how it applies to probability. But I went the other way. I learned measure theory. Then I learned probability. Then I began having to do probability stuff in the real world. And not once has my measure theory background been particularly relevant.

As for Hilbert and Banach spaces, they are key pieces of mathematics. In fields from wavelets to optimization theory, they come up over and over again. But I would wager that most computer science professors do not need to know what Hilbert and Banach spaces are. I'd even bet that most have not heard of the Hahn-Banach theorem. Again, if you find yourself going that way, learn it later.

On combinatorics and graph theory, you claim that people will learn enough of that material elsewhere. Maybe, maybe not. But it is clear that programming problems routinely get turned into graph theory problems, many of the most important programming algorithms are about graph theory (start with the traveling salesman problem and work your way through the list of NP-complete problems), and at its heart, analyzing an algorithm's run-time is a combinatorics problem. Acquiring the necessary concepts and vocabulary for those is necessary, whether you classify the book you're learning from as a math text or a CS text.

Re: Ask HN: Learn Math the Hard Way

#63
I was in a similar position 3 years ago. I jumped into an open university maths degree at the second year, have done half of the final year and have moved onto a masters degree. All part time, for me this was the best way, as another commentator has said, it is easy to get lost among the vastness of the topic - I am still pulling together the threads of how all these things fit together. I would recommend the journey for the reasons you list, also it has proven useful in pursuing my interest in machine learning and general artificial intelligence. Take the plunge, you will probably not be disappointed.

Re: Ask HN: Learn Math the Hard Way

#64
post #38
post #13

Start with these topics. Work your way through them, and make sure you understand everything you have read so far before progressing. Do the exercises, or it will be a waste of time. 0) Algebra, Trigonometry, Calculus Make sure you have a decent grasp over high school level math topics. You might not need to use these topics frequently (though trig comes up a surprising amount), but they are necessary to establish a…

You say 'trig comes up a surprising amount'. It would be great if you could give a few examples of these instances. I have always thought of trigonometry as one of the areas I really enjoyed in school but something I have never used ever since.

Two recent projects come to mind, one where I was working on a program to draw and manipulate points in 2d space where I used rotation matrices, and another where I was testing the graphing routines in a monitoring service by sending load in sinusoidal spikes.

Re: Ask HN: Learn Math the Hard Way

#65
post #58
post #51

Earlier quoted context omitted.

I agree. ten's list is excellent but the OP wanted to learn topics that would help with CS and algorithms. To that end graph theory, combinatorics and basic calculus should have been given more weight. But for theoretical CS I can't think of where Linear algebra would be useful. Abstract Algebra yes, but why Linear Algebra ? (p.s. i read your stuff on kelly criterion a long whiles ago, top notch, thanks!) ---- I woul…

But for theoretical CS I can't think of where Linear algebra would be useful. Abstract Algebra yes, but why Linear Algebra? Linear algebra is a necessary piece of background for linear programming (including the simplex method) and or standard approximation algorithms for many NP-hard problems. Strassen's algorithm for fast matrix multiplication is commonly taught in algorithms class. It does not make much sense unle…

I thought of games and linear programming but didn't really count them as theoretical CS. The graphics and compilers groups don't really mix but I guess Graphics researchers are doing theoretical CS. But what's more, I didnt consider that there are people working on better algorithms for various integral transforms, on learning theory bounds and algorithms for various matrix operations and decompositions. Doh. For some reason I most strongly associate CS Theory to Languages. Which was silly in hindsight.

Re: Ask HN: Learn Math the Hard Way

#66
post #45

Earlier quoted context omitted.

Most areas of CS you do are unlikely to need advanced calculus or topics that depend on it (differential equations, topology, measure theory...). Yes, we can both name exceptions, but on the whole you can learn them later if it proves relevant to what you want to do. You are right that you do need algebra, linear algebra, just enough calculus to understand infinite series (which is usually put in the second calculus…

> Most areas of CS you do are unlikely to need advanced calculus or topics that depend on it (differential equations, topology, measure theory...). Right. The only advanced calculus text I listed was 'Baby Rudin', and the main contribution there is just to get some of the more important properties of the real numbers, Euclidean n-space, infinite sequences and series, and Riemann integration solid. If a CS student is…

You argument is solid and it would be great if math was taught more as a connected whole but many do not have that luxury. Key though, is the author never went into much detail as to his or her intentions and motivations so not much can be said if your list is inspiring or too intimidating.

One thing I'd like to point out is that measure theory is not the only and probably the least interesting way to study probability. There is the more elegant (IMO) approach via Nonstandard Analysis. And the fun more practical approach via Game Theory and Markets (which also support "imprecise probabilities").

I also think theres room for different approaches to the same thing, each offering their own unique insight. Many differential equation modelling problems, especially those involving populations could be fruitfully replaced by agent modelling.

Re: Ask HN: Learn Math the Hard Way

#67
post #66

Earlier quoted context omitted.

> Most areas of CS you do are unlikely to need advanced calculus or topics that depend on it (differential equations, topology, measure theory...). Right. The only advanced calculus text I listed was 'Baby Rudin', and the main contribution there is just to get some of the more important properties of the real numbers, Euclidean n-space, infinite sequences and series, and Riemann integration solid. If a CS student is…

You argument is solid and it would be great if math was taught more as a connected whole but many do not have that luxury. Key though, is the author never went into much detail as to his or her intentions and motivations so not much can be said if your list is inspiring or too intimidating. One thing I'd like to point out is that measure theory is not the only and probably the least interesting way to study probabili…

Nonstandard Analysis is an interesting side note. But pulling out the axiom of choice to differentiate x^2 is a bit much IMO. (Yes, I'm aware that there are different ways to construct the nonstandard model. But the subtleties needed to really understanding NSA are substantial. I far prefer the little-o approach that Knuth recommends.)

Re: Ask HN: Learn Math the Hard Way

#68
post #66

Earlier quoted context omitted.

> Most areas of CS you do are unlikely to need advanced calculus or topics that depend on it (differential equations, topology, measure theory...). Right. The only advanced calculus text I listed was 'Baby Rudin', and the main contribution there is just to get some of the more important properties of the real numbers, Euclidean n-space, infinite sequences and series, and Riemann integration solid. If a CS student is…

You argument is solid and it would be great if math was taught more as a connected whole but many do not have that luxury. Key though, is the author never went into much detail as to his or her intentions and motivations so not much can be said if your list is inspiring or too intimidating. One thing I'd like to point out is that measure theory is not the only and probably the least interesting way to study probabili…

Do you have any book recommendations for a nonstandard analysis treatment of probability? I'm really only familiar with the measure theory approach, myself. (In fact, I've been known to say that probability is the study of measurable functions with finite, nonzero integral over the real line.)

Re: Ask HN: Learn Math the Hard Way

#69
post #65
post #58

Earlier quoted context omitted.

But for theoretical CS I can't think of where Linear algebra would be useful. Abstract Algebra yes, but why Linear Algebra? Linear algebra is a necessary piece of background for linear programming (including the simplex method) and or standard approximation algorithms for many NP-hard problems. Strassen's algorithm for fast matrix multiplication is commonly taught in algorithms class. It does not make much sense unle…

I thought of games and linear programming but didn't really count them as theoretical CS. The graphics and compilers groups don't really mix but I guess Graphics researchers are doing theoretical CS. But what's more, I didnt consider that there are people working on better algorithms for various integral transforms, on learning theory bounds and algorithms for various matrix operations and decompositions. Doh. For so…

We tend to see the world through a filter of our own experience. :-)

Re: Ask HN: Learn Math the Hard Way

#70
post #62

Earlier quoted context omitted.

> Most areas of CS you do are unlikely to need advanced calculus or topics that depend on it (differential equations, topology, measure theory...). Right. The only advanced calculus text I listed was 'Baby Rudin', and the main contribution there is just to get some of the more important properties of the real numbers, Euclidean n-space, infinite sequences and series, and Riemann integration solid. If a CS student is…

Meh. If you want to learn hard math to make it harder, and to give you background for stuff you might encounter, why not go whole hog? Go ahead, learn algebraic topology so that you can understand category theory properly, then when you encounter it in CS you'll know what people are talking about. I think there is a point of diminishing returns. Baby Rudin I'm dubious about. But Royden and big Rudin (both of which yo…

> I think there is a point of diminishing returns.

Yes, there is a big question about what to learn, about how much to invest in such things.

> Baby Rudin I'm dubious about. But Royden and big Rudin (both of which you recommended) I have certainty about.

But Baby Rudin is a prerequisite to Royden and big Rudin.

I'm sorry, but probability, stochastic processes, and mathematical statistics were junk for me until I went at them via measure theory.

I floundered terribly with random variables until I saw the measure theory definition; it's terrific: Go take 10,000 measurements. Now have the values of 10,000 random variables. Any 10,000 measurements at all. So far, no concept of 'randomness' at all. So, random variables are very general things and, e.g., handle even deterministic processes as a special case.

E.g., sufficient statistics is just an application of the Radon-Nikodym theorem, and a total train wreck to do otherwise. Yes, order statistics are always sufficient, maybe nice to know in 'data mining'. That sample mean and sample variance are sufficient in the Gaussian case is mind blowing; nice opportunity for 'data compression'!

E.g., measure theory and the Radon-Nikodym theorem define conditional expectation, that is, under mild assumptions, E[Y|X] = f(X) for some measurable f. Then easily f(X) is the best non-linear least squares approximation of Y. Nice.

Further, if 'cross tabulate' Y on X, then have a discrete approximation to E[Y|X] which shows that cross tabulation is a discrete version of the best non-linear approximation of Y given X.

Measure theory permits working with all the forms of convergence of random variables, especially strong convergence, at least awkward to do otherwise.

Then martingale theory makes little sense without measure theory.

Measure theory, the Kolmogorov extension, shows that we really can have a collection of random variables with desired properties.

Measure theory is crucial in even defining E[Y|U(t), t Constructions such as

E[Y|U(t), t are crucial in the nice qualitative, axiomatic definition of the Poisson process.

Similarly for independence of two collections of random variables where each collection has uncountably infinitely many random variables.

Measure theory was crucial in the standard results of ergodic theory.

I wrote a paper on anomaly detection in server farms and networks, and the key idea in the paper was a finite group of measure preserving transformations lifted roughly from ergodic theory.

Via measure theory we can show that the space of real valued L^2 random variables is complete, and, thus, a Hilbert space, which continues to blow my mind that any such thing could be true. I'd also like to have locally compact, but that's a bit much to hope for!

The Doob decomposition shows that every stochastic process is the sum of a martingale and a predictable process, all measure theory!

It's tough enough to believe in probability with the measure theory foundations; otherwise, I couldn't swallow the stuff!

There is a broad point: Maybe OP wants to know what to learn for the applications of the future. Then what current CS profs know is not necessarily very relevant!

Post reply on HN