Secondary math education, for me in the UK, didn't deal with anything outside of elementary algebra, Euclidean geometry, some statistics, and relatively simple calculus. Nobody talked to us about imaginary or complex numbers, or bayes theorem, decision theory, or non-trivial mechanics problems until I was in college (age 16+). Nobody mentioned matrices, broader number theory or discrete transforms until I was in university. I studied EE not compsci. Things like algorithmic complexity I had to learn for myself and from Knuth. I'm trying to grok group theory right now to help with my understanding of crypto. Before this, it was never mentioned throughout my education, so I don't know what courses you would have had to take to learn that. The fact that I didn't even know group theory was important to crypto until after I had made the choice strikes me as a bad sign.
The common theme at every level is learning cherry-picked skills, before you're even told what the branches of mathematics even are. Everything seems disjointed because you're not taught to look past the trees for the forest. Most people infact, even technical folk, go through their entire lives without knowing the forest even exists. Any idiot can point to a random part of their anatomy and posit that there's a field of study dedicated to it. The same goes for mechanics or computer science. You just can't do that with mathematics as a student.
I loath academic papers. Often I find I spend days or weeks deciphering mathematics in compsci papers only to find the underlying concept is intuitive and plain, but you're forced to learn it bottom up, constructing the authors original genius from the cryptic scrawlings they left in their paper... and you realise a couple of block diagrams and a few short paragraphs could have made the process a lot less frustrating.
So many ideas seem closed to mortals because of the nature of mathematics.
Often I find I spend days or weeks deciphering mathematics in compsci papers only to find the underlying concept is intuitive and plain, but you're forced to learn it bottom up, constructing the authors original genius from the cryptic scrawlings they left in their paper... and you realise a couple of block diagrams and a few short paragraphs could have made the process a lot less frustrating.
This is SO TRUE.
The same thing happens to me regularly, and not just with "computer science" but with other technical fields, hard sciences, and mathematics. The purpose of most academic papers is not to explain (let alone teach!) ideas in an intuitive manner, but rather to express them in formal, correct, unambiguous terms -- that is, to make them as accurate and critique-proof as possible for publication in some journal.
> The purpose of most academic papers is not to explain (let alone teach!) ideas in an intuitive manner, but rather to express them in formal, correct, unambiguous terms -- that is, to make them as accurate and critique-proof as possible for publication in some journal. Their intended audience is subject matter experts.
Their purpose really is to let the authors show off how smart they are, impress their peers, and advance their careers. The other properties derive from that.
;-)
edit: I don't want to disparage research in general, BTW, but specifically, the scientific paper redaction process.
I assume you mean the "reduction" process. The "redaction" process is an important part of the scientific process!
I know you were being sarcastic, but I think you are also being a bit unfair. Publication is necessary these days at perhaps an unfortunate rate, I agree.
However at least most research mathematicians publish largely to share ideas. After all, that's the best part of the job. Certainly this is true of the vast majority of them in my experience, and the ones weren't motivated by this tended to be very focused on teaching and very good at it.
Just as a specific example, I had this experience with Bayes' Theorem <http://en.wikipedia.org/wiki/Bayes%27_theorem>. As an informal paper for my computer security class, we used Bayes' theorem to implement aimbot detection in a simple FPS. It sounds like a big, complicated theorem with a special name that some genius had to come up with and has complicated notation involving probabilities and logic symbols.
And then it's basically (paraphrasing with reckless abandon) just the probably of your event divided by the total probability space. Lots of words and jargon and theory given in countless papers and articles, and it pretty much just boils down to intuitive addition, multiplication, and division.
And our aimbot detector actually worked pretty damn well! Just gather some data points to determine probabilities, plug them into the simple formula, and it was always correct in our test cases.
"and it pretty much just boils down to intuitive addition, multiplication, and division."
Or does it? After all, probability is one of the very first mathematical tools to be divised, but a rigorous theoretical underpinning for probability and statistics had to wait until measure theory, millenia later. And this was not for want of trying.
Part of what makes things "boil down" to the simple and intuitive is years of hard work. Reading Newtons original work on the calculus is painful and convoluted, it took many hands to polish it to the point you might have seen it in.
If we've done our jobs well as mathematicians, eventually the essence of an idea will be easy to understand an apply. If you really want to understand it though, you may have to dig into some much deeper work. And often, as with many thing is in mathematics, human intuition will just tend to be wrong about it (e.g. the Monty Hall problem).
It's the same with the crypto we rely on. There are some quite complex mathematical underpinnings for the primitives, but once understand their properties all the common protocols are actually incredibly trivial. DSA and various other iconic crypto protocols are just linear algebra using these new mathematical primitives. The complexity is about the same as using hash functions to build hash tables. Making protocols secure is actually mostly an implementation challenge (as it is with hash tables), and keeping systems secure, pragmatically, is about key management and social challenges.
I was incredibly proud when I noticed, just through algebraic manipulation, without reading it anywhere first, that you should be able to extract the public key used to create an an ECDSA signature. Schnorr signatures don't have this property. This is kind of sad in a way becaue it's trivial, but you have no know how the primitive functions and the difference between a field and a group.
Unambiguous? I wish! The notation in most fields is way more ambiguous than code; you're expected to resolve the ambiguity by the norms of whatever research community it's for. Code isn't necessarily clear, but at least all the information is there to be decoded.
And what's sad is that this "formal, correct, unambiguous term" pattern doesn't only apply in academic papers, but also in textbooks and learning and education (e.g. have you ever read a statistics textbook?) -- when we are trying to teach students concepts, we end up getting the opposite of what we wanted to achieve.
The purpose of most academic papers is not to explain (let alone teach!) ideas in an intuitive manner, but rather to express them in formal, correct, unambiguous terms -- that is, to make them as accurate and critique-proof as possible for publication in some journal.
In other words, the purpose is primarily tenure and advancement.
The issue is that a lot of intuitive stuff is wrong. When you formalize, you remove the simple, intuitive explanation - but you make it much harder for you to remain wrong, if you are wrong - or to become wrong, if you started off right.
As a simple explanation, consider the difference between explaining the Monty Hall problem - which might seem to be philosophical, open to interpretation - and coding it up. The moment you code it up --- go ahead, code up a monte carlo simulation that compares the two alternatives of switching doors or maintaining the same choices, and spits out a running count of which is what percentage correct. I'll wait while you code. ---
the moment you do that, you see two lines in your code that make the explanation 100% irrefutable and completely obvious.
That is why papers are written this way. Intuition can go both ways.
That would be more convincing if the scientific papers were written in a way that make the point as clearly as the coded-up version of Monty Hall problem. In practice, it's more like they publish the assembly code and when you ask why they didn't do it in Python or something, they lecture you about the need for formal rigor.
I think there's generally selection bias about what part of an exposition makes the "a-ha" hit in two ways. First, your a-ha moment may not be the same as someone else's, but you're less likely to observe theirs. Second, your own a-ha is likely the product of a larger production than the moment itself of which you're most attuned to.
A good mathematical author must be guarding against both of these selection biases.
Why 100? Why not just 5? Some people would 'get' it at five, some people at 100, and some people at a million. If you have to choose out of a million doors, and no matter what the host opens all but one of them, so that your prize is either behind the door you picked, or behind the other one -- then should you switch your choice?
Well, obviously, you should - with a million doors, it becomes obvious that you have just a 1 in 1,000,000 chance of having picked it.
But thing is - that "obvious" thing 'should' be just as obvious with 1000 doors, 100, 20, 5, or...3....
It's a matter of degree - not kind.
So appealing to a way of intuiting it that is a lot more 'obvious' - while in fact having the exact same format of question, just goes to underscore how fickle intuition can be.
That said, taking individual variables to ridiculous extremes is a great way to thought experiment and an awesome way to get intuition to work better.
That's odd, I found the 100 doors example is the most efective way of explaining it.
It's easy, pick a door, then the host discards 98 doors in which the car isn't. Do they still think that the probability of the other door left is the same than the one they picked? I want to play gambling games with them!
Pick a door, the host discards 98 doors
where the car isn't. There are now two
doors left, so it's 50:50.
Actually, I'm with them (except for the 50:50 bit). I don't find the 100 door version any more convincing than the 3 door version. Under the usual assumptions the reveal of the other doors gives no information about the one you picked, so that will always remain 1/N. The remaining door will therefore be (N-1)/N, which is bigger if N>2. So switch.
For me the problem is that math papers/articles lack a proper API documentation. By that I mean that it's very hard for me to understand what a lot of symbols mean because mathematicians (and physicians) love to use single letters to name various concepts and functions.
Worse, they also like to use the same symbol to denote different things in different fields. I'm sure it's extremely convenient to have a shorthand when working and sharing "code" with some peers in the know but for stuff like wikipedia articles it makes things appear more complex and obscure than they should.
I don't mind if people call a local function variable "n" in some code, it's usually non ambiguous. But if you export a variable "n" in an external API you will be screamed at. Why is it ok for maths?
To give a quick example, the letter R in maths can mean the set of real numbers. It can also (with a different typeface!) mean Ramanujan summation. Oh wait, you're doing physics? Then R is the gas constant, silly.
Also, i is the imaginary unit. Except in physics, then it's j, because i is used for currents. Makes sense.
I agree. To clarify, its not that the reader gets confused between the gas constant and the set of real numbers. The issue is never actually explicitly stating "R represents the set of real numbers" or "n is a natural number".
At uni it once took me hours to work out that "." was used for function application in one particular paper. "." was also used for multiplication and (in some example code) had the usual object oriented meaning in the same paper. It was incredibly frustrating.
> The issue is never actually explicitly stating "R represents the set of real numbers" or "n is a natural number".
It's at the start of like... every book ever. Pretty much any book on mathematics will start off with a fairly in-depth list of symbols.
It's the math equivalent of expecting you know what a 'while' loop is when you go reading through the documentation for a library (reading a paper) - basic programming literacy is assumed.
Yep, it's also a good practice for programming. Describe every single-letter variable in the README, which everyone obviously reads and memorizes before diving into the code. I still do this as a throwback to the days when we wrote code on parchment that cost a week's wages per square cubit.
You realize that there are fairly standard single letter variables in programming, for which people are supposed to understand the type of the object, right?
I see a lot of 'n' for a number, 'i', 'j', 'k' for loop indexes, 'a' and 'b' for the variables in a swap function, 'f' and 'g' for various things involving function composition.
The case of knowing what a capital pi or sigma means, however, is much more like knowing what a "while" loop is.
This makes me realise the potential that a supposed "Math API" has. Mathematical functions described visually, with unambiguous terms, and even properly named variables so they can be implemented even if you don't understand how they function entirely.
I would love to see a wiki style website that aims to produce such a wealth of information.
I've argued the same with a mathematician friend of mine. I hate academic papers because of their seemingly convoluted and backwards way of explaining things. His answer was that papers were not made to convey thoughts to laymen, they were made to communicate facts and proofs with as little ambiguity as possible, optimized for reading by other mathematicians. It's meant to be high bandwidth (hence the terse style and lack of intuitive explanation) and low ambiguity (hence the seemingly backwards order of explaining things and the pages of "a is blah, b is foo").
It's an interesting discussion because from the mathematician's perspective, they don't see why they should cater to anyone who doesn't bother absorbing the lingua franca and the method of delivery. Countering that is the philosophical argument that information should be as available as possible. Countering that is how practical and useful that is, and whether the cost / benefit would be worth it.
I still think we can have our cake and eat it too, but I'm not sure. I think if the purpose is merely to transmit proofs and axioms unambiguously, I think we can have a language that performs just that and nothing else. I think stuff like this exists, but I don't know why it isn't the standard to publish with it.
Then the explanation can reside alongside this unambiguous description, and can take whatever liberties it pleases.
I think the process of peer review often causes papers to be optimized for being hard to critique rather than easy to understand. I have myself participated in writing papers where we decided to leave out some non-crucial but very useful detail just because it opens up too many questions and opportunities for critique.
> I still think we can have our cake and eat it too, but I'm not sure. I think if the purpose is merely to transmit proofs and axioms unambiguously, I think we can have a language that performs just that and nothing else. I think stuff like this exists, but I don't know why it isn't the standard to publish with it.
Math papers are written with high compression using standard tables of translations to reduce the processing load when trying to manipulate several things at once.
But why present these in English, where you have to manually apply those tables of translations, knowing full well that humans are error prone?
Why not use a computer readable and standardized language like coq / gallina (http://en.wikipedia.org/wiki/Coq), where you can verify the proof unquestionably and immediately AND you can use a compiler to translate the theorem into latex / english / whatever form you want immediately?
If the "standard tables of translations" really exist and are really as standard as you claim, this method is clearly superior and that table can be utilized to translate to "mathematician lingo" if people still desire to stick to that.
They're generally published in symbols, which largely have a direct translation in to more formal methods, with the English being included to comment on the motivations, things which might not be formalized in the theory, etc.
The primary purpose of mathematics papers is for distributing information between mathematicians in a form which it's easy for them to integrate in to reasoning about new theorems. To reason about new theorems, you really want as many ideas/concepts to be able to be present in the mathematician's head free of context (ie, with the structure represented, but ignoring the traditional intuition about what it is or used for, which English naming can bias towards).
Part of the problem of Coq is that you'd have to formalize a lot of the metatheory in to something computable, and we've been struggling to find a good approach to that since the 40s/50s. We have a lot of trouble with trying to formalize the axioms in a way that you can compute results from them. (Axiom of choice + axiom of excluded middle can cause problems in Coq, for instance.)
A secondary concern is that the translations from full sequences of axiomatic steps to constructs which are higher level (ie, built on the idea that some axiomatic steps must exist in this instance, but we haven't found them explicitly) can be really complicated, as well as much bulkier.
A math paper is usually no more than tens of pages, while a computer proof of a theorem can run in to the thousands.
Your reply is fascinating - the part about size difference and the difficulty in expressing certain things in theorem provers.
About the size difference, I don't understand why it takes so much longer. What is so fundamentally different about Coq (or E or whatever) that it takes so much more space that just specifying it with mathematical notation?
Is it because you have to start from scratch? Has no one created a "standard library of existing theorems / proofs" that one can depend on?
Or is it because mathematical notation is just that much more expressive?
So if verifying proofs is that difficult, what the heck are mathematicians doing when they read a paper? Not really actually verifying the proof? It's hard to believe that verification is one of those things that humans are just better at. (As opposed to, say, formulating new ideas, which is fundamentally difficult for computers)
What is it that is so fundamentally difficult about verifying proofs formally, when a mathematician can just read a paper and call it done?
If provable theorems are too hard, why don't we simply just start with a parseable mathematical notation standard? It's be pretty similar conceptually, but would be standardized. Surely that's not too difficult? That could still serve as the portion of the paper that is the "transmitting new findings formally" part, whereas the remaining part can be devoted to explanation.
You seem to imply that mathematical notation should be standardized, but are omitting that even languages explicitly meant for computation are not.
Why do you think mathematics should be more standardized than programming? (Actually, I'd argue it's already more standardized than programming, and you're arguing for some kind of extreme position.)
Sorry, forgot to reply to part I had meant to:
> Is it because you have to start from scratch? Has no one created a "standard library of existing theorems / proofs" that one can depend on?
It's because we have essentially picked the parts of mathematics we're going to force to be true about half way up the stack. If the axioms don't permit those theories, then we'll do away with the axioms and pick a different set. (And perhaps explore why they failed to, and what is required in axioms to enable those theorems.)
As I mentioned before, mathematics already has a good way to relate high level theorems and such to these mid-level structures, and you see it employed all the time. The problem is that many of these structures aren't easy to compute with, so we're essentially having to work backwards to find a set of formalities that we can both do mechanistically and support the theorems/propositions we'd like to be true.
Mathematicians generally don't evaluate the truth of a new paper relative to the axioms, but relative to the already established results in a field. So you question about why libraries don't exist is essentially "Why have mathematicians not replicated hundreds or thousands of years of effort in to a format that's hard for them to personally use, but is good for these tools we've developed in the past couple decades?"
Well, people are working on it, but it's going to take some time. And the moment you pick a slightly different set of axioms, you need to rebuild large portions of the library you allude to, even if the results are still true.
(Derivations in terms of base steps are considerably longer than most mathematics proofs would be, which often omit some "standard" kinds of details. For an idea of what this is like, read portions of Principia Mathematica by Russell and Whitehead.)
Hey - thanks for actually replying and taking me seriously. This is as far as this discussion has ever gotten between me and someone who seems to know what they are doing. I'm actually learning a lot.
> It's because we have essentially picked the parts of mathematics we're going to force to be true about half way up the stack. If the axioms don't permit those theories, then we'll do away with the axioms and pick a different set.
Is this related to the famous incompleteness theory? If you hit a proof that you can't prove with this set of axioms, you just try another one? It blows my mind that you can just pick any set of axioms you like. It feels like there should be a set of core axioms that is the fundamental truth. Maybe it's time that I read G.E.B and the Principia. Any recommendations for these kinds of questions?
> So you question about why libraries don't exist is essentially "Why have mathematicians not replicated hundreds or thousands of years of effort in to a format that's hard for them to personally use, but is good for these tools we've developed in the past couple decades?"
Okay, so people are working on it. It seems like a miracle that the alternative of "we're doing it all in our heads" actually works:
> Mathematicians generally don't evaluate the truth of a new paper relative to the axioms, but relative to the already established results in a field.
This is what I'm taking about. What if - somewhere in the middle - there was a mistake?
...
> Why do you think mathematics should be more standardized than programming? (Actually, I'd argue it's already more standardized than programming, and you're arguing for some kind of extreme position.)
My main concern is - every year we get someone who thought they proved, for example, P != NP, only to find a few months and a billion man hours later that there is a minute error on page thirty-five where the author misunderstood and overlooked some very subtle thing. Wouldn't it me much more pleasant if this task was automated?
Wouldn't it be amazing if we could use machine learning methods or tree search methods to formulate a proof mechanically? Or automatically eliminate proof steps to make them less complicated! Compiler-style optimization if you will. Wouldn't it be amazing if thousands of existing proofs could be analyzed statistically? Wouldn't it be great if we could machine-translate standardized proofs into regular ol' mathematical notation or whatever language we want? When we have the ability in the future, we can go back and verify them all en masse! Am I deluded in thinking any of this could be valuable?
> You seem to imply that mathematical notation should be standardized, but are omitting that even languages explicitly meant for computation are not.
Well, at least programming languages without standards have an implementation that is the official implementation! So arguably, they are more standardized.
Anyway, thanks for replying, I haven't had such an interesting exchange on HN in a while. I'm eagerly awaiting your response (if you have the time)!
edit: Also it seems like learning a standardized mathematical notation would be only marginally harder that learning to typeset regular mathematical notation in latex! Heck, you could have it compile down to latex.
edit2: Another thought I had was, since mathematicians don't prove things all the way from the bottom axioms up, but from the closest accepted truth, couldn't we have verification systems do that instead? That seems a more easily reachable goal.
> It blows my mind that you can just pick any set of axioms you like. It feels like there should be a set of core axioms that is the fundamental truth.
Think of it like this: it's not that Euclid set out a set of axioms and they just happened to make geometry we could use to talk about triangles, lines, squares, and matched up (to varying degrees) with behavior we see in the world; rather, it's that we saw those relationships and went looking for the minimum set of rules from which they could all be derived. There are (of course) other choices we could have made, which are useful in different cases, such as talking about geometry on a sphere instead of geometry on a flat piece of paper.
> This is what I'm taking about. What if - somewhere in the middle - there was a mistake?
But there's a use in doing this that you might not see. Let's take for an example the history of limits. Originally, there was a sort of fuzzy conception of what a limit was - and everyone knew that it was problematic - but the results of limits if they had a particular kind of behavior were insanely useful, proving all kinds of things about the real numbers and how functions on them behaved. And so people, as they realize more formality was needed, went back and redefined a limit over and over in more rigorous terms until we reached the modern definition.
This process of continual refinement fleshed out the concept much better than had someone simply plopped down the modern definition and called it good. It gave a corpus of different approaches, linked up the intuitive notions with formalisms, and led to several generalizations applied to different contexts.
This organic process of exploring an idea iteratively is really what drives mathematics forwards.
> Wouldn't it be amazing if we could use machine learning methods or tree search methods to formulate a proof mechanically? Or automatically eliminate proof steps to make them less complicated! Compiler-style optimization if you will. Wouldn't it be amazing if thousands of existing proofs could be analyzed statistically? Wouldn't it be great if we could machine-translate standardized proofs into regular ol' mathematical notation or whatever language we want? When we have the ability in the future, we can go back and verify them all en masse! Am I deluded in thinking any of this could be valuable?
No, no, most people in the math community agree with you. They've been working on it since at least the late 1600s, with some of Leibniz's work, and likely much earlier. Euclid's work on geometry, in some ways, was the start of making mathematics so explicit as to be obviously true (or able to be reasoned about without anything being inferred).
However, it wasn't really until the 1950s that we settled on the way to formally describe a mechanistic calculation and really fleshed out the details there. Similarly, it wasn't until 1880-1920ish that we settled on most modern formalisms (ZFC, the set of axioms most often used for modern math, is from the 1920s), and really, some of that stretched all the way in to the 1940s.
If you need an analogy to what this would be like in a different field, we discovered (modern) formalism around the same time that biology discovered evolution, and formal (mechanical) computation around the same time they discovered DNA. Much like biology is still a very active field trying to build on these results, mathematics is trying to build on the big shake-up it went through in the first half of the 20th century. (Principia Mathematica, the Hilbert program, modern axiom set ZFC, incompleteness, and uncomputable numbers all date to this period.)
> Well, at least programming languages without standards have an implementation that is the official implementation! So arguably, they are more standardized.
It may not look like it, but mathematics actually is highly standardized within its various subdomains. I recently picked up a book on number theory slightly outside of my background, and was familiar with all the symbols they used. (There's an argument to be made we'd be better off with English terms/abbreviations in the style of programming, but I actually don't agree with that. I think the symbols reduce the cognitive load to keep something in your head, because they're formatted in a 2D (instead of 1D) fashion, and use typeface to represent types of the objects.)
However, that standardization process takes time. If you read the first couple papers in a subdomain, they often will use different symbols and structures than the subdomain eventually settles on. After a while, though, it tends to settle on a particular set of symbols used a particular way.
You can define those standard symbols in terms of the basic operations in a system like Principia Mathematica uses, but the usual omitted formality actually greatly helps readability. If you don't believe me, try reading a derivation in Principia Mathematica.
tl;dr:
I agree that more mechanical computing would be good (and so do lots of other people), but I don't think the highly specialized symbols are as bad as people outside the field make them out to be. Math contains lots of big, very specific, and slightly unusual ideas, so it makes sense to give them a particular language to write them in. It's actually very consistent once you get a knack for it. Try to think of it like learning a foreign language!
Also, if you want to look up active areas of research on this topic, you might want to check out Category Theory or Homotopy Type Theory. Both are very applicable to programming or science, if either is your field!
> Hey - thanks for actually replying and taking me seriously. This is as far as this discussion has ever gotten between me and someone who seems to know what they are doing. I'm actually learning a lot.
> Anyway, thanks for replying, I haven't had such an interesting exchange on HN in a while. I'm eagerly awaiting your response (if you have the time)!
Anything to get a chance to rant about how awesome math is, hahahahaha.
More seriously, I'm glad you find the topic interesting, and I generally think that the math community could do a better job of explaining the context of their work and what the current developments in the field are. Most people aren't really exposed to math invented after the 1700s unless they go in to a technical field, and even then, not much of it.
If you want any book recommendations, feel free to let me know (and tell me a little of your background, so I can pick the right level of book) and I can try to find something good.
Alright, going to stop ranting for one post, though there's much, much more to say!
> rather, it's that we saw those relationships and went looking for the minimum set of rules from which they could all be derived. There are (of course) other choices we could have made, which are useful in different cases, such as talking about geometry on a sphere instead of geometry on a flat piece of paper.
OK, this makes sense now!
> It gave a corpus of different approaches, linked up the intuitive notions with formalisms, and led to several generalizations applied to different contexts.
And I guess this gives you multiple points from which to verify new ideas.
> If you need an analogy to what this would be like in a different field, we discovered (modern) formalism around the same time that biology discovered evolution, and formal (mechanical) computation around the same time they discovered DNA
This kinda reminds me of the Bohr atomic model from 1925: it went through many iterations since, a lot of which were kind of true but not quite. They discovered that, oops, the electron orbits are elliptical, not circular. And the more weird and odd particles and effects we discover, the more accurate the model gets, but the original wasn't that bad at modelling reality. Or the Newtonian physics vs modern stuff. Newtonian physics was 90% there, but not quite enough to explain things happening in extreme circumstances that are difficult to observe.
> you might want to check out Category Theory or Homotopy Type Theory. Both are very applicable to programming or science, if either is your field!
Category Theory is definitely on my list of things to learn. HTT seems quite new fangled, I remember seeing that the book made a big fuss on HN recently. I'll have to read more into it to see if it's worth it for me to delve deeper into.
I'd love to hear more about book recommendations! I'm a software engineer and I've had a CS education, so I've had a decent chunk of college-level math (including linalg, diffeqs...), automata theory, etc. So, some exposure to post-1700s math, some formal paper-reading, etc. You can find my e-mail in my HN profile if you like.
In academia, there's some notion that eventually a teaching professor will consolidate many papers into one textbook, which will actually convey the material clearly for those without a graduate-level maths education in the specific subfield.
> I think if the purpose is merely to transmit proofs and axioms unambiguously, I think we can have a language that performs just that and nothing else
Mathematical notation is not easily computer parseable / checkable. And I'm not sure it's really standardized (no standards body that I could find) or even unambiguous for that matter. You could maybe call it a de facto standard.
I loath academic papers. Often I find I spend days or weeks deciphering mathematics in compsci papers only to find the underlying concept is intuitive and plain, but you're forced to learn it bottom up, constructing the authors original genius from the cryptic scrawlings they left in their paper... and you realise a couple of block diagrams and a few short paragraphs could have made the process a lot less frustrating.
It's like this all the time in math papers. It often seems in the end like the ideas themselves are fairly straightforward, and it shouldn't have taken that long to understand. I think, though, that if you actually sat down and tried to explain it in more intuitive terms, you'd find that you might not be able to. True, you could find a way to convey the general idea, but without the technical details, (1) while non-mathematicians may get a surface-level understanding faster, even mathematicians will not grasp the technical aspects, and (2) it will be very hard for anyone to extend your work or for anyone to apply it to another situation, so it will only be applied in the specific contexts that you explained it in.
Language isn't built to communicate math, so doing so effectively will be either difficult to understand or imprecise. Many people claim that it would be easy to explain deep math concepts with "a couple of block diagrams and a few short paragraphs"s, but I'd challenge them to write a textbook on abstract algebra, or topology, or something like that before they make that claim.
I regularly explain my PhD thesis on napkins. The explanation involves twins, one with a broken nose; fish; GPS satellites; and a tractor driving in a field.
Somehow this holds a crowd better than non-linear 72-dimensional space, and isometric and rigidity matrices.
But could they (1) extend your results or (2) have enough of an understanding of it to apply it to their work? The benefit of a napkin explanation is that they understand it well enough to know whether it would be useful/interesting to learn the issue better. If they really want to apply your results, though, then they'll need a better understanding. It's true that math papers aren't good for giving a surface-level intro to a subject, but they're not made for that. They're made so that if someone really wants to learn the subject, then they can.
Very valid point. I suppose I just think we could make room in scientific papers, especially in the digital age, for an explanation of how the idea came about. I spent most of my early research career trying to find out how mathematicians got their ideas in the first place, because no amount of learning mathematics seemed to teach that.
The reason is that math papers are usually tailored to another mathematician and thus abuses that to avoid a few communication pitfalls.
Firstly, it's broadly considered to be the case that mathematical ideas are not understood until you've gotten them "from a few different angles". Math builds upon itself so much that an idea may be almost useless on its own and produce true value in lying at the nexus between many convergent ideas. For instance, statistics as a field enjoys a very nice convergent point between logic, measure theory, and information theory (among others). Approaching it from all of these positions can lead to important mental breakthroughs and a paper or book author desires to appeal to these various "roads" to their topic. Without providing that context it might be said that the presentation is very sparse.
Secondly, almost conversely, each reader is likely to be more familiar with a subset of the possible roads to the author's topic of interest. By covering as many roads as possible as they approach their goal topic they provide more chances for the reader to pick an approach they find most comfortable and follow it (lightly ignoring the rest) to the goal. A simple block diagram might be the best way to present it to you, but only a private tutor could specialize their presentation so much.
---
There's an art to reading a math paper when you're an outsider to the primary topic. You want to breeze through the paper at a high level first, slowly collecting the exposition points which are most applicable to your own method of understanding. After that, iteratively deepen your reading while looking up topics which you feel you almost-but-perhaps-not-quite-enough understand. You can very easily read a paper and get enormous value while failing to connect to 60-70% of what's written.
> I loath academic papers. Often I find I spend days or weeks deciphering mathematics in compsci papers only to find the underlying concept is intuitive and plain, but you're forced to learn it bottom up, constructing the authors original genius from the cryptic scrawlings they left in their paper...
I systematically ignore maths in CS papers. If the concept isn't described with code or pseudo-code at least, I will look at who cites the paper, and look for someone who has replicated enough in code. 90%+ of the time I can avoid dealing with the maths entirely, or get enough details that I can glean the rest without bothering trying to actually understand the maths properly.
Usually I find the maths tends to obscure vast amounts of missing details.
Of course, how well that works depends on the specific field.
Some of the papers I have written actually made the problem simpler with math--XML Schema being notoriously impenetrable, for example, and XACML not being much better.
Would anyone be interested in seeing a "Rap Genius for academic papers" to address the third paragraph of parent comment? To those who aren't familiar with Rap Genius, I basically just mean a place where academic papers can be annotated and explained in plain language by the community. Would you read/contribute?
I think that would be fantastic. I have envisioned that kind of thing often. Something like "autodidact.stackexchange.com" (which doesn't exist), for example. The best explanations could be voted up. For bigger topics, it would not be explanations you're voting on, but rather "learning roadmaps" -- a recommended set of materials in a recommended order that is designed to help one grok the topic.
For academic papers, perhaps people could vote on two dimensions: (1) papers you'd like to see explanations for, and (2) particular explanations that were effective for you.
And yes, I would read the hell out of it, and yes, if there were areas I could contribute, I would do so.
I would find that interesting. Like others above have noted, a lot of papers are written for reviewers, and not with the intention of making it easy for non-experts in the field to understand the concepts involved. It would even be useful to be able to post questions/comments about the parts you don't get and have people direct you to relevant background reading.
Yes. Although the field of "academic papers" is significantly broader with a smaller user demographic than hip-hop, but if you could pull it off I would be an avid user.
I appreciate the quick feedback - I myself would love to use such a service. Just to clarify, I don't have the development experience to build this myself yet (I just switched to CSE from Finance this year) but if anyone else would be inclined to give it a shot, I'd love to help. Otherwise, free idea!
> Often I find I spend days or weeks deciphering mathematics in compsci papers only to find the underlying concept is intuitive and plain, but you're forced to learn it bottom up, constructing the authors original genius from the cryptic scrawlings they left in their paper... and you realise a couple of block diagrams and a few short paragraphs could have made the process a lot less frustrating.
You have the benefit of hindsight. Everything is obvious in hindsight. All the research I've done is obvious and straight forward, if only I had known what I know now and would be able to draw a few simple diagrams.
That is, until you realise it's not. In those days and weeks spent deciphering mathematics you are actually learning a lot. I cannot count how many times I've been reading mathematics and struggled for weeks on a concept. Then one day it clicks and it all makes sense. Then I re-read the description again and the answer is clear as day. The answer was always there, I just hadn't learnt enough to appreciate it.
>So many ideas seem closed to mortals because of the nature of mathematics.
I disagree with this statement 100%. No ideas are closed because of mathematics. The ideas are only closed if you are not willing to put in the time.
Group theory is a standard topic in a
college course, say, at the junior level,
in 'abstract algebra'. So, the other
topics typically are rings, fields,
vector spaces, maybe the construction of the
rationals and reals. The course might
also toss in a little on number theory.
Anyone with a ugrad pure math major is supposed
to know what a group is and the early, standard
theorems.
Group theory was used by E. Wigner for the
quantum mechanics of molecular spectroscopy so
that at times some chemistry students want to
know some of group theory and group representations.
My ugrad honors paper was on group theory.
I published a paper showing how a group of
measure preserving transformations could lead
to a statistical hypothesis test useful for
'zero-day' monitoring for anomalies in
server farms and networks.
Group theory pops up occasionally. Get
a good, standard text in abstract algebra
or two or three and spend a few evenings.
If you get to Sylow's theorem, you are likely
deep enough for starters. Group theory is
very clean, polished stuff and can be fun.
Go for it.
Exactly, many lessons are written to be defended from assault, not to be inviting. A castle, while romantic, is not as comfortable as a hotel.
(My personal mission is to find/share the aha! moments that actually make the details click. Why do we force everyone to laboriously discover them for themselves? Can't want talk about the underlying insights directly?)
Maybe not the corruption angle so much; but special interests. Now every book is designed to not offend the politically correct Californians, or the religious right in Texas, and to convince people that they are keeping up with the latest fads - http://www.edutopia.org/muddle-machine
> Secondary math education, for me in the UK, didn't deal with anything outside of elementary algebra, Euclidean geometry, some statistics, and relatively simple calculus.
I've been a secondary math teacher in the UK and I want to defend this point a little.
The job of a secondary math teacher at this level is to teach everyone math, particularly including a majority who don't have a strong interest and won't go on to study more mathematics. You probably underestimate how difficult a job this is.
With that in mind, this is already quite a long list of diverse topics. You neglected to mention an introduction to number, up to the real numbers, perhaps because you now think it is obvious. You were taught that.
I personally try to teach 'looking forward': explaining how these concepts link towards what direction you might take in the future.
However, it's very difficult to cover the whole scope of mathematics and mathematical subjects. For example, I personally knew only a little about what's relevant to EE (although I've learned over time). But, it's not that you could skip anything from the school curriculum anyway - my general advice is that potential EE students need to show interest enough to study independently outside of school.
Something like algorithmic complexity, you should be learning from Knuth. Well done for that: there are not many educational experiences better than learning independently from someone who has devoted his life to making his subject accessible.
I wasn't aiming to criticise the particular set or scope of topics taught at each stage, more so the fact there's no provision to ensure students are aware of what branches of mathematics even exist. There's no formal introduction or grounding or broad strokes.
It's like teaching science where there's no innate notion of biology, chemistry and physics as three separate disciplines... or teaching history without putting everything in its place on a timeline and your students end up not knowing whether Tudor times ended before or after the Ottoman empire fell.
It's the big picture exposure that I think maths lacks, and I personally never bothered to step back and actually look for that big picture until I was already in my 20s. The way maths is taught makes you feel like it's suddenly going to open up, but all that actually happens is you follow one branch.
If you took additional math along with basic/elementary math, they do go into more detail about the branches of mathematics. There's also further mathematics and combined mathematics, both are A level subjects.
I think basic math focuses more on arithmetic than math theory, which could explain your frustrations a little.
Nobody talked to us about imaginary or complex numbers, or bayes theorem, decision theory, or non-trivial mechanics problems until I was in college (age 16+)
For the benefit of those not familiar with the UK school system:
- Compulsory education goes up to the age of 16 (roughly 11 'grades')
- Many people continue at school until around 18 (an additional 2 years, called the 'sixth form')
- These final 2 years of school can be taken at a secondary school (~= high school in the US) or at a college (which may specialise in these 2 years only, or may go beyond). This college is not the same as a university, although there are some areas where they may compete for the same students
- Most people who enter university as undergraduates do so after completing these additional 2 years, and the exams which partially determine university acceptance are taken when people are about 17 or 18
I went through the UK education as well, did you do just E math? You can take Additional Math along with it, that covers complex/imaginary numbers as well as Poisson sequencing/binomial theorem.
The thing is, I use very little abstract math in programming. Doing analytic philosophy actually did more than mathematics. The math stuff I do in programming is super basic stuff like trigonometry (sometimes trig with differentiation if I want to be fancy and use inflexion on curves) for GPS triangulation etc. I've never had to do anything more complex than that
I'm a big fan of A Levels (my experience in late 90s) because of the depth they can bring. Between the ages of 16 and 18 I was exposed to group theory, n dimensional linear algebra, (basic) proofs, curvature, complex numbers, various series and convergence. It was very eye opening. And the same is true of virtually all disciplines. The insight into a discipline A Levels gives, at a quite young age, cannot be achieved with a broad syllabus where depth is diluted.
> group theory right now to help with my understanding of crypto
Im also trying to understand crypto better, from a mathematical perspective. Apart from group theory, what else should I have an understanding of before going further? Do you have any resources that you would recommend?
The progression of math knowledge in the US is more or less the same, since our high school is the equivalent to your last two years of secondary school combined with college.
The common theme at every level is learning cherry-picked skills, before you're even told what the branches of mathematics even are. Everything seems disjointed because you're not taught to look past the trees for the forest. Most people infact, even technical folk, go through their entire lives without knowing the forest even exists. Any idiot can point to a random part of their anatomy and posit that there's a field of study dedicated to it. The same goes for mechanics or computer science. You just can't do that with mathematics as a student.
I loath academic papers. Often I find I spend days or weeks deciphering mathematics in compsci papers only to find the underlying concept is intuitive and plain, but you're forced to learn it bottom up, constructing the authors original genius from the cryptic scrawlings they left in their paper... and you realise a couple of block diagrams and a few short paragraphs could have made the process a lot less frustrating.
So many ideas seem closed to mortals because of the nature of mathematics.