For me the most interesting parts are the first (comprehension) and the second (reasoning). The third part "doing of the math" sounds more of a procedural thing, which is important for exams but otherwise very meh.
What would be really cool though is if we could see more details about whar happens in the second phase. When does the correct solutino "click" into place? What happens before (are many hypotheses begin explored in parallel (BFS-like), or does the brain follow one track at a time (DFS-like)...
Also interesting would be to quantify the metabolic cost (in watts) for different types of problems. Does "thinking hard" really require more energy or is it an illusion?
Math being hard has always confused me; spend just one hour learning computer vision algorithms or neural networks and you'll find them to be very mathematical. It even explains nature so well, what with fibonnacci and so on. So why do I struggle? Surely I should be able to tap into the enormous power that can translate random sound waves into coherent sentences, or a bunch of pixels into an upside down hippo. Nope. Instead when I try to multiply two matrices my head ends up overheating...
Not a remotely scientific speculation, but as far as the animal world goes you see much more "specialized processing" than "general purpose computing". I think this explains why we suck at general purpose computing but are remarkably good at things that general purpose computers have trouble doing.
For example, your brain (and dog brains!) handle some tasks like catching a ball while running/jumping, perceiving depth, and responding to a name which are very computationally expensive.
If you programmed a robot to do any of those things, you'd be multiplying matrices and doing FFT's everywhere. Somehow our brain does the same thing, but we don't have any means to observe the internal computations required to accomplish the tasks.
I'd also argue that general purpose computing capacity is a very rare thing in the animal kingdom because in most cases only enough capacity is needed to glue the specialized parts together.
>I try to multiply two matrices my head ends up overheating
How do you go about multiplying two matrices? Different people do it differently. It can be easy or hard depending on how you do it..
When you multiply, do you write your matrices in such a way that the bottom left corner of your second matrix sits near the upper right corner of the first matrix? (i.e: b31 is above and slightly to the right of a13)
If the resulting matrix is R with elements rij, then r12 (yellow and red) is equal to a11.b12 + a12.b22.
You can multiply matrices really fast just by popping the second one into that position. It avoids clutter and confusion. You'll probably never make mistakes again.
Of the two, between math and code, code is the more obfuscated form of the pair. Can not most code be expressed as pseudocode? Most pseudocode as an algorithm? And algorithms as math? Math is the purer, more fundamental, less obscured form. What we do with code is adapt and elaborate the unobfuscated essence of the underlying algorithms in order to make them rotely executable by machines, and we further twist and obfuscate the essence in order to optimize the coded algorithn for its bespoke execution environment. The math underlying a given piece of code strips all of this away.
I thought they made a mistake in the name of the psychology professor, John R. Anderson at Carnegie Mellon. There is a John R. Hayes, also at Carnegie Mellon, author of the "Complete Problem Solver".
I'd think it's more the 2nd stage: figuring out what to do, i.e. solving the problem. Once you've settled on the solution, typing it out, testing, and refactoring would be 3rd stage.
It depends on the problem. If you're doing something with the architecture already planned out for you or a simple script or change, that would be the case, but if you're figuring out how a whole theoretical system should come together or what the best way would be to make a certain class of component interact with others as a whole, the planning stage often takes longer, although including rearchitecting in "refactoring" can move some of this into that stage, if that's how you see it.
Of course not. Our brains evolved in a way so that a smiley appears on brain's scans top-rear point-of-view whenever we are in the responding phase of a math problem solving :-)
What would be really cool though is if we could see more details about whar happens in the second phase. When does the correct solutino "click" into place? What happens before (are many hypotheses begin explored in parallel (BFS-like), or does the brain follow one track at a time (DFS-like)...
Also interesting would be to quantify the metabolic cost (in watts) for different types of problems. Does "thinking hard" really require more energy or is it an illusion?