Habits of highly mathematical people
medium.com
medium.com
I'm not a mathematician and was miserable at math in school, but I apply these habits in the business world every day. They help me cut through a lot of crap that comes from other people's sloppy/lazy thinking.
>Anyone who has gone through an undergraduate math education has known a person (or been that person) to regularly point out that X statement is not precisely true in the very special case of Y that nobody intended to include as part of the discussion in the first place. It takes a lot of social maturity beyond the bare mathematical discourse to understand when this is appropriate and when it’s just annoying.
I don't disagree but would argue that the far more common problem is people - not just mathematicians, mind you - not considering definitions enough which ultimately leads to confusion and/or misunderstandings and consequently additional, unnecessary, cycles spent in discussion about "what do you really mean?"
>I'm not a mathematician and was miserable at math in school, but I apply these habits in the business world every day. They help me cut through a lot of crap that comes from other people's sloppy/lazy thinking.
That's possible. The OP does not claim that the traits he listed apply if and only if you are a mathematician. It's certainly possible that you hone these skills without being mathematically inclined.
I do contest, however, that these habits apply to all "highly" rational people. I know plenty of people who are rational (or so are they deemed to be by their friends and colleagues) yet decidedly do not possess some of the listed habits, especially "scaling the ladder of abstraction" and "Being wrong often and admitting it".
On "being wrong often and admitting it," based on my experience, it's not that you become modest as a result of studying math. By studying math, you realize how prone your mind is to arriving at a faulty, unproven conclusion, and you learn to be more skeptical of your own thinking and become more at ease with being "wrong", allowing yourself to let your intellectual guard down.
Basically, it's a basic vs. applied science critique; basic science is quite brutal, and you will be wrong very often. Usually there's little at stake regarding which conclusion you come to, so long as you're investigating something interesting. Someone trying to create effective medicine is in a very different situation.
> there’s very little fame outside of the immediate group of people you’re talking to
This is very true in most basic science fields. There are about 4 or 5 other labs in the world that are familiar with the details of my sub-field, and this is true for most of my colleagues. Mathematics is certainly not privileged in this sense.
The fact that you jumped to 'other people's sloppy thinking' as your first example is somewhat telling. The point is that your whole perspective can shift from thinking that you're smarter than other people and need to correct their mistakes, to understanding how to collaborate with other smart people over difficult problems while everyone is making and correcting mistakes.
You'll have to take my word for it but I'm under no illusion as to my smartness relative to others. More often than not I'm the dumbest person in the room. I learned the hard way that I have plenty of blind spots and I'm the first person I should be checking for 'sloppy thinking'.
Getting meaning across via words is fundamentally the same process.
-- Here, I think you've distilled the basic assumption of the op and I would claim someone with enough exposure to mathematics will know this claim is wrong.
Informal arguments may indeed be carefully and even exactly argued but they nearly always involve implicit emotional appeals, appeals to unstated common assumptions and definitions and so-forth.
Mathematics is different - the arguments are absolute, given the assumptions is can be demonstrated that the conclusions follow, even to the point of the proofs being mechanically verifiable. The reason someone making mathematically assumptions often has to admit their wrong is the arguments have follow a determined series of steps whereas someone with a strongly held, strongly articulated belief-system about the ordinary world can have a plausible answer to every objection but with some portion of those answers being appeals to commonly held beliefs in society.
It's all a difference in context and environment. When talking through the specification of a product your building and prerequirements for it, nitpicking the definitions will save you pain and money.
On the other hand, nitpicking whether someones analogy in covers exact 100% cases of the issue while ignoring the point of the conversation will just make you look like an arsehole in front of the group of people. And the latter is still painfully common on HN as well. As the article says - understanding when some detail is important for the current conversation is an important social skill.
And if you have ever worked with customers to elicit requirements, then you will know that the human race has far more fuzzy thinkers than it does logical pedants. (And of course some of the worst nitpickers are fuzzy thinkers too).
Maths in school is not really like the maths that mathematicians do.
There's a huge difference between reasoning about abstract statements and arithmetic calculation, even when it comes to abstract statements about arithmetic. I'm not saying there's no correlation, but the conditioned probability in the direction of bad at arithmetic => bad at mathematical reasoning is probably much lower than you'd expect.
At the very least, I'd encourage those that are bad at arithmetic to not assume they will be bad at mathematics or data science. If I had, I'd be much worse off and less happy than I am now with math in my life :)
It's similar to the Grothendeick story -- a mathematician making a simple mistake -- that get exaggerated to "mathematicians can't do arithmetic." https://en.wikipedia.org/wiki/57_(number)
Another common myth was that Einstein was bad at math, because he (and others) had trouble in school because the material was too easy and he quarreled with teachers, and "failed" tests for early college admissions administered in a foreign language. https://www.washingtonpost.com/news/answer-sheet/wp/2016/02/...
When a mathematician confesses being bad at calculation, they don't mean "couldn't pass high school", they mean compared to their elite peers.
There's a wide margin between "couldn't pass high school" and "had difficulty with math in high school". And I've known plenty who confessed that were quite explicit that was not what they meant (e.g. by comparing themselves unfavorably with their children).
[1]: http://math.stackexchange.com/questions/551074/are-all-mathe...
But because I was specialized towards mathematics, I had been ... "inconvenienced" in favor of "easier" courses for the non-specialists. I think there's a severely unexamined premise in that state of affairs - but I have to ask - would others be as math-phobic if they really knew how it worked?
The head of the math/sci department literally said "Calculus keeps the dumb people outta med school" - and he was only partly kidding.
The question is - is rigor, even partial, informal rigor ( if that even makes any sense ) of value to everyone or not? It's obviously painful. But it really helps with goal of not being a sucker.
University maths is much more logical than the school voodoo I had.
Some of the most blatantly off-putting characteristics of school math, like mindless repetition, are antagonical to real math.
I think a broader term would be, habits of highly "analytical" people.
For example, many of the moral dilemmas that get tossed around as interesting become trivial to answer once you give a mathematically rigorous definition to words like "good", "moral", "utilitarian" or whatever.
Yes, but the while the conclusions become trivial, actually coming up with those rigorous definitions is not.
I'm not going to provide examples because they are likely to start a flamewar. But if you search for words like "normative" or "core principle" in my comment history, you can see how difficult it is to actually come up with those rigorous definitions. The problem is that when you do, you either come up with unsatisfying arbitrary definitions, or else you wind up implying peripherally related conclusions you probably dislike.
Yes, I am definitively guilty of being "highly mathematical" (and also highly economical and philosophical), and it pushes me to recognize incoherence in mainstream "thought".
> I usually take the presence of any proofs in my code as the cue to question my definitions.
What you sometimes see among philosophers is that even definitions that are the result of many iterations are still treated more like rules of thumb than precise definitions. Or they at least acknowledge that their definition is probably flawed, and proceed carefully.
Some proceed as if they are doing math.
I really don't understand this. You give a counterexample to a theorem; you don't give one to a definition. If someone disagrees with the definition and wants to use a different one, then they are talking about a different thing (even if they want to use the same English word to refer to each of them) and their conclusions can not be compared in any meaningful way.
Imo, you can't "proceed carefully" with a definition that is open to interpretation. If you could do so safely, then you know enough about how people could interpret your definition to form a more rigorous definition.
>> that somebody won't be able to
>> disagree with by counter example
> I really don't understand this.
> You give a counterexample to a
> theorem; you don't give one to
> a definition.
In a sense you do. Often when we are giving a definition we are intending to capture a particular idea. Sometimes the definition we give captures too little, or too much. If you find that out early enough then you can change your definition to better match what you intend.The classic example is "connected" from topology. Speaking very loosely, a set is "disconnected" is there is a "disconnection", which is a separation of the set into two pieces which are contained in disjoint open sets. Basically, the set is disconnected if it's made up of two (or more) pieces that can be divided by a "surface". A set is "connected" if there is no disconnection.
The problem is that there are sets we want to think of as not connected, and yet which satisfy the definition of connected as given above. Here's an example:
X = { (x,sin(1/x)) : x in R, x>0 } u { (0,y) : -1 < y < 1 }
So the net result is that we have the two definitions: "connected" and "pathwise connected."If that example had been thought of earlier, it's possible that the definition of "connected" might have been fixed earlier. So in a sense, X is a counter-example to the definition of connected.
Further reading:
http://planning.cs.uiuc.edu/node140.html
https://en.wikipedia.org/wiki/Connected_space
https://en.wikipedia.org/wiki/Connected_space#Path_connected...
Mathematical definitions are usually abstractions of concrete observations, but they aren't the observations themselves. This is why coming up with a mathematical definition often requires more work than coming up with any other kind of definition.
> What is "1"? The idea of "1" can only be understood in terms of experience
1 is very rigorously defined: As a natural number, it's the successor of 0. As an integer, rational, real or complex number, it's the result of mapping the natural number 1 into Z, Q, R or C in a suitable way (compatible with the semiring structure of N).
That's all nice and dandy for mathematicians, but such is still meaningless (from an overall perspective) because ultimately you end up with recursive definitions. "The successor" of "0" means nothing because "successor" isn't defined, unless you define it via dimensions (or something else). Once you try to define dimension or otherwise, you have to define dimension, which leads to defining counting, which leads back to defining 1. Appealing to experience is the only way to end the cycle.
That said, it's perfectly fine to talk about a system within itself, but it's applicability to anything real (which is what I'm concerned with - my apologies if that's not where you're going) is limited to whatever can be described in terms of reality.
The existence of a successor function is postulated, because it's an axiom of the theory of natural numbers. It's up to individual models of the theory to define this function concretely.
Fuzzy premise -> precise logic -> fuzzy conclusion
where each of those arrows leaves so much room for interpretation that you can build literally an entire subfield by arguing back and forth about what the most reasonable mapping from fuzzy to precise and back again might be, even if everyone agrees that the manipulations in between are rigorously correct.
But in general when I read philosophers disucssing social matters, I feel they are being too rigorous. Trying to cover all bases when the fuzzy nature of the subject is always going to make their abstractions leak.
They have to do this because they compete with other philosophers who will pick the nits.
Perhaps it depends on what you mean by "precise", but philosophical arguments do tend to start by defining one's terms or disputing the opponent's definitions, expressed or implied. When continental philosophers talk, that's the only part I can follow.
It's why economists are terrible hedge fund managers and not mathematicians. It's why all these script kiddie programmers at silicon valley are terrible.
Tell me ... when you are mathematical, you cannot be wrong in all worlds.
There seems to be a gap between formal definitions and what we feel actual definitions are. Every once in a while, a professor would prove something that was clearly right, but felt like a violation of some unstated implicit part of a definition (for example, that the set of all vector spaces is itself a vector space). Despite feeling wrong, I couldn't come up with a particular reason that it wasn't right (short of falling back on some weasel word like "technically that's correct"). Math education forces that gap out into the open, and makes you pay more than lip service by building more and more theorems on top of it. The real world effect is to make you examine whether there's some actual value in this definitional gap (which can then be explicitly stated) or whether it's just fallacy.
I know far too many people who are comfortable with stopping at "this doesn't feel correct despite me having no counterargumemt to its 'proof' ". I've never been inclined that way but my math education certainly sharpened my ability to avoid this.
"I think X, Y, and Z are true." "If those are true, then A should also be true. But A seems clearly false." "Hmmm...I agree A is surprising, but not clearly false. What would distinguish a world in which A was true or not?" "Well, if A was true, we'd expect B, otherwise C." "Ok, I agree C seems much more likely than B, so that suggests one of X, Y, or Z is wrong."
But the virtue of always siding with the logical-but-unintuitive isn't as valuable outside of mathematics, so it's maybe not the best point to bring up in an article that's about skills math teaches that are useful in "real life". In philosophy, definitions aren't arbitrary and rigorous, they're meant to be reflections of reality. So when a conclusion feels unintuitive, that's a decent argument against the definitions it was derived from. If mathematics teaches people to just pay attention to the definitional gap, that might be useful enough, but isn't that covered by "discussing definitions"?
Hmm... under what operations? It's a semigroup under direct sum, and probably something under the tensor product, but I'm having trouble imagining what the scalar multiplication should be. (Or was that a "fictional" example? :)
[1] which was my concise but imprecise way of expressing "the set of functions from a set over a field to a vector space over the same one", with + and * defined as you'd expect.
Example 2: being too parsimonious. When doing mathematics you have a clear cut objective (your conclusions) and your goal is to achieve it while using the least resources (assumptions). In real life a person thinking mathematically may put in just enough effort to fulfill the formally specified part of their objective while ignoring informal requirements that are assumed to be 'common sense' by non-mathematical people.
Concerning example 2: If you want some 'common sense' property to hold, why don't you specifiy it then?
The author then goes on to provide 6 semi-abstract reasons as to why abstract reasoning matters. Since this question is most likely to be asked by a child, it is code for "how can math-skills make me money or get me a job." Upon hearing the author's answers, 13 year old me would conclude, "it doesn't, and math is as useless as writing poetry". A child who isn't thinking in this practical way is already academic minded and doesn't need an answer. "When will I ever use this?". It obvious! "In next year's math class".
It is sad that a student can leave high-school with almost no classes that ever makes math less abstract. The most beautiful moment in my life was my freshman college physics class. It first filled me with joy and then resent. Because I almost didn't go to college and there was no reason I wouldn't have understood this course at 13. Same goes for finance.
So answers should focus on applications like modeling simple Newtonian physics of a satellite in orbit or predicting the RPM when a 4-stroke engine red-lines based on max-stress specs. Or show them useful short cuts like the Rule of 72 and if they are curious show a derivation. Show examples of ratios/percentages, how fractals can simulate a landscape, ray tracing, or examples of the Fibonacci series in nature, etc.
I find it sadder that many can get through high school without any classes that make it more abstract. Too much of it is just mindless repetition of seemingly-useless incantations that have no meaning or apparent purpose (especially if the concepts aren't understood). Where there are word problems, many students are confused and hate them because they haven't really learned how the math abstracts the situation. (Or how to look at a situation and recognize "Hey, I could abstract this with math to get more information!")
I once tutored a student who hated math and after 11th grade was still failing pre-algebra and wouldn't be able to graduate. After a few months, we had covered algebra 1 and 2, geometry and trigonometry, and a brief intro to calculus and statistics. She aced the test, graduated, and went on to become a successful professional in a job that routinely used math. By then she loved it. Problem? It had never been about the joy of discovering new ideas and new ways to use them. It had always just been shuffling numbers around without any concepts or thought processes that could lead to understanding.
My answers are simple:
Why should you learn it? As with learning to read/speak/write, it gives you another way to think and communicate, and exposure to concepts, some of which you may never use, others of which may someday be very valuable. Even if you don't use them everyday, just knowing that they exist and could be helpful (and recognizing when) is valuable.
When will you use this? You may not personally sit around calculating statistics and probability, but as a manager you may recognize that they could help you make important decisions, avoid problems, and increase profits. So you know to hire someone who can do the calculations, and you have a general idea of what to ask them for and how to understand the reports they give you. And to ask questions to get them to explain the business meaning of things affected by confidence levels or standard deviation so you can understand how that affects your decisions. You'll use it to increase knowledge, success, and profit.
"Education is what remains after one has forgotten what one has learned..." - Albert Einstein
This article is spot on, and some of the behaviors really do seem more indicative of "mathematical people" -- which I suggest really stands for "those who have done research in a 'mathematical' field." (The key being the mix of cold, hard precision in the idealized proof with the squishy, intuitive, human activity of discovering what is pretty and true -- an aspect usually lost in math education!)
Some examples I found most poignant:
- The article mentions "fluidity with definitions" and illustrates it well with the anecdote about Keith Devlin. This is a skill distinct from pure "analytical reasoning," as it requires comfort with definitions that are at once precise but also open to (frequent) change. The process of forming and changing definitions is creative and imprecise, and falls into what is sometimes called "conceptual reasoning." (A programming analog might be API design.)
- Several of the other points are tools for figuring out what is true, and for precising imprecise statements. For example the need to "teas[e] apart .. assumptions" is only natural when reading papers with Theorems that have very precise conditions .. which do not exactly hold in the case you need! In many other "analytical" contexts pre-conditions are not made as precise and arguments by analogy are considered acceptable provided the conclusion is believed. (A programming analog might be debugging when some implicit pre-conditions or invariants break.)
- "if and only if", versus mere implication
- TFAE, as in, the following are equivalent ways of establishing some property
- Defining a relation, say R, between entities, and establishing properties about R, like transitivity.
- Defining notations, labels and symbols for certain quantities or relationships within a problem.
You typically first learn these idioms when doing proofs or reading lots of math and trying to summarize the ideas in it. Some of them are also aligned with the more abstract side of CS (unsurprisingly).
Someone who has had a little experience with these habits can make a real contribution to clear thinking. How many times have you stood at a whiteboard discussion where people repeatedly talk about "the properties that this object inherits from its parent" (or similar) -- but without just inventing a notation for that thing?
Most of the Senior Engineers I look upto and who I consider as role models seem to know this. They are carefree and jovial in most conversations, but when its time to design a system or drill into root causes of an outage, they are capable of asking (and answering) these types of precise questions. I've learned a LOT from working with them and do hope to be like that in the future.
1) Definitions == overloading. We regularly run into overloaded terms that mean very different things to different people. Microservices. Technical debt.
2) Being wrong - there is a perceived cost to being wrong, and in many organizations it is unfortunately a reality. When new or young, there is so much emphasis on proving oneself that there is easily a disincentive to opening oneself up to risk of being wrong. After being around a while, it is easier - sometimes I like advancing a position I know to be wrong because I know it will more efficiently generate explicit reasons why, as people protest (although even there I usually make clear I am doing devil's advocate).
3) Abstraction scaling - it's unfortunately so common for programmers and technical people to get pedantic, which frustrates people and wastes time. Sometimes it's driven by insecurity. For instance, needing to be the smartest person in the room, or proving competence in an area that is not directly relevant. And sometimes that insecurity is rational, for instance if part of an organization that encourages insecurity through its systems. But oftentimes it is because of a lack of experience with abstraction, or an inability to recognize what "rung" a discussion is on, or losing one's place on the abstraction tree. Complicating this is that sometimes it is important to drill down when no one else wants to. Recognizing this and keeping track of relevance is one of the hardest things to do when dealing with deep subjects and arguments.
>Equivalence. Basically, the idea that two things can be functionally equivalent (or close to equivalent) even if they look very different (and conversely, that two things can be superficially similar but functionally quite distinct). For instance, paying off a credit card at 10% is equivalent (as a first approximation, at least) to investing that money with a guaranteed 10% rate; once one sees this, it becomes obvious why one should be prioritising paying off high-interest credit card debt ahead of other, lower-interest, debt reduction or investments (assuming one has no immediate cash flow or credit issues, of course). Not understanding this type of equivalence can lead to real-world consequences: for instance, in the US there is a substantial political distinction between a tax credit for some group of taxpayers and a government subsidy to those same group of taxpayers, even though they are almost completely equivalent from a mathematical perspective. Conversely, the mistaking of superficial similarity for functional equivalence can lead to quite inaccurate statements, e.g. "Social Security is a Ponzi scheme".
[1]http://mathoverflow.net/questions/74707/mathematical-habits-...
This is one I have a tough time explaining to students who are so focused on the task at hand they don't feel there's time to sit back and reason in generality.
> The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise
By taking away all the non-essential things and leaving only on what you need, it allows you to truly understand the structures that you are studying. Definitely rings true when I work in ML/Haskell-style type systems. Easier said than done convincing the students though...
This is the essence of type abstraction and parametricity!
Somehow I got into a software engineering position in robotics. And regularly I need not just the logic and rational thought you gain from school, but the practical math skills.
I've been picking up what I need to learn from open courseware like MIT lectures. The thing that really upsets me is that I'm learning it without issue. I was always completely capable of it, but my time in high school convinced me I wasn't. I wish I had been convinced/allowed to take more math in university.
This, by the way, is also the answer to that question "do we need to study math for programming". Discipline in the use of ones own mind is what is required.
I find myself rereading it every once in a while.
Not many people will take the same approach to their own values, and philosophy shows the difficulties in using the mathematical/logical approach to value systems and human thinking.
The precision you hold yourself to through a rigorous approach to a problem is also very valuable and is the reason I think calculus is very important.
What property concerning precision does calculus have that doesn't hold for any topic in mathematics?
Students usually see infinity for the first time in calculus (or maybe when working with infinite series)
These are the situations where we commonly see people being confident in their incorrect answers (which is worse than being unconfident and unable to get correct answers)
Difficulty wrangling infinity comes up a lot on Hacker News, even https://hn.algolia.com/?query=infinite%20series&sort=byPopul...
Students also see groups or R-modules the first time in abstract algebra. So what.
> These are the situations where we commonly see people being confident in their incorrect answers (which is worse than being unconfident and unable to get correct answers)
> Difficulty wrangling infinity comes up a lot on Hacker News, even https://hn.algolia.com/?query=infinite%20series&sort=byPopul....
I rather the reason why "infinity" is misused so often, but, say, groups or R-modules, not so lies rather in the fact that too most math instructors too much to appeal to intuition in calculus, but not in abstract algebra. Thus mathematics should be taught in a much more abstract way where you are not misled by your bad intuition because you simply aren't able to formulate wrong thoughts in the abstract framework (that's why the abstractions and formalism was invented).
Though, perhaps it's the other way and the overly precise (Asperger's syndrome?) people become mathematicians as opposed to them developing the precision?
I Live in a hundred year old home, have never seen a 90 degree angle on any of the walls and everything is a little off. Growing up learning fine wood working. My house has provided so many confounding moments.
Mathematics only shows you deductions that could be make out of initial axioms and rigid rules. It doesn't mean the assumptions you made while forming axioms or the rules itself are right.
Having said that being mathematical increases your chances of arriving at the right results.
There's no absolute notion of “right” to begin with. There's just “provable” (in a theory) and “true” (in a model of a theory). Furthermore, a statement that's true in one model might not be true in another.
Not really, by Gödel's incompleteness theorems, they are always working in a realm where some things cannot be definitely proven or disproven.