Why do mathematicians use single-letter variables?












228












$begingroup$


I have much more experience programming than I do with advanced mathematics, so perhaps this is just a comfort thing with me, but I often get frustrated trying to follow mathematical notation. Specifically, I get frustrated trying to keep track of what each variable signifies.



As a programmer, this would be completely unacceptable no matter how many comments you added explaining it:



float A(float P, float r, float n, float t) {
return P * pow(1 + r / n, n * t);
}


Yet a mathematician would have no problem with this:




$A = P left(1+dfrac{r}{n}right)^{nt}$



where

$A$ = final amount

$P$ = principal amount (initial investment)

$r$ = annual nominal interest rate (as a decimal)

$n$ = number of times the interest is compounded per year

$t$ = number of years




So why don't I ever see the following?



$text{final_amount} = text{principal}; left(1+dfrac{text{interest_rate}}{text{periods_per_yr}}right)^{text{periods_per_yr}cdottext{years}}$










share|cite|improve this question











$endgroup$








  • 44




    $begingroup$
    Would you imagine writing, say, a long exact cohomology sequence not using a super-concise notation?!
    $endgroup$
    – Andrea Mori
    Feb 28 '11 at 15:45






  • 165




    $begingroup$
    Because it's long, it makes it hard to see patterns, and it makes you think about interpretation when you should be thinking about form.
    $endgroup$
    – Alexei Averchenko
    Feb 28 '11 at 15:47








  • 49




    $begingroup$
    When I first took economics, it took me a bit of time to psychologically get over the fact that GDP, for example, stood for one quantity, not a product a three quantities.
    $endgroup$
    – JavaMan
    Feb 28 '11 at 16:01






  • 4




    $begingroup$
    Also, it also depends on what kind of programmer you are. APL programmers would beg to differ. (I personally think APL code is grotesque and unreadable, but for some reason, APL is still very popular among some financial types).
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:09






  • 7




    $begingroup$
    Multi-char vars can be very useful in some situations: e.g. in physical/chemical process modeling, the number of distinct variables can run into the hundreds/thousands easily. Single char variables just don't cut it in such situations -- people just end up using all kinds of multi-char subscripts/superscripts on single-char variables for disambiguation, and it ends up being messier than if they had just used multi-char variables to begin with. When the function of variable names is purely descriptive (rather than for revealing patterns), I believe a case can be made for multi-char vars).
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:24
















228












$begingroup$


I have much more experience programming than I do with advanced mathematics, so perhaps this is just a comfort thing with me, but I often get frustrated trying to follow mathematical notation. Specifically, I get frustrated trying to keep track of what each variable signifies.



As a programmer, this would be completely unacceptable no matter how many comments you added explaining it:



float A(float P, float r, float n, float t) {
return P * pow(1 + r / n, n * t);
}


Yet a mathematician would have no problem with this:




$A = P left(1+dfrac{r}{n}right)^{nt}$



where

$A$ = final amount

$P$ = principal amount (initial investment)

$r$ = annual nominal interest rate (as a decimal)

$n$ = number of times the interest is compounded per year

$t$ = number of years




So why don't I ever see the following?



$text{final_amount} = text{principal}; left(1+dfrac{text{interest_rate}}{text{periods_per_yr}}right)^{text{periods_per_yr}cdottext{years}}$










share|cite|improve this question











$endgroup$








  • 44




    $begingroup$
    Would you imagine writing, say, a long exact cohomology sequence not using a super-concise notation?!
    $endgroup$
    – Andrea Mori
    Feb 28 '11 at 15:45






  • 165




    $begingroup$
    Because it's long, it makes it hard to see patterns, and it makes you think about interpretation when you should be thinking about form.
    $endgroup$
    – Alexei Averchenko
    Feb 28 '11 at 15:47








  • 49




    $begingroup$
    When I first took economics, it took me a bit of time to psychologically get over the fact that GDP, for example, stood for one quantity, not a product a three quantities.
    $endgroup$
    – JavaMan
    Feb 28 '11 at 16:01






  • 4




    $begingroup$
    Also, it also depends on what kind of programmer you are. APL programmers would beg to differ. (I personally think APL code is grotesque and unreadable, but for some reason, APL is still very popular among some financial types).
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:09






  • 7




    $begingroup$
    Multi-char vars can be very useful in some situations: e.g. in physical/chemical process modeling, the number of distinct variables can run into the hundreds/thousands easily. Single char variables just don't cut it in such situations -- people just end up using all kinds of multi-char subscripts/superscripts on single-char variables for disambiguation, and it ends up being messier than if they had just used multi-char variables to begin with. When the function of variable names is purely descriptive (rather than for revealing patterns), I believe a case can be made for multi-char vars).
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:24














228












228








228


61



$begingroup$


I have much more experience programming than I do with advanced mathematics, so perhaps this is just a comfort thing with me, but I often get frustrated trying to follow mathematical notation. Specifically, I get frustrated trying to keep track of what each variable signifies.



As a programmer, this would be completely unacceptable no matter how many comments you added explaining it:



float A(float P, float r, float n, float t) {
return P * pow(1 + r / n, n * t);
}


Yet a mathematician would have no problem with this:




$A = P left(1+dfrac{r}{n}right)^{nt}$



where

$A$ = final amount

$P$ = principal amount (initial investment)

$r$ = annual nominal interest rate (as a decimal)

$n$ = number of times the interest is compounded per year

$t$ = number of years




So why don't I ever see the following?



$text{final_amount} = text{principal}; left(1+dfrac{text{interest_rate}}{text{periods_per_yr}}right)^{text{periods_per_yr}cdottext{years}}$










share|cite|improve this question











$endgroup$




I have much more experience programming than I do with advanced mathematics, so perhaps this is just a comfort thing with me, but I often get frustrated trying to follow mathematical notation. Specifically, I get frustrated trying to keep track of what each variable signifies.



As a programmer, this would be completely unacceptable no matter how many comments you added explaining it:



float A(float P, float r, float n, float t) {
return P * pow(1 + r / n, n * t);
}


Yet a mathematician would have no problem with this:




$A = P left(1+dfrac{r}{n}right)^{nt}$



where

$A$ = final amount

$P$ = principal amount (initial investment)

$r$ = annual nominal interest rate (as a decimal)

$n$ = number of times the interest is compounded per year

$t$ = number of years




So why don't I ever see the following?



$text{final_amount} = text{principal}; left(1+dfrac{text{interest_rate}}{text{periods_per_yr}}right)^{text{periods_per_yr}cdottext{years}}$







soft-question notation math-history






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








edited Oct 13 '11 at 14:20









J. M. is not a mathematician

61k5151290




61k5151290










asked Feb 28 '11 at 15:09









eatereater

1,253297




1,253297








  • 44




    $begingroup$
    Would you imagine writing, say, a long exact cohomology sequence not using a super-concise notation?!
    $endgroup$
    – Andrea Mori
    Feb 28 '11 at 15:45






  • 165




    $begingroup$
    Because it's long, it makes it hard to see patterns, and it makes you think about interpretation when you should be thinking about form.
    $endgroup$
    – Alexei Averchenko
    Feb 28 '11 at 15:47








  • 49




    $begingroup$
    When I first took economics, it took me a bit of time to psychologically get over the fact that GDP, for example, stood for one quantity, not a product a three quantities.
    $endgroup$
    – JavaMan
    Feb 28 '11 at 16:01






  • 4




    $begingroup$
    Also, it also depends on what kind of programmer you are. APL programmers would beg to differ. (I personally think APL code is grotesque and unreadable, but for some reason, APL is still very popular among some financial types).
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:09






  • 7




    $begingroup$
    Multi-char vars can be very useful in some situations: e.g. in physical/chemical process modeling, the number of distinct variables can run into the hundreds/thousands easily. Single char variables just don't cut it in such situations -- people just end up using all kinds of multi-char subscripts/superscripts on single-char variables for disambiguation, and it ends up being messier than if they had just used multi-char variables to begin with. When the function of variable names is purely descriptive (rather than for revealing patterns), I believe a case can be made for multi-char vars).
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:24














  • 44




    $begingroup$
    Would you imagine writing, say, a long exact cohomology sequence not using a super-concise notation?!
    $endgroup$
    – Andrea Mori
    Feb 28 '11 at 15:45






  • 165




    $begingroup$
    Because it's long, it makes it hard to see patterns, and it makes you think about interpretation when you should be thinking about form.
    $endgroup$
    – Alexei Averchenko
    Feb 28 '11 at 15:47








  • 49




    $begingroup$
    When I first took economics, it took me a bit of time to psychologically get over the fact that GDP, for example, stood for one quantity, not a product a three quantities.
    $endgroup$
    – JavaMan
    Feb 28 '11 at 16:01






  • 4




    $begingroup$
    Also, it also depends on what kind of programmer you are. APL programmers would beg to differ. (I personally think APL code is grotesque and unreadable, but for some reason, APL is still very popular among some financial types).
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:09






  • 7




    $begingroup$
    Multi-char vars can be very useful in some situations: e.g. in physical/chemical process modeling, the number of distinct variables can run into the hundreds/thousands easily. Single char variables just don't cut it in such situations -- people just end up using all kinds of multi-char subscripts/superscripts on single-char variables for disambiguation, and it ends up being messier than if they had just used multi-char variables to begin with. When the function of variable names is purely descriptive (rather than for revealing patterns), I believe a case can be made for multi-char vars).
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:24








44




44




$begingroup$
Would you imagine writing, say, a long exact cohomology sequence not using a super-concise notation?!
$endgroup$
– Andrea Mori
Feb 28 '11 at 15:45




$begingroup$
Would you imagine writing, say, a long exact cohomology sequence not using a super-concise notation?!
$endgroup$
– Andrea Mori
Feb 28 '11 at 15:45




165




165




$begingroup$
Because it's long, it makes it hard to see patterns, and it makes you think about interpretation when you should be thinking about form.
$endgroup$
– Alexei Averchenko
Feb 28 '11 at 15:47






$begingroup$
Because it's long, it makes it hard to see patterns, and it makes you think about interpretation when you should be thinking about form.
$endgroup$
– Alexei Averchenko
Feb 28 '11 at 15:47






49




49




$begingroup$
When I first took economics, it took me a bit of time to psychologically get over the fact that GDP, for example, stood for one quantity, not a product a three quantities.
$endgroup$
– JavaMan
Feb 28 '11 at 16:01




$begingroup$
When I first took economics, it took me a bit of time to psychologically get over the fact that GDP, for example, stood for one quantity, not a product a three quantities.
$endgroup$
– JavaMan
Feb 28 '11 at 16:01




4




4




$begingroup$
Also, it also depends on what kind of programmer you are. APL programmers would beg to differ. (I personally think APL code is grotesque and unreadable, but for some reason, APL is still very popular among some financial types).
$endgroup$
– Gilead
Feb 28 '11 at 16:09




$begingroup$
Also, it also depends on what kind of programmer you are. APL programmers would beg to differ. (I personally think APL code is grotesque and unreadable, but for some reason, APL is still very popular among some financial types).
$endgroup$
– Gilead
Feb 28 '11 at 16:09




7




7




$begingroup$
Multi-char vars can be very useful in some situations: e.g. in physical/chemical process modeling, the number of distinct variables can run into the hundreds/thousands easily. Single char variables just don't cut it in such situations -- people just end up using all kinds of multi-char subscripts/superscripts on single-char variables for disambiguation, and it ends up being messier than if they had just used multi-char variables to begin with. When the function of variable names is purely descriptive (rather than for revealing patterns), I believe a case can be made for multi-char vars).
$endgroup$
– Gilead
Feb 28 '11 at 16:24




$begingroup$
Multi-char vars can be very useful in some situations: e.g. in physical/chemical process modeling, the number of distinct variables can run into the hundreds/thousands easily. Single char variables just don't cut it in such situations -- people just end up using all kinds of multi-char subscripts/superscripts on single-char variables for disambiguation, and it ends up being messier than if they had just used multi-char variables to begin with. When the function of variable names is purely descriptive (rather than for revealing patterns), I believe a case can be made for multi-char vars).
$endgroup$
– Gilead
Feb 28 '11 at 16:24










26 Answers
26






active

oldest

votes


















184












$begingroup$

I think one reason is that often one does not want to remember what the variable names really represent.



As an example, when we choose to talk about the matrix $(a_{ij})$ instead of the matrix $(mathrm{TransitionProbability}_{ij})$, this expresses the important fact that once we have formulated our problem in terms of matrices, it is perfectly safe to forget where the problem came from originally -- in fact, remembering what the matrix "really" describes might only be unnecessary psychological baggage that prevents us from applying all linear-algebraic tools at our disposal.



(As an aside, have you ever seen code written by a mathematician? It very often looks exactly like your first example.)






share|cite|improve this answer









$endgroup$









  • 46




    $begingroup$
    +1 for the first line. Sometimes variables are just variables. They might not "mean" anything.
    $endgroup$
    – Jesse Madnick
    Mar 1 '11 at 12:07






  • 4




    $begingroup$
    @JesseMadnick that's not what Dan means at all. If variables are just variables, then whatever you do with them would be useless because the result means nothing. I think what Dan is trying to get at is that it's okay, and often preferred, to forget about the meaning of the variables while you're doing the math, but not at the end. After you have your result, you would want to remember what units or significance it has to make it useful.
    $endgroup$
    – person27
    Apr 5 '14 at 17:01








  • 2




    $begingroup$
    @Stopforgettingmyaccounts...: Well, it's hard to remember exactly what I meant 3 years ago, but let me see. I think what I meant was: "+1 for the first line. And also, to add (but not to reiterate) what you're saying, I'd like to point out that sometimes variables don't have real-world meanings. What do $x$ and $y$ "stand for" in the equation $xy = 2$, say? Nothing." In fact, sometimes in the context of algebra (e.g. ring theory) we adjoin so-called "formal" variables that don't even live in the ring. What do these formal variables "mean"? Truly nothing.
    $endgroup$
    – Jesse Madnick
    Apr 5 '14 at 19:11








  • 1




    $begingroup$
    In fact, looking back on it, I probably meant an even stronger position. At the time, I very much held a formalist view of mathematics, that math is a game played with meaningless marks on paper. So long as we adhere to the axioms, nothing we write "means" anything. Mathematical entities themselves have no real-world meaning, or units, or significance. We can imbue objects with these things if we really want to, but the objects themselves do not inherently possess these things (in the formalist viewpoint).
    $endgroup$
    – Jesse Madnick
    Apr 5 '14 at 19:20












  • $begingroup$
    @JesseMadnick Yikes! Didn't mean to revive that topic; I guess I didn't pay attention to the age. I see what you mean, very much like Hooke's Law $F = -kx$ uses the meaningless constant $k$.
    $endgroup$
    – person27
    Apr 5 '14 at 21:58



















97












$begingroup$

We are very, very lazy. I am very, very serious about this.



NB1: The history is told in Florian Cajori's book on the history of notation. In very old times, there were no variables (and no formulas, really) and everything was incredibly verbose. Cajori's book beautifully shows the very long and tortuous way from that to modern day notation for variables; there are several sections regarding the notation of unknowns and of their powers.



NB2: Additionally, we usually deal with very complicated expressions, so using verbose names for variables you render things almost impossible. Writing down the formula for Gaussian curvature in terms of $E$, $F$, $G$ and the Christoffel symbols if we wrote $mathsf{Christoffel}^i_{jk}$ instead of $Gamma^{i}_{jk}$ would turn differential geometry into a dead subject very soon :P






share|cite|improve this answer











$endgroup$









  • 1




    $begingroup$
    There must be some historical reason. Descartes in La Geometrie already uses this convention, although he uses (say) $xxx$ for $x^3$.
    $endgroup$
    – Yuval Filmus
    Feb 28 '11 at 15:18






  • 10




    $begingroup$
    @Yuval: For Descartes in La Geometrie, I doubt there are any names that are significantly more apt for an abstract variable than $x$. (There's also the apocryphal story that $x$ was chosen because in French that letter is not used too much so the printer has enough for setting the page.)
    $endgroup$
    – Willie Wong
    Feb 28 '11 at 15:28








  • 2




    $begingroup$
    +1 for the first line, programmers are lazy too, but we're very used to cut/paste or abbreviation expansion/completion systems, and we tend to think that a long variable name carries no overhead. We also use abstraction a lot and ignore the fact that many functions we use conceal complex expressions.
    $endgroup$
    – ocodo
    Jun 16 '11 at 15:21








  • 6




    $begingroup$
    I think you've under-stated the case for the Christoffel symbols. Not only would $Gamma$ become "Christoffel" but $i,j,k$ would become things like "time", "radius", and "azimuth".
    $endgroup$
    – Andreas Blass
    Jun 4 '13 at 1:43



















83












$begingroup$

Perhaps the most compelling reason for using single character variables is that it enables the usual convention of omitting the multiplication sign in products. This enables great conciseness in notating polynomials - which is important since polynomials are ubiquitous in mathematics, so any convention that simplifies their notation, comprehension, etc is surely worthwhile. Thus we can write $rm xyz $ to mean $rm xcdot ycdot z $ without any worry that it will be mistaken for a variable name.



While having to insert the multiplication signs doesn't reduce conciseness much for a monomial, it can greatly increase complexity for a polynomial of many terms. For it may cause equations to overflow the line/page length, etc, greatly hindering comprehension. Moreover, as many cognitive studies show, humans read read words by their shape (e.g. cover up the top/bottom half of a line of text and note how you can still easily read it), so any convention that alters shapes (or increases their visual complexity) may inhibit visual parsing, pattern-matching, and global inference of key structural characteristics.






share|cite|improve this answer











$endgroup$













  • $begingroup$
    I agree, although using the cdot notation (as you have done) for multi-char variable names does not appreciable reduce conciseness. I've had to write programs to generate LaTeX code for multi-char equations written by process modeling folks, and cdot was a very good compromise.
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:17










  • $begingroup$
    @Gil: I expanded my answer to address this.
    $endgroup$
    – Bill Dubuque
    Feb 28 '11 at 16:38






  • 2




    $begingroup$
    Indeed. And on top of this, most polynomials use the same variable multiple times, and repeating a name of more than a few characters would be seen as clutter.
    $endgroup$
    – Stewart
    Mar 1 '11 at 11:07










  • $begingroup$
    Note that this means that multi-letter variables are often OK in contexts where this isn't likely to come up, and you do occasionally see two or three-letter function names when the function is not going to be referred to without an argument.
    $endgroup$
    – Harry Altman
    Nov 18 '11 at 23:20






  • 1




    $begingroup$
    @Marc I presumed that would be obvious, since it holds true for any language (vs. only mathematics). But perhaps it does deserve explicit mention.
    $endgroup$
    – Bill Dubuque
    Nov 30 '11 at 15:02



















49












$begingroup$

My linear algebra professor (J. Komlos) said something that has always stuck with me: we should always use the same letters to denote certain variables, and different letters for different (math) subjects. In this way, our brains are able to build mental pathways so that when we see certain letters we can remember lots of other things we know about that subject because we associate those letters with certain facts, theorems, etc.



I actually think it's mostly a cultural phenomenon, comp-sci people like to use acronyms in part because it's more clear to program with an acronym than a single letter. But similarly, chemists like to use Latin words, physicists make up descriptive names for things, and mathematicians make up new words no one has ever heard of before.






share|cite|improve this answer











$endgroup$









  • 65




    $begingroup$
    Really? In my experience, mathematicians typically appropriate existing words and give them strange new meanings.
    $endgroup$
    – Qiaochu Yuan
    Feb 28 '11 at 15:38






  • 50




    $begingroup$
    It's fun to ask people to differentiate $e^x$ with respect to $e$, just because we're so used to viewing $e$ as a certain constant and not as a variable. :)
    $endgroup$
    – Hans Lundmark
    Feb 28 '11 at 15:39






  • 6




    $begingroup$
    @Hans, I confess, that exercise managed to confuse me. I had to rewrite it as $z^{x}$ because whenever I see "$log{e}$", I am programmed to interpret it as "1".
    $endgroup$
    – Gilead
    Feb 28 '11 at 16:03






  • 5




    $begingroup$
    @Hans Why do mathematicians take everything so literally should be another question. :)
    $endgroup$
    – Mateen Ulhaq
    Mar 1 '11 at 17:07






  • 8




    $begingroup$
    @muntoo: Well, I suspected you were joking, but it's hard to tell sometimes. I've seen even stupider questions on this site. ;)
    $endgroup$
    – Hans Lundmark
    Mar 1 '11 at 20:20



















38












$begingroup$

A few thoughts:




  • It is not true that one does not see formulae as you wrote in the very last line, something like $$ mathrm{velocity} = frac{mathrm{displacement}}{mathrm{time}} $$ In fact, I was taught algebra that way: start with word problems and write down mathematical expressions with words and labels, instead of numbers. I believe this kind of notation is also often used in textbooks.

  • Like Mariano and Templar said in their answers, one of the main advantage of the short single letter notation is ease of copying. For computations it is much easier to write (by hand) single letters than whole strings.

  • Another issue similar to the above is that it is easier to visually recognize identical terms when you use single letters. Take the expression for the "final amount" you wrote down. I happen to think that using the string "periods_per_yr" makes it harder to notice that the same term appear both in the denominator inside the brackets and in the exponent outside. Algebraically it is perhaps easier to keep track of structures using single letters.

  • Also, what about when performing abstract arguments where the variables do not refer to anything specific and concrete? Is the phrase "take three points in the plane, point_one, point_two, and point_three..." more easily to understand than "take three points $P,Q,R$ in the plane..."?

  • Lastly, in my PhD dissertation I have several computations involving expressions that span close to half a page when printed. I shudder to think what would happen if I use verbose names for all the terms: is it worth it to make individual variables more "legible" at the expense of making each equation span 3 pages? Does that actually improve overall legibility?






share|cite|improve this answer









$endgroup$





















    31












    $begingroup$

    A number of excellent explanations have been given, ranging from laziness of mathematicians to convention. I'd like to add one more that may be slightly more debatable than others.



    I dare to say I experience some sort of freedom when assigning variable names. This freedom is very typical to math: ideas are not bound by physical reality, the only constraints are your own imagination and the consistency of your thoughts. This freedom suffers if you're thinking about your math too concretely.



    Here are a few remarks to explain my point of view:




    1. Somewhere in the 15th century ($pm$ a few centuries) people realised they didn't have to discribe their equations in words, they could just assign letters to their quantities and let the formulae speak for themselves. Suddenly people realised it was not necessary for algebraic equations to have a direct geometric meaning. If people had kept writing $rm area = lengthcdot width$ until the end of days, this might never have happened.

    2. Let's say we were thinking about distance. We might write
      $$ rm distance = sqrt{horizontal displacement^2 + vertical displacement^2}.$$ However, would you ever dare to write $rm distance = |horizontal displacement| + |vertical displacement|$? Maybe you would, but write this on the blackboard of an average high-school physics teacher (no offence meant) and they might try to hit you with something. This is because they're thinking about the physical reality, not about the abstract properties of such a formula or it's consequences in a more abstract setting. Therefore if you ever want to define the concept of a metric space and study it's properties in full generality, it's probably safer to denote distance simply by "d". (Choosing 'd' as a small mnemonic to where it all started.)

    3. Let's say we're thinking about a curve this time. At some point you may come to realise there's actually an interesting group structure on your curve. If you're refering to your curve simply as "curve" everywhere, it's probably a giant leap to suddenly rebaptize your curve into "curve that is actually a group as well". You'll probably still call your curve "curve" all the time and you may unconsciously make it harder for yourself to realise the importance and usefullness of it's group structure.


    In conclusion: math is an abstract science, assigning the name all to concrete names to objects will constrain your imagination, which is always a bad thing in math.






    share|cite|improve this answer









    $endgroup$





















      26












      $begingroup$

      You're sort of comparing apples and oranges.



      Mathematical papers are written in verbose, descriptive language (e.g. English); equations and such are introduced to introduce precision and brevity when needed.



      A computer program, however, is written in a very precise language. The role of some coding style guidelines (e.g. long identifier names) are to introduce the verbose, descriptive language where needed.



      Also, mathematics is "executed" -- humans have to manipulate them.



      Computer programs, however are almost never executed. Even in an interpreted language, your program will get tokenized and parsed, and the interpreter will operate on the result.






      share|cite|improve this answer









      $endgroup$













      • $begingroup$
        What do you mean by mathematics is executed but programs are not? When you run a program, isn't the computer executing it?
        $endgroup$
        – timur
        Nov 30 '11 at 16:14






      • 2




        $begingroup$
        I'm digging one step into the abstraction layer. In most cases, the first thing that happens is the text document that contains your source code is analyzed and converted into some other sorts of objects. This process includes things like the spiritual equivalent of converting all of your long identifiers into single-letter names.
        $endgroup$
        – Hurkyl
        Dec 1 '11 at 1:59










      • $begingroup$
        I think a better way to describe would be: Computer programs are almost never directly executed in text form. Rather, it is almost always converted into some more efficient intermediate format for execution, even in interpreted languages. (Bash is a bit of an exception though…)
        $endgroup$
        – Rufflewind
        Nov 10 '16 at 4:37



















      25












      $begingroup$

      I can't imagine writing full words when solving equation and rewriting it 10 times, when programming you usually don't write it so much, you can use functions, classes, copy/paste, programs which automatically insert variables etc.






      share|cite|improve this answer









      $endgroup$









      • 9




        $begingroup$
        +1, you forgot to mention autocomplete in most modern IDEs/editors.
        $endgroup$
        – MAK
        Mar 1 '11 at 10:31






      • 1




        $begingroup$
        @Mak, Abstraction to function names was in use long before we had autocomplete (well, maybe not that long, see Vim / Emacs abbreviation expansion systems etc.)
        $endgroup$
        – ocodo
        Jun 16 '11 at 15:24



















      17












      $begingroup$

      Its quite self explanatory if you read of how Cardan wrote polynomials:



      Instead of



      $$x^4+6x^2+36 = 60x$$



      He'd write



      $$1overline{q}doverline{q}d. p: 6overline{q}d. p:36 text{ aequalia. } 60 pos.$$



      or to write



      $$x^4+(2y+12)x^2 +y^2+12y+36 = (2y+6)x^3+60x+y^2+12y$$



      He'd put



      $$1overline{q}doverline{q}d. p:2 pos.p:12 overline{q}d text{ R }p:1overline{q}d.p:1 pos. text{ additi numeri } p:36 text{ aequalia. } $$
      $$2 pos.6overline{q}dratoroverline{u},p:60 pos.p:1 overline{q}d. p:12 pos. text{ numeri additi }$$






      share|cite|improve this answer









      $endgroup$





















        12












        $begingroup$

        Actually, I think the reason why single letter identifiers are popular in math, and not so popular in programming is Intelisense. Today, every profesional developer would flinch if shown something like return P * pow(1 + r / n, n * t), but we have been spoiled by the ease of use of automatic filling of long names.



        As I remember, 10-15 years ago it was more common to use single or double letter names for any local variable, because the developer would have to write each character himself, by hand. Right now, I just press a few keys, and the IDE does the rest.



        BTW, the name of the function used in the example (pow for Power) fits nicely with the explanation.






        share|cite|improve this answer









        $endgroup$









        • 9




          $begingroup$
          The reason cannot be Intellisense: Mathematicians have been using single letters variables since the begining of time, and (good) programmers have been using descriptive names since before the guys that wrote Intellisense heard about computers...
          $endgroup$
          – Mariano Suárez-Álvarez
          Mar 1 '11 at 15:21






        • 3




          $begingroup$
          pow, len, strcpy, sqrt. If those libraries were designed today, they would be Power, Length, StringCopy, SquareRoot. It's natural to shorten the notation when you are doing it by hand, but since I no longed do it by hand, I don't mind if a method is called ThrowStackOverflowException instead of thrSOExc, in fact I prefer the longer name.
          $endgroup$
          – SWeko
          Mar 2 '11 at 7:55






        • 5




          $begingroup$
          StringCopy(TheOutputCharacter, NumberToString(SquareRoot(42 + TheCharacterInputtedByTheUser)); vs strcpy(out, flatten(sqrt(42 + in)));
          $endgroup$
          – Mateen Ulhaq
          Apr 14 '11 at 2:55






        • 4




          $begingroup$
          @muntoo, Ok, TheOutputCharactes is na overkill, but other than that, the first expressuion is clearer, and it would take the same time to write both of this. What odes flatten do? Is it clear from its name?
          $endgroup$
          – SWeko
          Apr 14 '11 at 6:59






        • 1




          $begingroup$
          @SWeko: Computers back then were actually rather limited on memory as well as bandwidth. Every byte counts back then. In particular, C89 said that identifiers with external linkage were limited to 6 significant characters, so that's why we have things like strcpy.
          $endgroup$
          – Rufflewind
          Nov 10 '16 at 4:40



















        11












        $begingroup$

        Because the intellisense & autocompletion on my piece of paper is turned off. :)



        (So is the context sensitive color highlighting.)



        Holy cow, imagine a sheaf cohomology commutative diagram chase with camel casing and vaguely Java like method syntax for all operations. Or even just the chain rule:



        derivative(firstSmoothFunction.composedWith(secondSmoothFunction)) = derivative(firstSmoothFunction).composedWith(secondSmoothFunction) * derivative(secondSmoothFunction)



        In many cases the more concise notation may make it harder to remember what stands for what, but well chosen notation makes the relations between things much more apparent.






        share|cite|improve this answer









        $endgroup$









        • 2




          $begingroup$
          There is an important overlap between what you say and what has been said in earlier answers. :)
          $endgroup$
          – Mariano Suárez-Álvarez
          Feb 28 '12 at 7:19






        • 6




          $begingroup$
          however, this fantastic formulation of the chain rule is hilarious.
          $endgroup$
          – Sam Lisi
          Jun 26 '12 at 9:48










        • $begingroup$
          @SamLisi they wouldn't write it like this. It'd rather be deriv(compose(smoothFunc1, smoothFunc2), x) = deriv(smoothFunc1, smoothFunc2(x)) * deriv(smoothFunc2, x). Much shorter. Besides, it's clattered with parentheses, and I imagine they'd use a terser notation. E.g. in Haskell parentheses are unambiguously used for order, function application is just a whitespace. So you're down to deriv (smoothFunc1 . smoothFunc2) x = deriv smoothFunc1 (smoothFunc2 x) * deriv smoothFunc2 x (might confuse a bit if you don't know Haskell, but it is easier to read).
          $endgroup$
          – Hi-Angel
          Jun 28 '17 at 15:52



















        9












        $begingroup$

        It's a convention like any other; never underestimate the power of historical inertia! Different disciplines have different conventions.



        I would also guess (and I have no evidence to support this) that a big reason it is currently still around is that typesetting equations was expensive and time-consuming before the rise of modern typesetting (e.g. TeX) and writers of textbooks were probably encouraged to keep their notation as concise as possible. This would explain the disparity between mathematicians and programmers since the latter, after all, have the benefit of a history of using computers.






        share|cite|improve this answer









        $endgroup$









        • 4




          $begingroup$
          Even with TeX the software still "expects" single-letter variables. One can write $pressure$ but only with mathrm{ ... } tags does it look like you would want a whole word to: $mathrm{pressure}$.
          $endgroup$
          – isomorphismes
          Jun 23 '11 at 15:57





















        9












        $begingroup$

        When doing algebra by hand with pencil and paper, it's a lot easier - and a lot faster - to work with something like



        PV=nRT



        instead of



        (pressure)(volume) = (number of moles of gas) (gas constant) (temperature).



        And this matters a lot when you're doing a timed exam.






        share|cite|improve this answer









        $endgroup$









        • 1




          $begingroup$
          Right. Part of what makes mathematics what it is is its ECONOMY of expression.
          $endgroup$
          – Mike Jones
          Oct 20 '11 at 4:31



















        9












        $begingroup$

        I think mathematicians continue to use such terse notation because they don't have to maintain their creations under time pressure. Mathematics is essentially a write-once language and it only runs inside another mathematician's very forgiving brain. You can spend an hour rereading the same paragraph in a math paper until you understand it, taking time to absorb and reabsorb the sundry meanings of the Greek and Roman characters arrayed before you, and nothing bad will happen in the meantime. In an IT operating environment, we don't have that luxury. If I were ever rolled out of bed at 0300 to deal with a computer system problem and I had to deal with scripts/logs written anything like a typical math theorem, the person/idiot responsible for those scripts/logs would be strangled/fired before sunup.






        share|cite|improve this answer









        $endgroup$









        • 2




          $begingroup$
          This isn't unique to mathematics, though. The same was true for pretty much all disciplines before there were computers. Papers meant to be read by humans don't have to be "maintained" in the same way that software does. (Because, as you said, the papers are only "run" in another human's brain.) Instead of maintaining "legacy papers", each generation can simply rewrite in its own language, letting the (human) readers' brains take care of any "backward compatibility" issues.
          $endgroup$
          – Ted
          Jan 13 '12 at 6:18






        • 2




          $begingroup$
          As support for this view (that variable names in mathematics can be short because they are "throwaway" and the expressions don't have to be looked at again) — note that even in programming, certain variables that are very temporary and local in scope often take single-letter names. Loops are often written with "i" for the index, and this is not (usually) considered bad style if the body of the loop is short and its structure is nothing unconventional.
          $endgroup$
          – ShreevatsaR
          Mar 17 '13 at 11:19



















        7












        $begingroup$

        I am a retired software engineer and a math person. I am going to answer your question based on my own personal experience and observation.



        The coding style in your first example is unacceptable today but was common in old days. The FORTRAN programs written in 60's and 70's are like that.



        The programmers deal with real life problems. The reasons programmers use long variable names are mostly for readability and easy to debug. Programmers are asked to use long names because they were having difficulty understanding code written by others and debugging code written in short names. I was once shown a piece of code written by myself and could not figure out what I was doing.



        On the other hand, mathematicians mostly deal with abstractions. The formula in your example generally will be present with the explanation you provided. Later on in the literature,
        the author can use t, which is the number of years, wherever it is needed without repeated explanations. Most mathematicians follow certain conventions, say they usually use x for an unknown, c for a constant without explanation. This sometimes will give the readers some trouble understanding the text if unusual conventions were used. Also, the reader will have to get used to the notation the author adopts. Sometimes it's a pain.



        In either case, there is a compiler there. In the programming case, you have a compiler to help generating machine code for the computer to understand. In the math case, your brain is the compiler to generate the knowledge.






        share|cite|improve this answer









        $endgroup$





















          6












          $begingroup$

          I don't think that substituting single-letter variables with more letters would do much positive in most mathematics, because most theorems (and such) are short enough so that remembering a few variables isn't a problem. And if you forget, it is just to look at the start of the theorem. Also, there is conventions for what variable-letters to use in different circumstances. And last, it is a way to make it easier to separate words from variables.



          In programming, the ability to have more letters for one variable, is a huge advantage because a program often consists of thousands of lines, and hundreds of variables.






          share|cite|improve this answer









          $endgroup$













          • $begingroup$
            Indeed, the usage that routinely confounds me is when I'm reading a paper and there's an intro paragraph that describes how 10 or more separate Roman/Greek/Hebrew symbols will be used, symbols that often have wildly differing value domains (sets, clauses, integers, formulas, edges, etc.), followed by a long series of increasingly complex lemmas that use those symbols. I can keep referring back to the intro paragraph, but jumping back and forth between contexts hinders understanding.
            $endgroup$
            – Kyle Jones
            Dec 21 '11 at 0:16



















          6












          $begingroup$

          Because a variable is just a number and they all behave equally, different variables dont have any different meaning or interpretation in math, you dont gain any additional information by writing "final_amount" instead of x. Its only confusing and unproffesional. Even if you try to follow this path, there can be intermediate steps in solving an equation in which these words can not be interpreted in any sensible physical or informal way. For instance it can be convenient to introduce imaginary numbers even when solving equations with real solutions.






          share|cite|improve this answer









          $endgroup$









          • 3




            $begingroup$
            We use single letters for things other than variables (operators and functions, for example).
            $endgroup$
            – isomorphismes
            Jun 23 '11 at 15:58



















          6












          $begingroup$

          I'm a programmer as well. Note that your initial phrasing would be better as "As an imperative programmer, ..."



          If you look at functional programming languages like F# or Lisp, the single letter variable paradigm is quite common for many of the reasons mentioned in the other answers. Take the functions:



          let square x = x * x;;
          let power x y = x ^ y;;


          These are common and accepted ways to write your functional functions. This is mostly due to stateless/immutability differences in variables, but if we can skip the why explanations I'll just assert that the functional programming style parallels mathematical thinking far better than imperative.



          Now imperative programming (by far the majority of programming) is more like a list of instructions, what I would compare in mathematics to a proof. If you remember back to 'doing proofs,' you state your reason for making each step along the way; in some cases rather verbosely.






          share|cite|improve this answer









          $endgroup$













          • $begingroup$
            …and every time I see a function with variables >4 in Haskell, I wondering about the original programmer's sanity. Don't get me wrong, sometimes I'm using such variables myself. We're all using "i" for index. And I don't have problems with sum a b = a + b. But there's some — very small! — amount when those single-letters bast*ds starts climbing into your eyes, hanging on your back, and squeezing your breath. It's especially annoying when you need to understand how to work with a project. Github has quite a few throw-away projects with many likes just because nobody tried to work with them.
            $endgroup$
            – Hi-Angel
            Jun 28 '17 at 16:56



















          4












          $begingroup$

          I write: Solutions of quadratic equation $ax^2 + bx + c=0$ are $(-bpmsqrt{b^2-4ac})/(2a)$. I would not want to write this with time in place of $x$ and acceleration_of_gravity in place of $a$ and so on!






          share|cite|improve this answer









          $endgroup$





















            3












            $begingroup$

            The point is that we usually want to be as concise as possible, in other words, we want to be capable of being understood and on the same time do not need to write lots of things. In truth, you'll never see in the middle of a serious text of math some equations with letters appearing from nowhere without explanations: we always have the definitions first. The point is that there are some conventions that we follow: things that always have the same name, and that our audience is supposed to know about. But if we do not assume even those basic things from our audience, we define them as well.



            Now, I'll give you an example that you'll agree that writting everything like you say will make us even unable to proceed with the theory (only a masochist would proceed with something like that). This is an equation from differential geometry:



            $$sum_{r=1}^ng_{lr}(gamma(t)) frac{d^2gamma^r}{dt^2}+sum_{i,j=1}^n[ij,l](gamma(t))frac{dgamma^i}{dt}frac{dgamma^j}{dt}=0$$



            Now, that $[ij,l]$ expands also into another kind of big expression. Now imagine if for each of the letters we write the word it means. An equation like this one, that after making the definitions is at same time compact and understandable, would become a real mess and people would get lazzy to write down equations like that writing every word. So, we do use letters because we gain compactness, we gain simplicity and we do not waste too much time writing, but the benefits of that are only achievable if we combine with clear definitions and organized line of thought. If so, when someone reaches an equation like that will look at it and say: "well, that's easy to read, the author defined all those terms properly!" and although in the paper will appear only letters, for one who knows the definitions the entire words will "be there" but without making a real mess with the text.






            share|cite|improve this answer









            $endgroup$





















              2












              $begingroup$

              Try writing:



              $$e^{ipi}=-1$$



              using big words!






              share|cite|improve this answer









              $endgroup$





















                1












                $begingroup$

                If we saw something like the above, then the alphabet implicitly used in mathematics would consist of words. So, then the individual letters of that alphabet basically require another language to get understood in the first place. In other words if you have something like "velocity=distance/time" then you have "velocity", "distance", and "time" at least as implied as existing in some language as part of its alphabet. But, of course, you're wanting those symbols also to represent English words which have meaning also. Thus, you need two alphabets working together at once, as well as two languages working together at once, and it's not at all clear that you'll avoid ambiguity in principle when you do this. You will have character strings which consist of a word in one language and a letter of the alphabet in the other language at the same time.



                On the other hand the more common way just requires one alphabet and one language. In principle, one doesn't need any understanding of any natural languages to have v=(d/t) mathematically speaking. You just need "v", "d" and "t" as variables in your alphabet... and to perhaps make this clearer you could write the same formula mathematically as 6=(7/8) given 6, 7, and 8 as variables in your alphabet for some language. But, then we wouldn't seek to use "6", "7", and "8" to denote numbers, because then we would have two languages working simultaneously.



                Basically, it comes as simpler to have v=(d/t) than to have velocity=(distance/time).






                share|cite|improve this answer









                $endgroup$





















                  1












                  $begingroup$

                  First of all, if mathematicians used more-than-one-letter variables, they might confuse them for multiplication. Second, mathematicians like to be as accurate in as little words as possible. And finally, there are 26 letters in the alphabet. It's not like one equation will use them all, anyways.






                  share|cite|improve this answer









                  $endgroup$









                  • 2




                    $begingroup$
                    On the one hand, there are certain conventions about how which letters are used (integers versus reals versus complex numbers, parameters versus functions versus operators, indices, constants, etc.) and on the other hand, we can choose between lowercase / capitals, or go into other fonts or alphabets (calligraphy, fraktur, Greek, Hebrew, etc.) plus a few miscellaneous symbols here and there.
                    $endgroup$
                    – anon
                    Jun 3 '13 at 23:47








                  • 1




                    $begingroup$
                    @anon Well, even if you exclude those, Unicode still has 95156 (as of Unicode 3.2, there must be lots more by now) characters. Use those and you never run out
                    $endgroup$
                    – Anonymous Pi
                    Jun 3 '13 at 23:54










                  • $begingroup$
                    Oh and don't forget emojicode.org
                    $endgroup$
                    – Hendy Irawan
                    Feb 16 '18 at 7:50



















                  0












                  $begingroup$

                  The way things are now has to do with momentum.



                  Much of formal math was developed before there were computers. Thus computation was done by hand, a very repetitive process. Much literature was written with this in mind. Since pure math is not an applied field, it generally does not throw away models used in the past, the body of relevant work extends back quite far. If the field were to decide that they want to change notation, there would be countless books and journal articles to update to the new notation. While it may be simple enough to update digital documents, a large number of document stored in analog or raster formats, would likely never get updated. This body of knowledge would likely become inaccessible to future generations and thus lost to history. It is unlikely that the field will change notation unless there is a really really good reason to do so. For example the adoption of Arabic numerals was a vas improvement over Roman numerals and happened at a time when there was a much smaller body of pre-existing literature.



                  Computer science on the other hand is a new, applied field, a good deal of the advancement of the field has been after the creation of the electronic computer. The field focuses on elimination of redundant work and aims to build working systems.






                  share|cite|improve this answer









                  $endgroup$





















                    0












                    $begingroup$

                    I'd say partially because mathematical notation has much bigger vocabulary of "symbols" than source code notation.



                    Consider the following (shortened):



                    $$sum x_i$$



                    You probably will write that in a programming language as:



                    np.sum(x)


                    Why not...?



                    np.Σ(x)


                    Σ is much easier to write on paper than on computer (typical setups).



                    You'll also realize that even in the whole of Math StackExchange and LaTeX users, you'll almost never see anyone write Σ, what you'll find is either sum or Sigma :



                    sum x_i


                    That's the LaTeX notation for the mathematical notation I first mentioned.



                    Either way, what's important is the concept of sum, regardless of how long or short it's needed to write that concept. And when math can use one consise letter $Sigma$, why would it want to use sum?



                    As for variable names themselves, I agree with most other answers in this thread.






                    share|cite|improve this answer









                    $endgroup$





















                      0












                      $begingroup$

                      If I'm doing a piece of maths, I want to fit as much of it as possible on a single sheet of paper so I can see it all at once. Maths is hard enough without having to root through pages and pages to remind myself whether the inequality I'm about to use had $le$ or $<$ in it.



                      I've often wondered whether this as why people who are good at maths often have tiny handwriting.






                      share|cite|improve this answer









                      $endgroup$





















                        26 Answers
                        26






                        active

                        oldest

                        votes








                        26 Answers
                        26






                        active

                        oldest

                        votes









                        active

                        oldest

                        votes






                        active

                        oldest

                        votes









                        184












                        $begingroup$

                        I think one reason is that often one does not want to remember what the variable names really represent.



                        As an example, when we choose to talk about the matrix $(a_{ij})$ instead of the matrix $(mathrm{TransitionProbability}_{ij})$, this expresses the important fact that once we have formulated our problem in terms of matrices, it is perfectly safe to forget where the problem came from originally -- in fact, remembering what the matrix "really" describes might only be unnecessary psychological baggage that prevents us from applying all linear-algebraic tools at our disposal.



                        (As an aside, have you ever seen code written by a mathematician? It very often looks exactly like your first example.)






                        share|cite|improve this answer









                        $endgroup$









                        • 46




                          $begingroup$
                          +1 for the first line. Sometimes variables are just variables. They might not "mean" anything.
                          $endgroup$
                          – Jesse Madnick
                          Mar 1 '11 at 12:07






                        • 4




                          $begingroup$
                          @JesseMadnick that's not what Dan means at all. If variables are just variables, then whatever you do with them would be useless because the result means nothing. I think what Dan is trying to get at is that it's okay, and often preferred, to forget about the meaning of the variables while you're doing the math, but not at the end. After you have your result, you would want to remember what units or significance it has to make it useful.
                          $endgroup$
                          – person27
                          Apr 5 '14 at 17:01








                        • 2




                          $begingroup$
                          @Stopforgettingmyaccounts...: Well, it's hard to remember exactly what I meant 3 years ago, but let me see. I think what I meant was: "+1 for the first line. And also, to add (but not to reiterate) what you're saying, I'd like to point out that sometimes variables don't have real-world meanings. What do $x$ and $y$ "stand for" in the equation $xy = 2$, say? Nothing." In fact, sometimes in the context of algebra (e.g. ring theory) we adjoin so-called "formal" variables that don't even live in the ring. What do these formal variables "mean"? Truly nothing.
                          $endgroup$
                          – Jesse Madnick
                          Apr 5 '14 at 19:11








                        • 1




                          $begingroup$
                          In fact, looking back on it, I probably meant an even stronger position. At the time, I very much held a formalist view of mathematics, that math is a game played with meaningless marks on paper. So long as we adhere to the axioms, nothing we write "means" anything. Mathematical entities themselves have no real-world meaning, or units, or significance. We can imbue objects with these things if we really want to, but the objects themselves do not inherently possess these things (in the formalist viewpoint).
                          $endgroup$
                          – Jesse Madnick
                          Apr 5 '14 at 19:20












                        • $begingroup$
                          @JesseMadnick Yikes! Didn't mean to revive that topic; I guess I didn't pay attention to the age. I see what you mean, very much like Hooke's Law $F = -kx$ uses the meaningless constant $k$.
                          $endgroup$
                          – person27
                          Apr 5 '14 at 21:58
















                        184












                        $begingroup$

                        I think one reason is that often one does not want to remember what the variable names really represent.



                        As an example, when we choose to talk about the matrix $(a_{ij})$ instead of the matrix $(mathrm{TransitionProbability}_{ij})$, this expresses the important fact that once we have formulated our problem in terms of matrices, it is perfectly safe to forget where the problem came from originally -- in fact, remembering what the matrix "really" describes might only be unnecessary psychological baggage that prevents us from applying all linear-algebraic tools at our disposal.



                        (As an aside, have you ever seen code written by a mathematician? It very often looks exactly like your first example.)






                        share|cite|improve this answer









                        $endgroup$









                        • 46




                          $begingroup$
                          +1 for the first line. Sometimes variables are just variables. They might not "mean" anything.
                          $endgroup$
                          – Jesse Madnick
                          Mar 1 '11 at 12:07






                        • 4




                          $begingroup$
                          @JesseMadnick that's not what Dan means at all. If variables are just variables, then whatever you do with them would be useless because the result means nothing. I think what Dan is trying to get at is that it's okay, and often preferred, to forget about the meaning of the variables while you're doing the math, but not at the end. After you have your result, you would want to remember what units or significance it has to make it useful.
                          $endgroup$
                          – person27
                          Apr 5 '14 at 17:01








                        • 2




                          $begingroup$
                          @Stopforgettingmyaccounts...: Well, it's hard to remember exactly what I meant 3 years ago, but let me see. I think what I meant was: "+1 for the first line. And also, to add (but not to reiterate) what you're saying, I'd like to point out that sometimes variables don't have real-world meanings. What do $x$ and $y$ "stand for" in the equation $xy = 2$, say? Nothing." In fact, sometimes in the context of algebra (e.g. ring theory) we adjoin so-called "formal" variables that don't even live in the ring. What do these formal variables "mean"? Truly nothing.
                          $endgroup$
                          – Jesse Madnick
                          Apr 5 '14 at 19:11








                        • 1




                          $begingroup$
                          In fact, looking back on it, I probably meant an even stronger position. At the time, I very much held a formalist view of mathematics, that math is a game played with meaningless marks on paper. So long as we adhere to the axioms, nothing we write "means" anything. Mathematical entities themselves have no real-world meaning, or units, or significance. We can imbue objects with these things if we really want to, but the objects themselves do not inherently possess these things (in the formalist viewpoint).
                          $endgroup$
                          – Jesse Madnick
                          Apr 5 '14 at 19:20












                        • $begingroup$
                          @JesseMadnick Yikes! Didn't mean to revive that topic; I guess I didn't pay attention to the age. I see what you mean, very much like Hooke's Law $F = -kx$ uses the meaningless constant $k$.
                          $endgroup$
                          – person27
                          Apr 5 '14 at 21:58














                        184












                        184








                        184





                        $begingroup$

                        I think one reason is that often one does not want to remember what the variable names really represent.



                        As an example, when we choose to talk about the matrix $(a_{ij})$ instead of the matrix $(mathrm{TransitionProbability}_{ij})$, this expresses the important fact that once we have formulated our problem in terms of matrices, it is perfectly safe to forget where the problem came from originally -- in fact, remembering what the matrix "really" describes might only be unnecessary psychological baggage that prevents us from applying all linear-algebraic tools at our disposal.



                        (As an aside, have you ever seen code written by a mathematician? It very often looks exactly like your first example.)






                        share|cite|improve this answer









                        $endgroup$



                        I think one reason is that often one does not want to remember what the variable names really represent.



                        As an example, when we choose to talk about the matrix $(a_{ij})$ instead of the matrix $(mathrm{TransitionProbability}_{ij})$, this expresses the important fact that once we have formulated our problem in terms of matrices, it is perfectly safe to forget where the problem came from originally -- in fact, remembering what the matrix "really" describes might only be unnecessary psychological baggage that prevents us from applying all linear-algebraic tools at our disposal.



                        (As an aside, have you ever seen code written by a mathematician? It very often looks exactly like your first example.)







                        share|cite|improve this answer












                        share|cite|improve this answer



                        share|cite|improve this answer










                        answered Feb 28 '11 at 16:16









                        Dan PetersenDan Petersen

                        5,44421929




                        5,44421929








                        • 46




                          $begingroup$
                          +1 for the first line. Sometimes variables are just variables. They might not "mean" anything.
                          $endgroup$
                          – Jesse Madnick
                          Mar 1 '11 at 12:07






                        • 4




                          $begingroup$
                          @JesseMadnick that's not what Dan means at all. If variables are just variables, then whatever you do with them would be useless because the result means nothing. I think what Dan is trying to get at is that it's okay, and often preferred, to forget about the meaning of the variables while you're doing the math, but not at the end. After you have your result, you would want to remember what units or significance it has to make it useful.
                          $endgroup$
                          – person27
                          Apr 5 '14 at 17:01








                        • 2




                          $begingroup$
                          @Stopforgettingmyaccounts...: Well, it's hard to remember exactly what I meant 3 years ago, but let me see. I think what I meant was: "+1 for the first line. And also, to add (but not to reiterate) what you're saying, I'd like to point out that sometimes variables don't have real-world meanings. What do $x$ and $y$ "stand for" in the equation $xy = 2$, say? Nothing." In fact, sometimes in the context of algebra (e.g. ring theory) we adjoin so-called "formal" variables that don't even live in the ring. What do these formal variables "mean"? Truly nothing.
                          $endgroup$
                          – Jesse Madnick
                          Apr 5 '14 at 19:11








                        • 1




                          $begingroup$
                          In fact, looking back on it, I probably meant an even stronger position. At the time, I very much held a formalist view of mathematics, that math is a game played with meaningless marks on paper. So long as we adhere to the axioms, nothing we write "means" anything. Mathematical entities themselves have no real-world meaning, or units, or significance. We can imbue objects with these things if we really want to, but the objects themselves do not inherently possess these things (in the formalist viewpoint).
                          $endgroup$
                          – Jesse Madnick
                          Apr 5 '14 at 19:20












                        • $begingroup$
                          @JesseMadnick Yikes! Didn't mean to revive that topic; I guess I didn't pay attention to the age. I see what you mean, very much like Hooke's Law $F = -kx$ uses the meaningless constant $k$.
                          $endgroup$
                          – person27
                          Apr 5 '14 at 21:58














                        • 46




                          $begingroup$
                          +1 for the first line. Sometimes variables are just variables. They might not "mean" anything.
                          $endgroup$
                          – Jesse Madnick
                          Mar 1 '11 at 12:07






                        • 4




                          $begingroup$
                          @JesseMadnick that's not what Dan means at all. If variables are just variables, then whatever you do with them would be useless because the result means nothing. I think what Dan is trying to get at is that it's okay, and often preferred, to forget about the meaning of the variables while you're doing the math, but not at the end. After you have your result, you would want to remember what units or significance it has to make it useful.
                          $endgroup$
                          – person27
                          Apr 5 '14 at 17:01








                        • 2




                          $begingroup$
                          @Stopforgettingmyaccounts...: Well, it's hard to remember exactly what I meant 3 years ago, but let me see. I think what I meant was: "+1 for the first line. And also, to add (but not to reiterate) what you're saying, I'd like to point out that sometimes variables don't have real-world meanings. What do $x$ and $y$ "stand for" in the equation $xy = 2$, say? Nothing." In fact, sometimes in the context of algebra (e.g. ring theory) we adjoin so-called "formal" variables that don't even live in the ring. What do these formal variables "mean"? Truly nothing.
                          $endgroup$
                          – Jesse Madnick
                          Apr 5 '14 at 19:11








                        • 1




                          $begingroup$
                          In fact, looking back on it, I probably meant an even stronger position. At the time, I very much held a formalist view of mathematics, that math is a game played with meaningless marks on paper. So long as we adhere to the axioms, nothing we write "means" anything. Mathematical entities themselves have no real-world meaning, or units, or significance. We can imbue objects with these things if we really want to, but the objects themselves do not inherently possess these things (in the formalist viewpoint).
                          $endgroup$
                          – Jesse Madnick
                          Apr 5 '14 at 19:20












                        • $begingroup$
                          @JesseMadnick Yikes! Didn't mean to revive that topic; I guess I didn't pay attention to the age. I see what you mean, very much like Hooke's Law $F = -kx$ uses the meaningless constant $k$.
                          $endgroup$
                          – person27
                          Apr 5 '14 at 21:58








                        46




                        46




                        $begingroup$
                        +1 for the first line. Sometimes variables are just variables. They might not "mean" anything.
                        $endgroup$
                        – Jesse Madnick
                        Mar 1 '11 at 12:07




                        $begingroup$
                        +1 for the first line. Sometimes variables are just variables. They might not "mean" anything.
                        $endgroup$
                        – Jesse Madnick
                        Mar 1 '11 at 12:07




                        4




                        4




                        $begingroup$
                        @JesseMadnick that's not what Dan means at all. If variables are just variables, then whatever you do with them would be useless because the result means nothing. I think what Dan is trying to get at is that it's okay, and often preferred, to forget about the meaning of the variables while you're doing the math, but not at the end. After you have your result, you would want to remember what units or significance it has to make it useful.
                        $endgroup$
                        – person27
                        Apr 5 '14 at 17:01






                        $begingroup$
                        @JesseMadnick that's not what Dan means at all. If variables are just variables, then whatever you do with them would be useless because the result means nothing. I think what Dan is trying to get at is that it's okay, and often preferred, to forget about the meaning of the variables while you're doing the math, but not at the end. After you have your result, you would want to remember what units or significance it has to make it useful.
                        $endgroup$
                        – person27
                        Apr 5 '14 at 17:01






                        2




                        2




                        $begingroup$
                        @Stopforgettingmyaccounts...: Well, it's hard to remember exactly what I meant 3 years ago, but let me see. I think what I meant was: "+1 for the first line. And also, to add (but not to reiterate) what you're saying, I'd like to point out that sometimes variables don't have real-world meanings. What do $x$ and $y$ "stand for" in the equation $xy = 2$, say? Nothing." In fact, sometimes in the context of algebra (e.g. ring theory) we adjoin so-called "formal" variables that don't even live in the ring. What do these formal variables "mean"? Truly nothing.
                        $endgroup$
                        – Jesse Madnick
                        Apr 5 '14 at 19:11






                        $begingroup$
                        @Stopforgettingmyaccounts...: Well, it's hard to remember exactly what I meant 3 years ago, but let me see. I think what I meant was: "+1 for the first line. And also, to add (but not to reiterate) what you're saying, I'd like to point out that sometimes variables don't have real-world meanings. What do $x$ and $y$ "stand for" in the equation $xy = 2$, say? Nothing." In fact, sometimes in the context of algebra (e.g. ring theory) we adjoin so-called "formal" variables that don't even live in the ring. What do these formal variables "mean"? Truly nothing.
                        $endgroup$
                        – Jesse Madnick
                        Apr 5 '14 at 19:11






                        1




                        1




                        $begingroup$
                        In fact, looking back on it, I probably meant an even stronger position. At the time, I very much held a formalist view of mathematics, that math is a game played with meaningless marks on paper. So long as we adhere to the axioms, nothing we write "means" anything. Mathematical entities themselves have no real-world meaning, or units, or significance. We can imbue objects with these things if we really want to, but the objects themselves do not inherently possess these things (in the formalist viewpoint).
                        $endgroup$
                        – Jesse Madnick
                        Apr 5 '14 at 19:20






                        $begingroup$
                        In fact, looking back on it, I probably meant an even stronger position. At the time, I very much held a formalist view of mathematics, that math is a game played with meaningless marks on paper. So long as we adhere to the axioms, nothing we write "means" anything. Mathematical entities themselves have no real-world meaning, or units, or significance. We can imbue objects with these things if we really want to, but the objects themselves do not inherently possess these things (in the formalist viewpoint).
                        $endgroup$
                        – Jesse Madnick
                        Apr 5 '14 at 19:20














                        $begingroup$
                        @JesseMadnick Yikes! Didn't mean to revive that topic; I guess I didn't pay attention to the age. I see what you mean, very much like Hooke's Law $F = -kx$ uses the meaningless constant $k$.
                        $endgroup$
                        – person27
                        Apr 5 '14 at 21:58




                        $begingroup$
                        @JesseMadnick Yikes! Didn't mean to revive that topic; I guess I didn't pay attention to the age. I see what you mean, very much like Hooke's Law $F = -kx$ uses the meaningless constant $k$.
                        $endgroup$
                        – person27
                        Apr 5 '14 at 21:58











                        97












                        $begingroup$

                        We are very, very lazy. I am very, very serious about this.



                        NB1: The history is told in Florian Cajori's book on the history of notation. In very old times, there were no variables (and no formulas, really) and everything was incredibly verbose. Cajori's book beautifully shows the very long and tortuous way from that to modern day notation for variables; there are several sections regarding the notation of unknowns and of their powers.



                        NB2: Additionally, we usually deal with very complicated expressions, so using verbose names for variables you render things almost impossible. Writing down the formula for Gaussian curvature in terms of $E$, $F$, $G$ and the Christoffel symbols if we wrote $mathsf{Christoffel}^i_{jk}$ instead of $Gamma^{i}_{jk}$ would turn differential geometry into a dead subject very soon :P






                        share|cite|improve this answer











                        $endgroup$









                        • 1




                          $begingroup$
                          There must be some historical reason. Descartes in La Geometrie already uses this convention, although he uses (say) $xxx$ for $x^3$.
                          $endgroup$
                          – Yuval Filmus
                          Feb 28 '11 at 15:18






                        • 10




                          $begingroup$
                          @Yuval: For Descartes in La Geometrie, I doubt there are any names that are significantly more apt for an abstract variable than $x$. (There's also the apocryphal story that $x$ was chosen because in French that letter is not used too much so the printer has enough for setting the page.)
                          $endgroup$
                          – Willie Wong
                          Feb 28 '11 at 15:28








                        • 2




                          $begingroup$
                          +1 for the first line, programmers are lazy too, but we're very used to cut/paste or abbreviation expansion/completion systems, and we tend to think that a long variable name carries no overhead. We also use abstraction a lot and ignore the fact that many functions we use conceal complex expressions.
                          $endgroup$
                          – ocodo
                          Jun 16 '11 at 15:21








                        • 6




                          $begingroup$
                          I think you've under-stated the case for the Christoffel symbols. Not only would $Gamma$ become "Christoffel" but $i,j,k$ would become things like "time", "radius", and "azimuth".
                          $endgroup$
                          – Andreas Blass
                          Jun 4 '13 at 1:43
















                        97












                        $begingroup$

                        We are very, very lazy. I am very, very serious about this.



                        NB1: The history is told in Florian Cajori's book on the history of notation. In very old times, there were no variables (and no formulas, really) and everything was incredibly verbose. Cajori's book beautifully shows the very long and tortuous way from that to modern day notation for variables; there are several sections regarding the notation of unknowns and of their powers.



                        NB2: Additionally, we usually deal with very complicated expressions, so using verbose names for variables you render things almost impossible. Writing down the formula for Gaussian curvature in terms of $E$, $F$, $G$ and the Christoffel symbols if we wrote $mathsf{Christoffel}^i_{jk}$ instead of $Gamma^{i}_{jk}$ would turn differential geometry into a dead subject very soon :P






                        share|cite|improve this answer











                        $endgroup$









                        • 1




                          $begingroup$
                          There must be some historical reason. Descartes in La Geometrie already uses this convention, although he uses (say) $xxx$ for $x^3$.
                          $endgroup$
                          – Yuval Filmus
                          Feb 28 '11 at 15:18






                        • 10




                          $begingroup$
                          @Yuval: For Descartes in La Geometrie, I doubt there are any names that are significantly more apt for an abstract variable than $x$. (There's also the apocryphal story that $x$ was chosen because in French that letter is not used too much so the printer has enough for setting the page.)
                          $endgroup$
                          – Willie Wong
                          Feb 28 '11 at 15:28








                        • 2




                          $begingroup$
                          +1 for the first line, programmers are lazy too, but we're very used to cut/paste or abbreviation expansion/completion systems, and we tend to think that a long variable name carries no overhead. We also use abstraction a lot and ignore the fact that many functions we use conceal complex expressions.
                          $endgroup$
                          – ocodo
                          Jun 16 '11 at 15:21








                        • 6




                          $begingroup$
                          I think you've under-stated the case for the Christoffel symbols. Not only would $Gamma$ become "Christoffel" but $i,j,k$ would become things like "time", "radius", and "azimuth".
                          $endgroup$
                          – Andreas Blass
                          Jun 4 '13 at 1:43














                        97












                        97








                        97





                        $begingroup$

                        We are very, very lazy. I am very, very serious about this.



                        NB1: The history is told in Florian Cajori's book on the history of notation. In very old times, there were no variables (and no formulas, really) and everything was incredibly verbose. Cajori's book beautifully shows the very long and tortuous way from that to modern day notation for variables; there are several sections regarding the notation of unknowns and of their powers.



                        NB2: Additionally, we usually deal with very complicated expressions, so using verbose names for variables you render things almost impossible. Writing down the formula for Gaussian curvature in terms of $E$, $F$, $G$ and the Christoffel symbols if we wrote $mathsf{Christoffel}^i_{jk}$ instead of $Gamma^{i}_{jk}$ would turn differential geometry into a dead subject very soon :P






                        share|cite|improve this answer











                        $endgroup$



                        We are very, very lazy. I am very, very serious about this.



                        NB1: The history is told in Florian Cajori's book on the history of notation. In very old times, there were no variables (and no formulas, really) and everything was incredibly verbose. Cajori's book beautifully shows the very long and tortuous way from that to modern day notation for variables; there are several sections regarding the notation of unknowns and of their powers.



                        NB2: Additionally, we usually deal with very complicated expressions, so using verbose names for variables you render things almost impossible. Writing down the formula for Gaussian curvature in terms of $E$, $F$, $G$ and the Christoffel symbols if we wrote $mathsf{Christoffel}^i_{jk}$ instead of $Gamma^{i}_{jk}$ would turn differential geometry into a dead subject very soon :P







                        share|cite|improve this answer














                        share|cite|improve this answer



                        share|cite|improve this answer








                        edited Nov 30 '11 at 15:46









                        robjohn

                        266k27305628




                        266k27305628










                        answered Feb 28 '11 at 15:11









                        Mariano Suárez-ÁlvarezMariano Suárez-Álvarez

                        111k7155282




                        111k7155282








                        • 1




                          $begingroup$
                          There must be some historical reason. Descartes in La Geometrie already uses this convention, although he uses (say) $xxx$ for $x^3$.
                          $endgroup$
                          – Yuval Filmus
                          Feb 28 '11 at 15:18






                        • 10




                          $begingroup$
                          @Yuval: For Descartes in La Geometrie, I doubt there are any names that are significantly more apt for an abstract variable than $x$. (There's also the apocryphal story that $x$ was chosen because in French that letter is not used too much so the printer has enough for setting the page.)
                          $endgroup$
                          – Willie Wong
                          Feb 28 '11 at 15:28








                        • 2




                          $begingroup$
                          +1 for the first line, programmers are lazy too, but we're very used to cut/paste or abbreviation expansion/completion systems, and we tend to think that a long variable name carries no overhead. We also use abstraction a lot and ignore the fact that many functions we use conceal complex expressions.
                          $endgroup$
                          – ocodo
                          Jun 16 '11 at 15:21








                        • 6




                          $begingroup$
                          I think you've under-stated the case for the Christoffel symbols. Not only would $Gamma$ become "Christoffel" but $i,j,k$ would become things like "time", "radius", and "azimuth".
                          $endgroup$
                          – Andreas Blass
                          Jun 4 '13 at 1:43














                        • 1




                          $begingroup$
                          There must be some historical reason. Descartes in La Geometrie already uses this convention, although he uses (say) $xxx$ for $x^3$.
                          $endgroup$
                          – Yuval Filmus
                          Feb 28 '11 at 15:18






                        • 10




                          $begingroup$
                          @Yuval: For Descartes in La Geometrie, I doubt there are any names that are significantly more apt for an abstract variable than $x$. (There's also the apocryphal story that $x$ was chosen because in French that letter is not used too much so the printer has enough for setting the page.)
                          $endgroup$
                          – Willie Wong
                          Feb 28 '11 at 15:28








                        • 2




                          $begingroup$
                          +1 for the first line, programmers are lazy too, but we're very used to cut/paste or abbreviation expansion/completion systems, and we tend to think that a long variable name carries no overhead. We also use abstraction a lot and ignore the fact that many functions we use conceal complex expressions.
                          $endgroup$
                          – ocodo
                          Jun 16 '11 at 15:21








                        • 6




                          $begingroup$
                          I think you've under-stated the case for the Christoffel symbols. Not only would $Gamma$ become "Christoffel" but $i,j,k$ would become things like "time", "radius", and "azimuth".
                          $endgroup$
                          – Andreas Blass
                          Jun 4 '13 at 1:43








                        1




                        1




                        $begingroup$
                        There must be some historical reason. Descartes in La Geometrie already uses this convention, although he uses (say) $xxx$ for $x^3$.
                        $endgroup$
                        – Yuval Filmus
                        Feb 28 '11 at 15:18




                        $begingroup$
                        There must be some historical reason. Descartes in La Geometrie already uses this convention, although he uses (say) $xxx$ for $x^3$.
                        $endgroup$
                        – Yuval Filmus
                        Feb 28 '11 at 15:18




                        10




                        10




                        $begingroup$
                        @Yuval: For Descartes in La Geometrie, I doubt there are any names that are significantly more apt for an abstract variable than $x$. (There's also the apocryphal story that $x$ was chosen because in French that letter is not used too much so the printer has enough for setting the page.)
                        $endgroup$
                        – Willie Wong
                        Feb 28 '11 at 15:28






                        $begingroup$
                        @Yuval: For Descartes in La Geometrie, I doubt there are any names that are significantly more apt for an abstract variable than $x$. (There's also the apocryphal story that $x$ was chosen because in French that letter is not used too much so the printer has enough for setting the page.)
                        $endgroup$
                        – Willie Wong
                        Feb 28 '11 at 15:28






                        2




                        2




                        $begingroup$
                        +1 for the first line, programmers are lazy too, but we're very used to cut/paste or abbreviation expansion/completion systems, and we tend to think that a long variable name carries no overhead. We also use abstraction a lot and ignore the fact that many functions we use conceal complex expressions.
                        $endgroup$
                        – ocodo
                        Jun 16 '11 at 15:21






                        $begingroup$
                        +1 for the first line, programmers are lazy too, but we're very used to cut/paste or abbreviation expansion/completion systems, and we tend to think that a long variable name carries no overhead. We also use abstraction a lot and ignore the fact that many functions we use conceal complex expressions.
                        $endgroup$
                        – ocodo
                        Jun 16 '11 at 15:21






                        6




                        6




                        $begingroup$
                        I think you've under-stated the case for the Christoffel symbols. Not only would $Gamma$ become "Christoffel" but $i,j,k$ would become things like "time", "radius", and "azimuth".
                        $endgroup$
                        – Andreas Blass
                        Jun 4 '13 at 1:43




                        $begingroup$
                        I think you've under-stated the case for the Christoffel symbols. Not only would $Gamma$ become "Christoffel" but $i,j,k$ would become things like "time", "radius", and "azimuth".
                        $endgroup$
                        – Andreas Blass
                        Jun 4 '13 at 1:43











                        83












                        $begingroup$

                        Perhaps the most compelling reason for using single character variables is that it enables the usual convention of omitting the multiplication sign in products. This enables great conciseness in notating polynomials - which is important since polynomials are ubiquitous in mathematics, so any convention that simplifies their notation, comprehension, etc is surely worthwhile. Thus we can write $rm xyz $ to mean $rm xcdot ycdot z $ without any worry that it will be mistaken for a variable name.



                        While having to insert the multiplication signs doesn't reduce conciseness much for a monomial, it can greatly increase complexity for a polynomial of many terms. For it may cause equations to overflow the line/page length, etc, greatly hindering comprehension. Moreover, as many cognitive studies show, humans read read words by their shape (e.g. cover up the top/bottom half of a line of text and note how you can still easily read it), so any convention that alters shapes (or increases their visual complexity) may inhibit visual parsing, pattern-matching, and global inference of key structural characteristics.






                        share|cite|improve this answer











                        $endgroup$













                        • $begingroup$
                          I agree, although using the cdot notation (as you have done) for multi-char variable names does not appreciable reduce conciseness. I've had to write programs to generate LaTeX code for multi-char equations written by process modeling folks, and cdot was a very good compromise.
                          $endgroup$
                          – Gilead
                          Feb 28 '11 at 16:17










                        • $begingroup$
                          @Gil: I expanded my answer to address this.
                          $endgroup$
                          – Bill Dubuque
                          Feb 28 '11 at 16:38






                        • 2




                          $begingroup$
                          Indeed. And on top of this, most polynomials use the same variable multiple times, and repeating a name of more than a few characters would be seen as clutter.
                          $endgroup$
                          – Stewart
                          Mar 1 '11 at 11:07










                        • $begingroup$
                          Note that this means that multi-letter variables are often OK in contexts where this isn't likely to come up, and you do occasionally see two or three-letter function names when the function is not going to be referred to without an argument.
                          $endgroup$
                          – Harry Altman
                          Nov 18 '11 at 23:20






                        • 1




                          $begingroup$
                          @Marc I presumed that would be obvious, since it holds true for any language (vs. only mathematics). But perhaps it does deserve explicit mention.
                          $endgroup$
                          – Bill Dubuque
                          Nov 30 '11 at 15:02
















                        83












                        $begingroup$

                        Perhaps the most compelling reason for using single character variables is that it enables the usual convention of omitting the multiplication sign in products. This enables great conciseness in notating polynomials - which is important since polynomials are ubiquitous in mathematics, so any convention that simplifies their notation, comprehension, etc is surely worthwhile. Thus we can write $rm xyz $ to mean $rm xcdot ycdot z $ without any worry that it will be mistaken for a variable name.



                        While having to insert the multiplication signs doesn't reduce conciseness much for a monomial, it can greatly increase complexity for a polynomial of many terms. For it may cause equations to overflow the line/page length, etc, greatly hindering comprehension. Moreover, as many cognitive studies show, humans read read words by their shape (e.g. cover up the top/bottom half of a line of text and note how you can still easily read it), so any convention that alters shapes (or increases their visual complexity) may inhibit visual parsing, pattern-matching, and global inference of key structural characteristics.






                        share|cite|improve this answer











                        $endgroup$













                        • $begingroup$
                          I agree, although using the cdot notation (as you have done) for multi-char variable names does not appreciable reduce conciseness. I've had to write programs to generate LaTeX code for multi-char equations written by process modeling folks, and cdot was a very good compromise.
                          $endgroup$
                          – Gilead
                          Feb 28 '11 at 16:17










                        • $begingroup$
                          @Gil: I expanded my answer to address this.
                          $endgroup$
                          – Bill Dubuque
                          Feb 28 '11 at 16:38






                        • 2




                          $begingroup$
                          Indeed. And on top of this, most polynomials use the same variable multiple times, and repeating a name of more than a few characters would be seen as clutter.
                          $endgroup$
                          – Stewart
                          Mar 1 '11 at 11:07










                        • $begingroup$
                          Note that this means that multi-letter variables are often OK in contexts where this isn't likely to come up, and you do occasionally see two or three-letter function names when the function is not going to be referred to without an argument.
                          $endgroup$
                          – Harry Altman
                          Nov 18 '11 at 23:20






                        • 1




                          $begingroup$
                          @Marc I presumed that would be obvious, since it holds true for any language (vs. only mathematics). But perhaps it does deserve explicit mention.
                          $endgroup$
                          – Bill Dubuque
                          Nov 30 '11 at 15:02














                        83












                        83








                        83





                        $begingroup$

                        Perhaps the most compelling reason for using single character variables is that it enables the usual convention of omitting the multiplication sign in products. This enables great conciseness in notating polynomials - which is important since polynomials are ubiquitous in mathematics, so any convention that simplifies their notation, comprehension, etc is surely worthwhile. Thus we can write $rm xyz $ to mean $rm xcdot ycdot z $ without any worry that it will be mistaken for a variable name.



                        While having to insert the multiplication signs doesn't reduce conciseness much for a monomial, it can greatly increase complexity for a polynomial of many terms. For it may cause equations to overflow the line/page length, etc, greatly hindering comprehension. Moreover, as many cognitive studies show, humans read read words by their shape (e.g. cover up the top/bottom half of a line of text and note how you can still easily read it), so any convention that alters shapes (or increases their visual complexity) may inhibit visual parsing, pattern-matching, and global inference of key structural characteristics.






                        share|cite|improve this answer











                        $endgroup$



                        Perhaps the most compelling reason for using single character variables is that it enables the usual convention of omitting the multiplication sign in products. This enables great conciseness in notating polynomials - which is important since polynomials are ubiquitous in mathematics, so any convention that simplifies their notation, comprehension, etc is surely worthwhile. Thus we can write $rm xyz $ to mean $rm xcdot ycdot z $ without any worry that it will be mistaken for a variable name.



                        While having to insert the multiplication signs doesn't reduce conciseness much for a monomial, it can greatly increase complexity for a polynomial of many terms. For it may cause equations to overflow the line/page length, etc, greatly hindering comprehension. Moreover, as many cognitive studies show, humans read read words by their shape (e.g. cover up the top/bottom half of a line of text and note how you can still easily read it), so any convention that alters shapes (or increases their visual complexity) may inhibit visual parsing, pattern-matching, and global inference of key structural characteristics.







                        share|cite|improve this answer














                        share|cite|improve this answer



                        share|cite|improve this answer








                        edited Jan 8 '12 at 20:15







                        user242

















                        answered Feb 28 '11 at 16:07









                        Bill DubuqueBill Dubuque

                        209k29191639




                        209k29191639












                        • $begingroup$
                          I agree, although using the cdot notation (as you have done) for multi-char variable names does not appreciable reduce conciseness. I've had to write programs to generate LaTeX code for multi-char equations written by process modeling folks, and cdot was a very good compromise.
                          $endgroup$
                          – Gilead
                          Feb 28 '11 at 16:17










                        • $begingroup$
                          @Gil: I expanded my answer to address this.
                          $endgroup$
                          – Bill Dubuque
                          Feb 28 '11 at 16:38






                        • 2




                          $begingroup$
                          Indeed. And on top of this, most polynomials use the same variable multiple times, and repeating a name of more than a few characters would be seen as clutter.
                          $endgroup$
                          – Stewart
                          Mar 1 '11 at 11:07










                        • $begingroup$
                          Note that this means that multi-letter variables are often OK in contexts where this isn't likely to come up, and you do occasionally see two or three-letter function names when the function is not going to be referred to without an argument.
                          $endgroup$
                          – Harry Altman
                          Nov 18 '11 at 23:20






                        • 1




                          $begingroup$
                          @Marc I presumed that would be obvious, since it holds true for any language (vs. only mathematics). But perhaps it does deserve explicit mention.
                          $endgroup$
                          – Bill Dubuque
                          Nov 30 '11 at 15:02


















                        • $begingroup$
                          I agree, although using the cdot notation (as you have done) for multi-char variable names does not appreciable reduce conciseness. I've had to write programs to generate LaTeX code for multi-char equations written by process modeling folks, and cdot was a very good compromise.
                          $endgroup$
                          – Gilead
                          Feb 28 '11 at 16:17










                        • $begingroup$
                          @Gil: I expanded my answer to address this.
                          $endgroup$
                          – Bill Dubuque
                          Feb 28 '11 at 16:38






                        • 2




                          $begingroup$
                          Indeed. And on top of this, most polynomials use the same variable multiple times, and repeating a name of more than a few characters would be seen as clutter.
                          $endgroup$
                          – Stewart
                          Mar 1 '11 at 11:07










                        • $begingroup$
                          Note that this means that multi-letter variables are often OK in contexts where this isn't likely to come up, and you do occasionally see two or three-letter function names when the function is not going to be referred to without an argument.
                          $endgroup$
                          – Harry Altman
                          Nov 18 '11 at 23:20






                        • 1




                          $begingroup$
                          @Marc I presumed that would be obvious, since it holds true for any language (vs. only mathematics). But perhaps it does deserve explicit mention.
                          $endgroup$
                          – Bill Dubuque
                          Nov 30 '11 at 15:02
















                        $begingroup$
                        I agree, although using the cdot notation (as you have done) for multi-char variable names does not appreciable reduce conciseness. I've had to write programs to generate LaTeX code for multi-char equations written by process modeling folks, and cdot was a very good compromise.
                        $endgroup$
                        – Gilead
                        Feb 28 '11 at 16:17




                        $begingroup$
                        I agree, although using the cdot notation (as you have done) for multi-char variable names does not appreciable reduce conciseness. I've had to write programs to generate LaTeX code for multi-char equations written by process modeling folks, and cdot was a very good compromise.
                        $endgroup$
                        – Gilead
                        Feb 28 '11 at 16:17












                        $begingroup$
                        @Gil: I expanded my answer to address this.
                        $endgroup$
                        – Bill Dubuque
                        Feb 28 '11 at 16:38




                        $begingroup$
                        @Gil: I expanded my answer to address this.
                        $endgroup$
                        – Bill Dubuque
                        Feb 28 '11 at 16:38




                        2




                        2




                        $begingroup$
                        Indeed. And on top of this, most polynomials use the same variable multiple times, and repeating a name of more than a few characters would be seen as clutter.
                        $endgroup$
                        – Stewart
                        Mar 1 '11 at 11:07




                        $begingroup$
                        Indeed. And on top of this, most polynomials use the same variable multiple times, and repeating a name of more than a few characters would be seen as clutter.
                        $endgroup$
                        – Stewart
                        Mar 1 '11 at 11:07












                        $begingroup$
                        Note that this means that multi-letter variables are often OK in contexts where this isn't likely to come up, and you do occasionally see two or three-letter function names when the function is not going to be referred to without an argument.
                        $endgroup$
                        – Harry Altman
                        Nov 18 '11 at 23:20




                        $begingroup$
                        Note that this means that multi-letter variables are often OK in contexts where this isn't likely to come up, and you do occasionally see two or three-letter function names when the function is not going to be referred to without an argument.
                        $endgroup$
                        – Harry Altman
                        Nov 18 '11 at 23:20




                        1




                        1




                        $begingroup$
                        @Marc I presumed that would be obvious, since it holds true for any language (vs. only mathematics). But perhaps it does deserve explicit mention.
                        $endgroup$
                        – Bill Dubuque
                        Nov 30 '11 at 15:02




                        $begingroup$
                        @Marc I presumed that would be obvious, since it holds true for any language (vs. only mathematics). But perhaps it does deserve explicit mention.
                        $endgroup$
                        – Bill Dubuque
                        Nov 30 '11 at 15:02











                        49












                        $begingroup$

                        My linear algebra professor (J. Komlos) said something that has always stuck with me: we should always use the same letters to denote certain variables, and different letters for different (math) subjects. In this way, our brains are able to build mental pathways so that when we see certain letters we can remember lots of other things we know about that subject because we associate those letters with certain facts, theorems, etc.



                        I actually think it's mostly a cultural phenomenon, comp-sci people like to use acronyms in part because it's more clear to program with an acronym than a single letter. But similarly, chemists like to use Latin words, physicists make up descriptive names for things, and mathematicians make up new words no one has ever heard of before.






                        share|cite|improve this answer











                        $endgroup$









                        • 65




                          $begingroup$
                          Really? In my experience, mathematicians typically appropriate existing words and give them strange new meanings.
                          $endgroup$
                          – Qiaochu Yuan
                          Feb 28 '11 at 15:38






                        • 50




                          $begingroup$
                          It's fun to ask people to differentiate $e^x$ with respect to $e$, just because we're so used to viewing $e$ as a certain constant and not as a variable. :)
                          $endgroup$
                          – Hans Lundmark
                          Feb 28 '11 at 15:39






                        • 6




                          $begingroup$
                          @Hans, I confess, that exercise managed to confuse me. I had to rewrite it as $z^{x}$ because whenever I see "$log{e}$", I am programmed to interpret it as "1".
                          $endgroup$
                          – Gilead
                          Feb 28 '11 at 16:03






                        • 5




                          $begingroup$
                          @Hans Why do mathematicians take everything so literally should be another question. :)
                          $endgroup$
                          – Mateen Ulhaq
                          Mar 1 '11 at 17:07






                        • 8




                          $begingroup$
                          @muntoo: Well, I suspected you were joking, but it's hard to tell sometimes. I've seen even stupider questions on this site. ;)
                          $endgroup$
                          – Hans Lundmark
                          Mar 1 '11 at 20:20
















                        49












                        $begingroup$

                        My linear algebra professor (J. Komlos) said something that has always stuck with me: we should always use the same letters to denote certain variables, and different letters for different (math) subjects. In this way, our brains are able to build mental pathways so that when we see certain letters we can remember lots of other things we know about that subject because we associate those letters with certain facts, theorems, etc.



                        I actually think it's mostly a cultural phenomenon, comp-sci people like to use acronyms in part because it's more clear to program with an acronym than a single letter. But similarly, chemists like to use Latin words, physicists make up descriptive names for things, and mathematicians make up new words no one has ever heard of before.






                        share|cite|improve this answer











                        $endgroup$









                        • 65




                          $begingroup$
                          Really? In my experience, mathematicians typically appropriate existing words and give them strange new meanings.
                          $endgroup$
                          – Qiaochu Yuan
                          Feb 28 '11 at 15:38






                        • 50




                          $begingroup$
                          It's fun to ask people to differentiate $e^x$ with respect to $e$, just because we're so used to viewing $e$ as a certain constant and not as a variable. :)
                          $endgroup$
                          – Hans Lundmark
                          Feb 28 '11 at 15:39






                        • 6




                          $begingroup$
                          @Hans, I confess, that exercise managed to confuse me. I had to rewrite it as $z^{x}$ because whenever I see "$log{e}$", I am programmed to interpret it as "1".
                          $endgroup$
                          – Gilead
                          Feb 28 '11 at 16:03






                        • 5




                          $begingroup$
                          @Hans Why do mathematicians take everything so literally should be another question. :)
                          $endgroup$
                          – Mateen Ulhaq
                          Mar 1 '11 at 17:07






                        • 8




                          $begingroup$
                          @muntoo: Well, I suspected you were joking, but it's hard to tell sometimes. I've seen even stupider questions on this site. ;)
                          $endgroup$
                          – Hans Lundmark
                          Mar 1 '11 at 20:20














                        49












                        49








                        49





                        $begingroup$

                        My linear algebra professor (J. Komlos) said something that has always stuck with me: we should always use the same letters to denote certain variables, and different letters for different (math) subjects. In this way, our brains are able to build mental pathways so that when we see certain letters we can remember lots of other things we know about that subject because we associate those letters with certain facts, theorems, etc.



                        I actually think it's mostly a cultural phenomenon, comp-sci people like to use acronyms in part because it's more clear to program with an acronym than a single letter. But similarly, chemists like to use Latin words, physicists make up descriptive names for things, and mathematicians make up new words no one has ever heard of before.






                        share|cite|improve this answer











                        $endgroup$



                        My linear algebra professor (J. Komlos) said something that has always stuck with me: we should always use the same letters to denote certain variables, and different letters for different (math) subjects. In this way, our brains are able to build mental pathways so that when we see certain letters we can remember lots of other things we know about that subject because we associate those letters with certain facts, theorems, etc.



                        I actually think it's mostly a cultural phenomenon, comp-sci people like to use acronyms in part because it's more clear to program with an acronym than a single letter. But similarly, chemists like to use Latin words, physicists make up descriptive names for things, and mathematicians make up new words no one has ever heard of before.







                        share|cite|improve this answer














                        share|cite|improve this answer



                        share|cite|improve this answer








                        edited Mar 1 '11 at 11:26









                        RegDwight

                        1451210




                        1451210










                        answered Feb 28 '11 at 15:21









                        Matt CalhounMatt Calhoun

                        2,9022249




                        2,9022249








                        • 65




                          $begingroup$
                          Really? In my experience, mathematicians typically appropriate existing words and give them strange new meanings.
                          $endgroup$
                          – Qiaochu Yuan
                          Feb 28 '11 at 15:38






                        • 50




                          $begingroup$
                          It's fun to ask people to differentiate $e^x$ with respect to $e$, just because we're so used to viewing $e$ as a certain constant and not as a variable. :)
                          $endgroup$
                          – Hans Lundmark
                          Feb 28 '11 at 15:39






                        • 6




                          $begingroup$
                          @Hans, I confess, that exercise managed to confuse me. I had to rewrite it as $z^{x}$ because whenever I see "$log{e}$", I am programmed to interpret it as "1".
                          $endgroup$
                          – Gilead
                          Feb 28 '11 at 16:03






                        • 5




                          $begingroup$
                          @Hans Why do mathematicians take everything so literally should be another question. :)
                          $endgroup$
                          – Mateen Ulhaq
                          Mar 1 '11 at 17:07






                        • 8




                          $begingroup$
                          @muntoo: Well, I suspected you were joking, but it's hard to tell sometimes. I've seen even stupider questions on this site. ;)
                          $endgroup$
                          – Hans Lundmark
                          Mar 1 '11 at 20:20














                        • 65




                          $begingroup$
                          Really? In my experience, mathematicians typically appropriate existing words and give them strange new meanings.
                          $endgroup$
                          – Qiaochu Yuan
                          Feb 28 '11 at 15:38






                        • 50




                          $begingroup$
                          It's fun to ask people to differentiate $e^x$ with respect to $e$, just because we're so used to viewing $e$ as a certain constant and not as a variable. :)
                          $endgroup$
                          – Hans Lundmark
                          Feb 28 '11 at 15:39






                        • 6




                          $begingroup$
                          @Hans, I confess, that exercise managed to confuse me. I had to rewrite it as $z^{x}$ because whenever I see "$log{e}$", I am programmed to interpret it as "1".
                          $endgroup$
                          – Gilead
                          Feb 28 '11 at 16:03






                        • 5




                          $begingroup$
                          @Hans Why do mathematicians take everything so literally should be another question. :)
                          $endgroup$
                          – Mateen Ulhaq
                          Mar 1 '11 at 17:07






                        • 8




                          $begingroup$
                          @muntoo: Well, I suspected you were joking, but it's hard to tell sometimes. I've seen even stupider questions on this site. ;)
                          $endgroup$
                          – Hans Lundmark
                          Mar 1 '11 at 20:20








                        65




                        65




                        $begingroup$
                        Really? In my experience, mathematicians typically appropriate existing words and give them strange new meanings.
                        $endgroup$
                        – Qiaochu Yuan
                        Feb 28 '11 at 15:38




                        $begingroup$
                        Really? In my experience, mathematicians typically appropriate existing words and give them strange new meanings.
                        $endgroup$
                        – Qiaochu Yuan
                        Feb 28 '11 at 15:38




                        50




                        50




                        $begingroup$
                        It's fun to ask people to differentiate $e^x$ with respect to $e$, just because we're so used to viewing $e$ as a certain constant and not as a variable. :)
                        $endgroup$
                        – Hans Lundmark
                        Feb 28 '11 at 15:39




                        $begingroup$
                        It's fun to ask people to differentiate $e^x$ with respect to $e$, just because we're so used to viewing $e$ as a certain constant and not as a variable. :)
                        $endgroup$
                        – Hans Lundmark
                        Feb 28 '11 at 15:39




                        6




                        6




                        $begingroup$
                        @Hans, I confess, that exercise managed to confuse me. I had to rewrite it as $z^{x}$ because whenever I see "$log{e}$", I am programmed to interpret it as "1".
                        $endgroup$
                        – Gilead
                        Feb 28 '11 at 16:03




                        $begingroup$
                        @Hans, I confess, that exercise managed to confuse me. I had to rewrite it as $z^{x}$ because whenever I see "$log{e}$", I am programmed to interpret it as "1".
                        $endgroup$
                        – Gilead
                        Feb 28 '11 at 16:03




                        5




                        5




                        $begingroup$
                        @Hans Why do mathematicians take everything so literally should be another question. :)
                        $endgroup$
                        – Mateen Ulhaq
                        Mar 1 '11 at 17:07




                        $begingroup$
                        @Hans Why do mathematicians take everything so literally should be another question. :)
                        $endgroup$
                        – Mateen Ulhaq
                        Mar 1 '11 at 17:07




                        8




                        8




                        $begingroup$
                        @muntoo: Well, I suspected you were joking, but it's hard to tell sometimes. I've seen even stupider questions on this site. ;)
                        $endgroup$
                        – Hans Lundmark
                        Mar 1 '11 at 20:20




                        $begingroup$
                        @muntoo: Well, I suspected you were joking, but it's hard to tell sometimes. I've seen even stupider questions on this site. ;)
                        $endgroup$
                        – Hans Lundmark
                        Mar 1 '11 at 20:20











                        38












                        $begingroup$

                        A few thoughts:




                        • It is not true that one does not see formulae as you wrote in the very last line, something like $$ mathrm{velocity} = frac{mathrm{displacement}}{mathrm{time}} $$ In fact, I was taught algebra that way: start with word problems and write down mathematical expressions with words and labels, instead of numbers. I believe this kind of notation is also often used in textbooks.

                        • Like Mariano and Templar said in their answers, one of the main advantage of the short single letter notation is ease of copying. For computations it is much easier to write (by hand) single letters than whole strings.

                        • Another issue similar to the above is that it is easier to visually recognize identical terms when you use single letters. Take the expression for the "final amount" you wrote down. I happen to think that using the string "periods_per_yr" makes it harder to notice that the same term appear both in the denominator inside the brackets and in the exponent outside. Algebraically it is perhaps easier to keep track of structures using single letters.

                        • Also, what about when performing abstract arguments where the variables do not refer to anything specific and concrete? Is the phrase "take three points in the plane, point_one, point_two, and point_three..." more easily to understand than "take three points $P,Q,R$ in the plane..."?

                        • Lastly, in my PhD dissertation I have several computations involving expressions that span close to half a page when printed. I shudder to think what would happen if I use verbose names for all the terms: is it worth it to make individual variables more "legible" at the expense of making each equation span 3 pages? Does that actually improve overall legibility?






                        share|cite|improve this answer









                        $endgroup$


















                          38












                          $begingroup$

                          A few thoughts:




                          • It is not true that one does not see formulae as you wrote in the very last line, something like $$ mathrm{velocity} = frac{mathrm{displacement}}{mathrm{time}} $$ In fact, I was taught algebra that way: start with word problems and write down mathematical expressions with words and labels, instead of numbers. I believe this kind of notation is also often used in textbooks.

                          • Like Mariano and Templar said in their answers, one of the main advantage of the short single letter notation is ease of copying. For computations it is much easier to write (by hand) single letters than whole strings.

                          • Another issue similar to the above is that it is easier to visually recognize identical terms when you use single letters. Take the expression for the "final amount" you wrote down. I happen to think that using the string "periods_per_yr" makes it harder to notice that the same term appear both in the denominator inside the brackets and in the exponent outside. Algebraically it is perhaps easier to keep track of structures using single letters.

                          • Also, what about when performing abstract arguments where the variables do not refer to anything specific and concrete? Is the phrase "take three points in the plane, point_one, point_two, and point_three..." more easily to understand than "take three points $P,Q,R$ in the plane..."?

                          • Lastly, in my PhD dissertation I have several computations involving expressions that span close to half a page when printed. I shudder to think what would happen if I use verbose names for all the terms: is it worth it to make individual variables more "legible" at the expense of making each equation span 3 pages? Does that actually improve overall legibility?






                          share|cite|improve this answer









                          $endgroup$
















                            38












                            38








                            38





                            $begingroup$

                            A few thoughts:




                            • It is not true that one does not see formulae as you wrote in the very last line, something like $$ mathrm{velocity} = frac{mathrm{displacement}}{mathrm{time}} $$ In fact, I was taught algebra that way: start with word problems and write down mathematical expressions with words and labels, instead of numbers. I believe this kind of notation is also often used in textbooks.

                            • Like Mariano and Templar said in their answers, one of the main advantage of the short single letter notation is ease of copying. For computations it is much easier to write (by hand) single letters than whole strings.

                            • Another issue similar to the above is that it is easier to visually recognize identical terms when you use single letters. Take the expression for the "final amount" you wrote down. I happen to think that using the string "periods_per_yr" makes it harder to notice that the same term appear both in the denominator inside the brackets and in the exponent outside. Algebraically it is perhaps easier to keep track of structures using single letters.

                            • Also, what about when performing abstract arguments where the variables do not refer to anything specific and concrete? Is the phrase "take three points in the plane, point_one, point_two, and point_three..." more easily to understand than "take three points $P,Q,R$ in the plane..."?

                            • Lastly, in my PhD dissertation I have several computations involving expressions that span close to half a page when printed. I shudder to think what would happen if I use verbose names for all the terms: is it worth it to make individual variables more "legible" at the expense of making each equation span 3 pages? Does that actually improve overall legibility?






                            share|cite|improve this answer









                            $endgroup$



                            A few thoughts:




                            • It is not true that one does not see formulae as you wrote in the very last line, something like $$ mathrm{velocity} = frac{mathrm{displacement}}{mathrm{time}} $$ In fact, I was taught algebra that way: start with word problems and write down mathematical expressions with words and labels, instead of numbers. I believe this kind of notation is also often used in textbooks.

                            • Like Mariano and Templar said in their answers, one of the main advantage of the short single letter notation is ease of copying. For computations it is much easier to write (by hand) single letters than whole strings.

                            • Another issue similar to the above is that it is easier to visually recognize identical terms when you use single letters. Take the expression for the "final amount" you wrote down. I happen to think that using the string "periods_per_yr" makes it harder to notice that the same term appear both in the denominator inside the brackets and in the exponent outside. Algebraically it is perhaps easier to keep track of structures using single letters.

                            • Also, what about when performing abstract arguments where the variables do not refer to anything specific and concrete? Is the phrase "take three points in the plane, point_one, point_two, and point_three..." more easily to understand than "take three points $P,Q,R$ in the plane..."?

                            • Lastly, in my PhD dissertation I have several computations involving expressions that span close to half a page when printed. I shudder to think what would happen if I use verbose names for all the terms: is it worth it to make individual variables more "legible" at the expense of making each equation span 3 pages? Does that actually improve overall legibility?







                            share|cite|improve this answer












                            share|cite|improve this answer



                            share|cite|improve this answer










                            answered Feb 28 '11 at 15:25









                            Willie WongWillie Wong

                            55.4k10108209




                            55.4k10108209























                                31












                                $begingroup$

                                A number of excellent explanations have been given, ranging from laziness of mathematicians to convention. I'd like to add one more that may be slightly more debatable than others.



                                I dare to say I experience some sort of freedom when assigning variable names. This freedom is very typical to math: ideas are not bound by physical reality, the only constraints are your own imagination and the consistency of your thoughts. This freedom suffers if you're thinking about your math too concretely.



                                Here are a few remarks to explain my point of view:




                                1. Somewhere in the 15th century ($pm$ a few centuries) people realised they didn't have to discribe their equations in words, they could just assign letters to their quantities and let the formulae speak for themselves. Suddenly people realised it was not necessary for algebraic equations to have a direct geometric meaning. If people had kept writing $rm area = lengthcdot width$ until the end of days, this might never have happened.

                                2. Let's say we were thinking about distance. We might write
                                  $$ rm distance = sqrt{horizontal displacement^2 + vertical displacement^2}.$$ However, would you ever dare to write $rm distance = |horizontal displacement| + |vertical displacement|$? Maybe you would, but write this on the blackboard of an average high-school physics teacher (no offence meant) and they might try to hit you with something. This is because they're thinking about the physical reality, not about the abstract properties of such a formula or it's consequences in a more abstract setting. Therefore if you ever want to define the concept of a metric space and study it's properties in full generality, it's probably safer to denote distance simply by "d". (Choosing 'd' as a small mnemonic to where it all started.)

                                3. Let's say we're thinking about a curve this time. At some point you may come to realise there's actually an interesting group structure on your curve. If you're refering to your curve simply as "curve" everywhere, it's probably a giant leap to suddenly rebaptize your curve into "curve that is actually a group as well". You'll probably still call your curve "curve" all the time and you may unconsciously make it harder for yourself to realise the importance and usefullness of it's group structure.


                                In conclusion: math is an abstract science, assigning the name all to concrete names to objects will constrain your imagination, which is always a bad thing in math.






                                share|cite|improve this answer









                                $endgroup$


















                                  31












                                  $begingroup$

                                  A number of excellent explanations have been given, ranging from laziness of mathematicians to convention. I'd like to add one more that may be slightly more debatable than others.



                                  I dare to say I experience some sort of freedom when assigning variable names. This freedom is very typical to math: ideas are not bound by physical reality, the only constraints are your own imagination and the consistency of your thoughts. This freedom suffers if you're thinking about your math too concretely.



                                  Here are a few remarks to explain my point of view:




                                  1. Somewhere in the 15th century ($pm$ a few centuries) people realised they didn't have to discribe their equations in words, they could just assign letters to their quantities and let the formulae speak for themselves. Suddenly people realised it was not necessary for algebraic equations to have a direct geometric meaning. If people had kept writing $rm area = lengthcdot width$ until the end of days, this might never have happened.

                                  2. Let's say we were thinking about distance. We might write
                                    $$ rm distance = sqrt{horizontal displacement^2 + vertical displacement^2}.$$ However, would you ever dare to write $rm distance = |horizontal displacement| + |vertical displacement|$? Maybe you would, but write this on the blackboard of an average high-school physics teacher (no offence meant) and they might try to hit you with something. This is because they're thinking about the physical reality, not about the abstract properties of such a formula or it's consequences in a more abstract setting. Therefore if you ever want to define the concept of a metric space and study it's properties in full generality, it's probably safer to denote distance simply by "d". (Choosing 'd' as a small mnemonic to where it all started.)

                                  3. Let's say we're thinking about a curve this time. At some point you may come to realise there's actually an interesting group structure on your curve. If you're refering to your curve simply as "curve" everywhere, it's probably a giant leap to suddenly rebaptize your curve into "curve that is actually a group as well". You'll probably still call your curve "curve" all the time and you may unconsciously make it harder for yourself to realise the importance and usefullness of it's group structure.


                                  In conclusion: math is an abstract science, assigning the name all to concrete names to objects will constrain your imagination, which is always a bad thing in math.






                                  share|cite|improve this answer









                                  $endgroup$
















                                    31












                                    31








                                    31





                                    $begingroup$

                                    A number of excellent explanations have been given, ranging from laziness of mathematicians to convention. I'd like to add one more that may be slightly more debatable than others.



                                    I dare to say I experience some sort of freedom when assigning variable names. This freedom is very typical to math: ideas are not bound by physical reality, the only constraints are your own imagination and the consistency of your thoughts. This freedom suffers if you're thinking about your math too concretely.



                                    Here are a few remarks to explain my point of view:




                                    1. Somewhere in the 15th century ($pm$ a few centuries) people realised they didn't have to discribe their equations in words, they could just assign letters to their quantities and let the formulae speak for themselves. Suddenly people realised it was not necessary for algebraic equations to have a direct geometric meaning. If people had kept writing $rm area = lengthcdot width$ until the end of days, this might never have happened.

                                    2. Let's say we were thinking about distance. We might write
                                      $$ rm distance = sqrt{horizontal displacement^2 + vertical displacement^2}.$$ However, would you ever dare to write $rm distance = |horizontal displacement| + |vertical displacement|$? Maybe you would, but write this on the blackboard of an average high-school physics teacher (no offence meant) and they might try to hit you with something. This is because they're thinking about the physical reality, not about the abstract properties of such a formula or it's consequences in a more abstract setting. Therefore if you ever want to define the concept of a metric space and study it's properties in full generality, it's probably safer to denote distance simply by "d". (Choosing 'd' as a small mnemonic to where it all started.)

                                    3. Let's say we're thinking about a curve this time. At some point you may come to realise there's actually an interesting group structure on your curve. If you're refering to your curve simply as "curve" everywhere, it's probably a giant leap to suddenly rebaptize your curve into "curve that is actually a group as well". You'll probably still call your curve "curve" all the time and you may unconsciously make it harder for yourself to realise the importance and usefullness of it's group structure.


                                    In conclusion: math is an abstract science, assigning the name all to concrete names to objects will constrain your imagination, which is always a bad thing in math.






                                    share|cite|improve this answer









                                    $endgroup$



                                    A number of excellent explanations have been given, ranging from laziness of mathematicians to convention. I'd like to add one more that may be slightly more debatable than others.



                                    I dare to say I experience some sort of freedom when assigning variable names. This freedom is very typical to math: ideas are not bound by physical reality, the only constraints are your own imagination and the consistency of your thoughts. This freedom suffers if you're thinking about your math too concretely.



                                    Here are a few remarks to explain my point of view:




                                    1. Somewhere in the 15th century ($pm$ a few centuries) people realised they didn't have to discribe their equations in words, they could just assign letters to their quantities and let the formulae speak for themselves. Suddenly people realised it was not necessary for algebraic equations to have a direct geometric meaning. If people had kept writing $rm area = lengthcdot width$ until the end of days, this might never have happened.

                                    2. Let's say we were thinking about distance. We might write
                                      $$ rm distance = sqrt{horizontal displacement^2 + vertical displacement^2}.$$ However, would you ever dare to write $rm distance = |horizontal displacement| + |vertical displacement|$? Maybe you would, but write this on the blackboard of an average high-school physics teacher (no offence meant) and they might try to hit you with something. This is because they're thinking about the physical reality, not about the abstract properties of such a formula or it's consequences in a more abstract setting. Therefore if you ever want to define the concept of a metric space and study it's properties in full generality, it's probably safer to denote distance simply by "d". (Choosing 'd' as a small mnemonic to where it all started.)

                                    3. Let's say we're thinking about a curve this time. At some point you may come to realise there's actually an interesting group structure on your curve. If you're refering to your curve simply as "curve" everywhere, it's probably a giant leap to suddenly rebaptize your curve into "curve that is actually a group as well". You'll probably still call your curve "curve" all the time and you may unconsciously make it harder for yourself to realise the importance and usefullness of it's group structure.


                                    In conclusion: math is an abstract science, assigning the name all to concrete names to objects will constrain your imagination, which is always a bad thing in math.







                                    share|cite|improve this answer












                                    share|cite|improve this answer



                                    share|cite|improve this answer










                                    answered Feb 28 '11 at 20:57









                                    MyselfMyself

                                    7,2832038




                                    7,2832038























                                        26












                                        $begingroup$

                                        You're sort of comparing apples and oranges.



                                        Mathematical papers are written in verbose, descriptive language (e.g. English); equations and such are introduced to introduce precision and brevity when needed.



                                        A computer program, however, is written in a very precise language. The role of some coding style guidelines (e.g. long identifier names) are to introduce the verbose, descriptive language where needed.



                                        Also, mathematics is "executed" -- humans have to manipulate them.



                                        Computer programs, however are almost never executed. Even in an interpreted language, your program will get tokenized and parsed, and the interpreter will operate on the result.






                                        share|cite|improve this answer









                                        $endgroup$













                                        • $begingroup$
                                          What do you mean by mathematics is executed but programs are not? When you run a program, isn't the computer executing it?
                                          $endgroup$
                                          – timur
                                          Nov 30 '11 at 16:14






                                        • 2




                                          $begingroup$
                                          I'm digging one step into the abstraction layer. In most cases, the first thing that happens is the text document that contains your source code is analyzed and converted into some other sorts of objects. This process includes things like the spiritual equivalent of converting all of your long identifiers into single-letter names.
                                          $endgroup$
                                          – Hurkyl
                                          Dec 1 '11 at 1:59










                                        • $begingroup$
                                          I think a better way to describe would be: Computer programs are almost never directly executed in text form. Rather, it is almost always converted into some more efficient intermediate format for execution, even in interpreted languages. (Bash is a bit of an exception though…)
                                          $endgroup$
                                          – Rufflewind
                                          Nov 10 '16 at 4:37
















                                        26












                                        $begingroup$

                                        You're sort of comparing apples and oranges.



                                        Mathematical papers are written in verbose, descriptive language (e.g. English); equations and such are introduced to introduce precision and brevity when needed.



                                        A computer program, however, is written in a very precise language. The role of some coding style guidelines (e.g. long identifier names) are to introduce the verbose, descriptive language where needed.



                                        Also, mathematics is "executed" -- humans have to manipulate them.



                                        Computer programs, however are almost never executed. Even in an interpreted language, your program will get tokenized and parsed, and the interpreter will operate on the result.






                                        share|cite|improve this answer









                                        $endgroup$













                                        • $begingroup$
                                          What do you mean by mathematics is executed but programs are not? When you run a program, isn't the computer executing it?
                                          $endgroup$
                                          – timur
                                          Nov 30 '11 at 16:14






                                        • 2




                                          $begingroup$
                                          I'm digging one step into the abstraction layer. In most cases, the first thing that happens is the text document that contains your source code is analyzed and converted into some other sorts of objects. This process includes things like the spiritual equivalent of converting all of your long identifiers into single-letter names.
                                          $endgroup$
                                          – Hurkyl
                                          Dec 1 '11 at 1:59










                                        • $begingroup$
                                          I think a better way to describe would be: Computer programs are almost never directly executed in text form. Rather, it is almost always converted into some more efficient intermediate format for execution, even in interpreted languages. (Bash is a bit of an exception though…)
                                          $endgroup$
                                          – Rufflewind
                                          Nov 10 '16 at 4:37














                                        26












                                        26








                                        26





                                        $begingroup$

                                        You're sort of comparing apples and oranges.



                                        Mathematical papers are written in verbose, descriptive language (e.g. English); equations and such are introduced to introduce precision and brevity when needed.



                                        A computer program, however, is written in a very precise language. The role of some coding style guidelines (e.g. long identifier names) are to introduce the verbose, descriptive language where needed.



                                        Also, mathematics is "executed" -- humans have to manipulate them.



                                        Computer programs, however are almost never executed. Even in an interpreted language, your program will get tokenized and parsed, and the interpreter will operate on the result.






                                        share|cite|improve this answer









                                        $endgroup$



                                        You're sort of comparing apples and oranges.



                                        Mathematical papers are written in verbose, descriptive language (e.g. English); equations and such are introduced to introduce precision and brevity when needed.



                                        A computer program, however, is written in a very precise language. The role of some coding style guidelines (e.g. long identifier names) are to introduce the verbose, descriptive language where needed.



                                        Also, mathematics is "executed" -- humans have to manipulate them.



                                        Computer programs, however are almost never executed. Even in an interpreted language, your program will get tokenized and parsed, and the interpreter will operate on the result.







                                        share|cite|improve this answer












                                        share|cite|improve this answer



                                        share|cite|improve this answer










                                        answered Nov 30 '11 at 15:45









                                        HurkylHurkyl

                                        111k9118262




                                        111k9118262












                                        • $begingroup$
                                          What do you mean by mathematics is executed but programs are not? When you run a program, isn't the computer executing it?
                                          $endgroup$
                                          – timur
                                          Nov 30 '11 at 16:14






                                        • 2




                                          $begingroup$
                                          I'm digging one step into the abstraction layer. In most cases, the first thing that happens is the text document that contains your source code is analyzed and converted into some other sorts of objects. This process includes things like the spiritual equivalent of converting all of your long identifiers into single-letter names.
                                          $endgroup$
                                          – Hurkyl
                                          Dec 1 '11 at 1:59










                                        • $begingroup$
                                          I think a better way to describe would be: Computer programs are almost never directly executed in text form. Rather, it is almost always converted into some more efficient intermediate format for execution, even in interpreted languages. (Bash is a bit of an exception though…)
                                          $endgroup$
                                          – Rufflewind
                                          Nov 10 '16 at 4:37


















                                        • $begingroup$
                                          What do you mean by mathematics is executed but programs are not? When you run a program, isn't the computer executing it?
                                          $endgroup$
                                          – timur
                                          Nov 30 '11 at 16:14






                                        • 2




                                          $begingroup$
                                          I'm digging one step into the abstraction layer. In most cases, the first thing that happens is the text document that contains your source code is analyzed and converted into some other sorts of objects. This process includes things like the spiritual equivalent of converting all of your long identifiers into single-letter names.
                                          $endgroup$
                                          – Hurkyl
                                          Dec 1 '11 at 1:59










                                        • $begingroup$
                                          I think a better way to describe would be: Computer programs are almost never directly executed in text form. Rather, it is almost always converted into some more efficient intermediate format for execution, even in interpreted languages. (Bash is a bit of an exception though…)
                                          $endgroup$
                                          – Rufflewind
                                          Nov 10 '16 at 4:37
















                                        $begingroup$
                                        What do you mean by mathematics is executed but programs are not? When you run a program, isn't the computer executing it?
                                        $endgroup$
                                        – timur
                                        Nov 30 '11 at 16:14




                                        $begingroup$
                                        What do you mean by mathematics is executed but programs are not? When you run a program, isn't the computer executing it?
                                        $endgroup$
                                        – timur
                                        Nov 30 '11 at 16:14




                                        2




                                        2




                                        $begingroup$
                                        I'm digging one step into the abstraction layer. In most cases, the first thing that happens is the text document that contains your source code is analyzed and converted into some other sorts of objects. This process includes things like the spiritual equivalent of converting all of your long identifiers into single-letter names.
                                        $endgroup$
                                        – Hurkyl
                                        Dec 1 '11 at 1:59




                                        $begingroup$
                                        I'm digging one step into the abstraction layer. In most cases, the first thing that happens is the text document that contains your source code is analyzed and converted into some other sorts of objects. This process includes things like the spiritual equivalent of converting all of your long identifiers into single-letter names.
                                        $endgroup$
                                        – Hurkyl
                                        Dec 1 '11 at 1:59












                                        $begingroup$
                                        I think a better way to describe would be: Computer programs are almost never directly executed in text form. Rather, it is almost always converted into some more efficient intermediate format for execution, even in interpreted languages. (Bash is a bit of an exception though…)
                                        $endgroup$
                                        – Rufflewind
                                        Nov 10 '16 at 4:37




                                        $begingroup$
                                        I think a better way to describe would be: Computer programs are almost never directly executed in text form. Rather, it is almost always converted into some more efficient intermediate format for execution, even in interpreted languages. (Bash is a bit of an exception though…)
                                        $endgroup$
                                        – Rufflewind
                                        Nov 10 '16 at 4:37











                                        25












                                        $begingroup$

                                        I can't imagine writing full words when solving equation and rewriting it 10 times, when programming you usually don't write it so much, you can use functions, classes, copy/paste, programs which automatically insert variables etc.






                                        share|cite|improve this answer









                                        $endgroup$









                                        • 9




                                          $begingroup$
                                          +1, you forgot to mention autocomplete in most modern IDEs/editors.
                                          $endgroup$
                                          – MAK
                                          Mar 1 '11 at 10:31






                                        • 1




                                          $begingroup$
                                          @Mak, Abstraction to function names was in use long before we had autocomplete (well, maybe not that long, see Vim / Emacs abbreviation expansion systems etc.)
                                          $endgroup$
                                          – ocodo
                                          Jun 16 '11 at 15:24
















                                        25












                                        $begingroup$

                                        I can't imagine writing full words when solving equation and rewriting it 10 times, when programming you usually don't write it so much, you can use functions, classes, copy/paste, programs which automatically insert variables etc.






                                        share|cite|improve this answer









                                        $endgroup$









                                        • 9




                                          $begingroup$
                                          +1, you forgot to mention autocomplete in most modern IDEs/editors.
                                          $endgroup$
                                          – MAK
                                          Mar 1 '11 at 10:31






                                        • 1




                                          $begingroup$
                                          @Mak, Abstraction to function names was in use long before we had autocomplete (well, maybe not that long, see Vim / Emacs abbreviation expansion systems etc.)
                                          $endgroup$
                                          – ocodo
                                          Jun 16 '11 at 15:24














                                        25












                                        25








                                        25





                                        $begingroup$

                                        I can't imagine writing full words when solving equation and rewriting it 10 times, when programming you usually don't write it so much, you can use functions, classes, copy/paste, programs which automatically insert variables etc.






                                        share|cite|improve this answer









                                        $endgroup$



                                        I can't imagine writing full words when solving equation and rewriting it 10 times, when programming you usually don't write it so much, you can use functions, classes, copy/paste, programs which automatically insert variables etc.







                                        share|cite|improve this answer












                                        share|cite|improve this answer



                                        share|cite|improve this answer










                                        answered Feb 28 '11 at 15:15









                                        TemplarTemplar

                                        97321335




                                        97321335








                                        • 9




                                          $begingroup$
                                          +1, you forgot to mention autocomplete in most modern IDEs/editors.
                                          $endgroup$
                                          – MAK
                                          Mar 1 '11 at 10:31






                                        • 1




                                          $begingroup$
                                          @Mak, Abstraction to function names was in use long before we had autocomplete (well, maybe not that long, see Vim / Emacs abbreviation expansion systems etc.)
                                          $endgroup$
                                          – ocodo
                                          Jun 16 '11 at 15:24














                                        • 9




                                          $begingroup$
                                          +1, you forgot to mention autocomplete in most modern IDEs/editors.
                                          $endgroup$
                                          – MAK
                                          Mar 1 '11 at 10:31






                                        • 1




                                          $begingroup$
                                          @Mak, Abstraction to function names was in use long before we had autocomplete (well, maybe not that long, see Vim / Emacs abbreviation expansion systems etc.)
                                          $endgroup$
                                          – ocodo
                                          Jun 16 '11 at 15:24








                                        9




                                        9




                                        $begingroup$
                                        +1, you forgot to mention autocomplete in most modern IDEs/editors.
                                        $endgroup$
                                        – MAK
                                        Mar 1 '11 at 10:31




                                        $begingroup$
                                        +1, you forgot to mention autocomplete in most modern IDEs/editors.
                                        $endgroup$
                                        – MAK
                                        Mar 1 '11 at 10:31




                                        1




                                        1




                                        $begingroup$
                                        @Mak, Abstraction to function names was in use long before we had autocomplete (well, maybe not that long, see Vim / Emacs abbreviation expansion systems etc.)
                                        $endgroup$
                                        – ocodo
                                        Jun 16 '11 at 15:24




                                        $begingroup$
                                        @Mak, Abstraction to function names was in use long before we had autocomplete (well, maybe not that long, see Vim / Emacs abbreviation expansion systems etc.)
                                        $endgroup$
                                        – ocodo
                                        Jun 16 '11 at 15:24











                                        17












                                        $begingroup$

                                        Its quite self explanatory if you read of how Cardan wrote polynomials:



                                        Instead of



                                        $$x^4+6x^2+36 = 60x$$



                                        He'd write



                                        $$1overline{q}doverline{q}d. p: 6overline{q}d. p:36 text{ aequalia. } 60 pos.$$



                                        or to write



                                        $$x^4+(2y+12)x^2 +y^2+12y+36 = (2y+6)x^3+60x+y^2+12y$$



                                        He'd put



                                        $$1overline{q}doverline{q}d. p:2 pos.p:12 overline{q}d text{ R }p:1overline{q}d.p:1 pos. text{ additi numeri } p:36 text{ aequalia. } $$
                                        $$2 pos.6overline{q}dratoroverline{u},p:60 pos.p:1 overline{q}d. p:12 pos. text{ numeri additi }$$






                                        share|cite|improve this answer









                                        $endgroup$


















                                          17












                                          $begingroup$

                                          Its quite self explanatory if you read of how Cardan wrote polynomials:



                                          Instead of



                                          $$x^4+6x^2+36 = 60x$$



                                          He'd write



                                          $$1overline{q}doverline{q}d. p: 6overline{q}d. p:36 text{ aequalia. } 60 pos.$$



                                          or to write



                                          $$x^4+(2y+12)x^2 +y^2+12y+36 = (2y+6)x^3+60x+y^2+12y$$



                                          He'd put



                                          $$1overline{q}doverline{q}d. p:2 pos.p:12 overline{q}d text{ R }p:1overline{q}d.p:1 pos. text{ additi numeri } p:36 text{ aequalia. } $$
                                          $$2 pos.6overline{q}dratoroverline{u},p:60 pos.p:1 overline{q}d. p:12 pos. text{ numeri additi }$$






                                          share|cite|improve this answer









                                          $endgroup$
















                                            17












                                            17








                                            17





                                            $begingroup$

                                            Its quite self explanatory if you read of how Cardan wrote polynomials:



                                            Instead of



                                            $$x^4+6x^2+36 = 60x$$



                                            He'd write



                                            $$1overline{q}doverline{q}d. p: 6overline{q}d. p:36 text{ aequalia. } 60 pos.$$



                                            or to write



                                            $$x^4+(2y+12)x^2 +y^2+12y+36 = (2y+6)x^3+60x+y^2+12y$$



                                            He'd put



                                            $$1overline{q}doverline{q}d. p:2 pos.p:12 overline{q}d text{ R }p:1overline{q}d.p:1 pos. text{ additi numeri } p:36 text{ aequalia. } $$
                                            $$2 pos.6overline{q}dratoroverline{u},p:60 pos.p:1 overline{q}d. p:12 pos. text{ numeri additi }$$






                                            share|cite|improve this answer









                                            $endgroup$



                                            Its quite self explanatory if you read of how Cardan wrote polynomials:



                                            Instead of



                                            $$x^4+6x^2+36 = 60x$$



                                            He'd write



                                            $$1overline{q}doverline{q}d. p: 6overline{q}d. p:36 text{ aequalia. } 60 pos.$$



                                            or to write



                                            $$x^4+(2y+12)x^2 +y^2+12y+36 = (2y+6)x^3+60x+y^2+12y$$



                                            He'd put



                                            $$1overline{q}doverline{q}d. p:2 pos.p:12 overline{q}d text{ R }p:1overline{q}d.p:1 pos. text{ additi numeri } p:36 text{ aequalia. } $$
                                            $$2 pos.6overline{q}dratoroverline{u},p:60 pos.p:1 overline{q}d. p:12 pos. text{ numeri additi }$$







                                            share|cite|improve this answer












                                            share|cite|improve this answer



                                            share|cite|improve this answer










                                            answered Feb 11 '12 at 15:47









                                            Pedro TamaroffPedro Tamaroff

                                            96.6k10153297




                                            96.6k10153297























                                                12












                                                $begingroup$

                                                Actually, I think the reason why single letter identifiers are popular in math, and not so popular in programming is Intelisense. Today, every profesional developer would flinch if shown something like return P * pow(1 + r / n, n * t), but we have been spoiled by the ease of use of automatic filling of long names.



                                                As I remember, 10-15 years ago it was more common to use single or double letter names for any local variable, because the developer would have to write each character himself, by hand. Right now, I just press a few keys, and the IDE does the rest.



                                                BTW, the name of the function used in the example (pow for Power) fits nicely with the explanation.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 9




                                                  $begingroup$
                                                  The reason cannot be Intellisense: Mathematicians have been using single letters variables since the begining of time, and (good) programmers have been using descriptive names since before the guys that wrote Intellisense heard about computers...
                                                  $endgroup$
                                                  – Mariano Suárez-Álvarez
                                                  Mar 1 '11 at 15:21






                                                • 3




                                                  $begingroup$
                                                  pow, len, strcpy, sqrt. If those libraries were designed today, they would be Power, Length, StringCopy, SquareRoot. It's natural to shorten the notation when you are doing it by hand, but since I no longed do it by hand, I don't mind if a method is called ThrowStackOverflowException instead of thrSOExc, in fact I prefer the longer name.
                                                  $endgroup$
                                                  – SWeko
                                                  Mar 2 '11 at 7:55






                                                • 5




                                                  $begingroup$
                                                  StringCopy(TheOutputCharacter, NumberToString(SquareRoot(42 + TheCharacterInputtedByTheUser)); vs strcpy(out, flatten(sqrt(42 + in)));
                                                  $endgroup$
                                                  – Mateen Ulhaq
                                                  Apr 14 '11 at 2:55






                                                • 4




                                                  $begingroup$
                                                  @muntoo, Ok, TheOutputCharactes is na overkill, but other than that, the first expressuion is clearer, and it would take the same time to write both of this. What odes flatten do? Is it clear from its name?
                                                  $endgroup$
                                                  – SWeko
                                                  Apr 14 '11 at 6:59






                                                • 1




                                                  $begingroup$
                                                  @SWeko: Computers back then were actually rather limited on memory as well as bandwidth. Every byte counts back then. In particular, C89 said that identifiers with external linkage were limited to 6 significant characters, so that's why we have things like strcpy.
                                                  $endgroup$
                                                  – Rufflewind
                                                  Nov 10 '16 at 4:40
















                                                12












                                                $begingroup$

                                                Actually, I think the reason why single letter identifiers are popular in math, and not so popular in programming is Intelisense. Today, every profesional developer would flinch if shown something like return P * pow(1 + r / n, n * t), but we have been spoiled by the ease of use of automatic filling of long names.



                                                As I remember, 10-15 years ago it was more common to use single or double letter names for any local variable, because the developer would have to write each character himself, by hand. Right now, I just press a few keys, and the IDE does the rest.



                                                BTW, the name of the function used in the example (pow for Power) fits nicely with the explanation.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 9




                                                  $begingroup$
                                                  The reason cannot be Intellisense: Mathematicians have been using single letters variables since the begining of time, and (good) programmers have been using descriptive names since before the guys that wrote Intellisense heard about computers...
                                                  $endgroup$
                                                  – Mariano Suárez-Álvarez
                                                  Mar 1 '11 at 15:21






                                                • 3




                                                  $begingroup$
                                                  pow, len, strcpy, sqrt. If those libraries were designed today, they would be Power, Length, StringCopy, SquareRoot. It's natural to shorten the notation when you are doing it by hand, but since I no longed do it by hand, I don't mind if a method is called ThrowStackOverflowException instead of thrSOExc, in fact I prefer the longer name.
                                                  $endgroup$
                                                  – SWeko
                                                  Mar 2 '11 at 7:55






                                                • 5




                                                  $begingroup$
                                                  StringCopy(TheOutputCharacter, NumberToString(SquareRoot(42 + TheCharacterInputtedByTheUser)); vs strcpy(out, flatten(sqrt(42 + in)));
                                                  $endgroup$
                                                  – Mateen Ulhaq
                                                  Apr 14 '11 at 2:55






                                                • 4




                                                  $begingroup$
                                                  @muntoo, Ok, TheOutputCharactes is na overkill, but other than that, the first expressuion is clearer, and it would take the same time to write both of this. What odes flatten do? Is it clear from its name?
                                                  $endgroup$
                                                  – SWeko
                                                  Apr 14 '11 at 6:59






                                                • 1




                                                  $begingroup$
                                                  @SWeko: Computers back then were actually rather limited on memory as well as bandwidth. Every byte counts back then. In particular, C89 said that identifiers with external linkage were limited to 6 significant characters, so that's why we have things like strcpy.
                                                  $endgroup$
                                                  – Rufflewind
                                                  Nov 10 '16 at 4:40














                                                12












                                                12








                                                12





                                                $begingroup$

                                                Actually, I think the reason why single letter identifiers are popular in math, and not so popular in programming is Intelisense. Today, every profesional developer would flinch if shown something like return P * pow(1 + r / n, n * t), but we have been spoiled by the ease of use of automatic filling of long names.



                                                As I remember, 10-15 years ago it was more common to use single or double letter names for any local variable, because the developer would have to write each character himself, by hand. Right now, I just press a few keys, and the IDE does the rest.



                                                BTW, the name of the function used in the example (pow for Power) fits nicely with the explanation.






                                                share|cite|improve this answer









                                                $endgroup$



                                                Actually, I think the reason why single letter identifiers are popular in math, and not so popular in programming is Intelisense. Today, every profesional developer would flinch if shown something like return P * pow(1 + r / n, n * t), but we have been spoiled by the ease of use of automatic filling of long names.



                                                As I remember, 10-15 years ago it was more common to use single or double letter names for any local variable, because the developer would have to write each character himself, by hand. Right now, I just press a few keys, and the IDE does the rest.



                                                BTW, the name of the function used in the example (pow for Power) fits nicely with the explanation.







                                                share|cite|improve this answer












                                                share|cite|improve this answer



                                                share|cite|improve this answer










                                                answered Mar 1 '11 at 13:05









                                                SWekoSWeko

                                                23115




                                                23115








                                                • 9




                                                  $begingroup$
                                                  The reason cannot be Intellisense: Mathematicians have been using single letters variables since the begining of time, and (good) programmers have been using descriptive names since before the guys that wrote Intellisense heard about computers...
                                                  $endgroup$
                                                  – Mariano Suárez-Álvarez
                                                  Mar 1 '11 at 15:21






                                                • 3




                                                  $begingroup$
                                                  pow, len, strcpy, sqrt. If those libraries were designed today, they would be Power, Length, StringCopy, SquareRoot. It's natural to shorten the notation when you are doing it by hand, but since I no longed do it by hand, I don't mind if a method is called ThrowStackOverflowException instead of thrSOExc, in fact I prefer the longer name.
                                                  $endgroup$
                                                  – SWeko
                                                  Mar 2 '11 at 7:55






                                                • 5




                                                  $begingroup$
                                                  StringCopy(TheOutputCharacter, NumberToString(SquareRoot(42 + TheCharacterInputtedByTheUser)); vs strcpy(out, flatten(sqrt(42 + in)));
                                                  $endgroup$
                                                  – Mateen Ulhaq
                                                  Apr 14 '11 at 2:55






                                                • 4




                                                  $begingroup$
                                                  @muntoo, Ok, TheOutputCharactes is na overkill, but other than that, the first expressuion is clearer, and it would take the same time to write both of this. What odes flatten do? Is it clear from its name?
                                                  $endgroup$
                                                  – SWeko
                                                  Apr 14 '11 at 6:59






                                                • 1




                                                  $begingroup$
                                                  @SWeko: Computers back then were actually rather limited on memory as well as bandwidth. Every byte counts back then. In particular, C89 said that identifiers with external linkage were limited to 6 significant characters, so that's why we have things like strcpy.
                                                  $endgroup$
                                                  – Rufflewind
                                                  Nov 10 '16 at 4:40














                                                • 9




                                                  $begingroup$
                                                  The reason cannot be Intellisense: Mathematicians have been using single letters variables since the begining of time, and (good) programmers have been using descriptive names since before the guys that wrote Intellisense heard about computers...
                                                  $endgroup$
                                                  – Mariano Suárez-Álvarez
                                                  Mar 1 '11 at 15:21






                                                • 3




                                                  $begingroup$
                                                  pow, len, strcpy, sqrt. If those libraries were designed today, they would be Power, Length, StringCopy, SquareRoot. It's natural to shorten the notation when you are doing it by hand, but since I no longed do it by hand, I don't mind if a method is called ThrowStackOverflowException instead of thrSOExc, in fact I prefer the longer name.
                                                  $endgroup$
                                                  – SWeko
                                                  Mar 2 '11 at 7:55






                                                • 5




                                                  $begingroup$
                                                  StringCopy(TheOutputCharacter, NumberToString(SquareRoot(42 + TheCharacterInputtedByTheUser)); vs strcpy(out, flatten(sqrt(42 + in)));
                                                  $endgroup$
                                                  – Mateen Ulhaq
                                                  Apr 14 '11 at 2:55






                                                • 4




                                                  $begingroup$
                                                  @muntoo, Ok, TheOutputCharactes is na overkill, but other than that, the first expressuion is clearer, and it would take the same time to write both of this. What odes flatten do? Is it clear from its name?
                                                  $endgroup$
                                                  – SWeko
                                                  Apr 14 '11 at 6:59






                                                • 1




                                                  $begingroup$
                                                  @SWeko: Computers back then were actually rather limited on memory as well as bandwidth. Every byte counts back then. In particular, C89 said that identifiers with external linkage were limited to 6 significant characters, so that's why we have things like strcpy.
                                                  $endgroup$
                                                  – Rufflewind
                                                  Nov 10 '16 at 4:40








                                                9




                                                9




                                                $begingroup$
                                                The reason cannot be Intellisense: Mathematicians have been using single letters variables since the begining of time, and (good) programmers have been using descriptive names since before the guys that wrote Intellisense heard about computers...
                                                $endgroup$
                                                – Mariano Suárez-Álvarez
                                                Mar 1 '11 at 15:21




                                                $begingroup$
                                                The reason cannot be Intellisense: Mathematicians have been using single letters variables since the begining of time, and (good) programmers have been using descriptive names since before the guys that wrote Intellisense heard about computers...
                                                $endgroup$
                                                – Mariano Suárez-Álvarez
                                                Mar 1 '11 at 15:21




                                                3




                                                3




                                                $begingroup$
                                                pow, len, strcpy, sqrt. If those libraries were designed today, they would be Power, Length, StringCopy, SquareRoot. It's natural to shorten the notation when you are doing it by hand, but since I no longed do it by hand, I don't mind if a method is called ThrowStackOverflowException instead of thrSOExc, in fact I prefer the longer name.
                                                $endgroup$
                                                – SWeko
                                                Mar 2 '11 at 7:55




                                                $begingroup$
                                                pow, len, strcpy, sqrt. If those libraries were designed today, they would be Power, Length, StringCopy, SquareRoot. It's natural to shorten the notation when you are doing it by hand, but since I no longed do it by hand, I don't mind if a method is called ThrowStackOverflowException instead of thrSOExc, in fact I prefer the longer name.
                                                $endgroup$
                                                – SWeko
                                                Mar 2 '11 at 7:55




                                                5




                                                5




                                                $begingroup$
                                                StringCopy(TheOutputCharacter, NumberToString(SquareRoot(42 + TheCharacterInputtedByTheUser)); vs strcpy(out, flatten(sqrt(42 + in)));
                                                $endgroup$
                                                – Mateen Ulhaq
                                                Apr 14 '11 at 2:55




                                                $begingroup$
                                                StringCopy(TheOutputCharacter, NumberToString(SquareRoot(42 + TheCharacterInputtedByTheUser)); vs strcpy(out, flatten(sqrt(42 + in)));
                                                $endgroup$
                                                – Mateen Ulhaq
                                                Apr 14 '11 at 2:55




                                                4




                                                4




                                                $begingroup$
                                                @muntoo, Ok, TheOutputCharactes is na overkill, but other than that, the first expressuion is clearer, and it would take the same time to write both of this. What odes flatten do? Is it clear from its name?
                                                $endgroup$
                                                – SWeko
                                                Apr 14 '11 at 6:59




                                                $begingroup$
                                                @muntoo, Ok, TheOutputCharactes is na overkill, but other than that, the first expressuion is clearer, and it would take the same time to write both of this. What odes flatten do? Is it clear from its name?
                                                $endgroup$
                                                – SWeko
                                                Apr 14 '11 at 6:59




                                                1




                                                1




                                                $begingroup$
                                                @SWeko: Computers back then were actually rather limited on memory as well as bandwidth. Every byte counts back then. In particular, C89 said that identifiers with external linkage were limited to 6 significant characters, so that's why we have things like strcpy.
                                                $endgroup$
                                                – Rufflewind
                                                Nov 10 '16 at 4:40




                                                $begingroup$
                                                @SWeko: Computers back then were actually rather limited on memory as well as bandwidth. Every byte counts back then. In particular, C89 said that identifiers with external linkage were limited to 6 significant characters, so that's why we have things like strcpy.
                                                $endgroup$
                                                – Rufflewind
                                                Nov 10 '16 at 4:40











                                                11












                                                $begingroup$

                                                Because the intellisense & autocompletion on my piece of paper is turned off. :)



                                                (So is the context sensitive color highlighting.)



                                                Holy cow, imagine a sheaf cohomology commutative diagram chase with camel casing and vaguely Java like method syntax for all operations. Or even just the chain rule:



                                                derivative(firstSmoothFunction.composedWith(secondSmoothFunction)) = derivative(firstSmoothFunction).composedWith(secondSmoothFunction) * derivative(secondSmoothFunction)



                                                In many cases the more concise notation may make it harder to remember what stands for what, but well chosen notation makes the relations between things much more apparent.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 2




                                                  $begingroup$
                                                  There is an important overlap between what you say and what has been said in earlier answers. :)
                                                  $endgroup$
                                                  – Mariano Suárez-Álvarez
                                                  Feb 28 '12 at 7:19






                                                • 6




                                                  $begingroup$
                                                  however, this fantastic formulation of the chain rule is hilarious.
                                                  $endgroup$
                                                  – Sam Lisi
                                                  Jun 26 '12 at 9:48










                                                • $begingroup$
                                                  @SamLisi they wouldn't write it like this. It'd rather be deriv(compose(smoothFunc1, smoothFunc2), x) = deriv(smoothFunc1, smoothFunc2(x)) * deriv(smoothFunc2, x). Much shorter. Besides, it's clattered with parentheses, and I imagine they'd use a terser notation. E.g. in Haskell parentheses are unambiguously used for order, function application is just a whitespace. So you're down to deriv (smoothFunc1 . smoothFunc2) x = deriv smoothFunc1 (smoothFunc2 x) * deriv smoothFunc2 x (might confuse a bit if you don't know Haskell, but it is easier to read).
                                                  $endgroup$
                                                  – Hi-Angel
                                                  Jun 28 '17 at 15:52
















                                                11












                                                $begingroup$

                                                Because the intellisense & autocompletion on my piece of paper is turned off. :)



                                                (So is the context sensitive color highlighting.)



                                                Holy cow, imagine a sheaf cohomology commutative diagram chase with camel casing and vaguely Java like method syntax for all operations. Or even just the chain rule:



                                                derivative(firstSmoothFunction.composedWith(secondSmoothFunction)) = derivative(firstSmoothFunction).composedWith(secondSmoothFunction) * derivative(secondSmoothFunction)



                                                In many cases the more concise notation may make it harder to remember what stands for what, but well chosen notation makes the relations between things much more apparent.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 2




                                                  $begingroup$
                                                  There is an important overlap between what you say and what has been said in earlier answers. :)
                                                  $endgroup$
                                                  – Mariano Suárez-Álvarez
                                                  Feb 28 '12 at 7:19






                                                • 6




                                                  $begingroup$
                                                  however, this fantastic formulation of the chain rule is hilarious.
                                                  $endgroup$
                                                  – Sam Lisi
                                                  Jun 26 '12 at 9:48










                                                • $begingroup$
                                                  @SamLisi they wouldn't write it like this. It'd rather be deriv(compose(smoothFunc1, smoothFunc2), x) = deriv(smoothFunc1, smoothFunc2(x)) * deriv(smoothFunc2, x). Much shorter. Besides, it's clattered with parentheses, and I imagine they'd use a terser notation. E.g. in Haskell parentheses are unambiguously used for order, function application is just a whitespace. So you're down to deriv (smoothFunc1 . smoothFunc2) x = deriv smoothFunc1 (smoothFunc2 x) * deriv smoothFunc2 x (might confuse a bit if you don't know Haskell, but it is easier to read).
                                                  $endgroup$
                                                  – Hi-Angel
                                                  Jun 28 '17 at 15:52














                                                11












                                                11








                                                11





                                                $begingroup$

                                                Because the intellisense & autocompletion on my piece of paper is turned off. :)



                                                (So is the context sensitive color highlighting.)



                                                Holy cow, imagine a sheaf cohomology commutative diagram chase with camel casing and vaguely Java like method syntax for all operations. Or even just the chain rule:



                                                derivative(firstSmoothFunction.composedWith(secondSmoothFunction)) = derivative(firstSmoothFunction).composedWith(secondSmoothFunction) * derivative(secondSmoothFunction)



                                                In many cases the more concise notation may make it harder to remember what stands for what, but well chosen notation makes the relations between things much more apparent.






                                                share|cite|improve this answer









                                                $endgroup$



                                                Because the intellisense & autocompletion on my piece of paper is turned off. :)



                                                (So is the context sensitive color highlighting.)



                                                Holy cow, imagine a sheaf cohomology commutative diagram chase with camel casing and vaguely Java like method syntax for all operations. Or even just the chain rule:



                                                derivative(firstSmoothFunction.composedWith(secondSmoothFunction)) = derivative(firstSmoothFunction).composedWith(secondSmoothFunction) * derivative(secondSmoothFunction)



                                                In many cases the more concise notation may make it harder to remember what stands for what, but well chosen notation makes the relations between things much more apparent.







                                                share|cite|improve this answer












                                                share|cite|improve this answer



                                                share|cite|improve this answer










                                                answered Feb 28 '12 at 6:48









                                                John RobertsonJohn Robertson

                                                92179




                                                92179








                                                • 2




                                                  $begingroup$
                                                  There is an important overlap between what you say and what has been said in earlier answers. :)
                                                  $endgroup$
                                                  – Mariano Suárez-Álvarez
                                                  Feb 28 '12 at 7:19






                                                • 6




                                                  $begingroup$
                                                  however, this fantastic formulation of the chain rule is hilarious.
                                                  $endgroup$
                                                  – Sam Lisi
                                                  Jun 26 '12 at 9:48










                                                • $begingroup$
                                                  @SamLisi they wouldn't write it like this. It'd rather be deriv(compose(smoothFunc1, smoothFunc2), x) = deriv(smoothFunc1, smoothFunc2(x)) * deriv(smoothFunc2, x). Much shorter. Besides, it's clattered with parentheses, and I imagine they'd use a terser notation. E.g. in Haskell parentheses are unambiguously used for order, function application is just a whitespace. So you're down to deriv (smoothFunc1 . smoothFunc2) x = deriv smoothFunc1 (smoothFunc2 x) * deriv smoothFunc2 x (might confuse a bit if you don't know Haskell, but it is easier to read).
                                                  $endgroup$
                                                  – Hi-Angel
                                                  Jun 28 '17 at 15:52














                                                • 2




                                                  $begingroup$
                                                  There is an important overlap between what you say and what has been said in earlier answers. :)
                                                  $endgroup$
                                                  – Mariano Suárez-Álvarez
                                                  Feb 28 '12 at 7:19






                                                • 6




                                                  $begingroup$
                                                  however, this fantastic formulation of the chain rule is hilarious.
                                                  $endgroup$
                                                  – Sam Lisi
                                                  Jun 26 '12 at 9:48










                                                • $begingroup$
                                                  @SamLisi they wouldn't write it like this. It'd rather be deriv(compose(smoothFunc1, smoothFunc2), x) = deriv(smoothFunc1, smoothFunc2(x)) * deriv(smoothFunc2, x). Much shorter. Besides, it's clattered with parentheses, and I imagine they'd use a terser notation. E.g. in Haskell parentheses are unambiguously used for order, function application is just a whitespace. So you're down to deriv (smoothFunc1 . smoothFunc2) x = deriv smoothFunc1 (smoothFunc2 x) * deriv smoothFunc2 x (might confuse a bit if you don't know Haskell, but it is easier to read).
                                                  $endgroup$
                                                  – Hi-Angel
                                                  Jun 28 '17 at 15:52








                                                2




                                                2




                                                $begingroup$
                                                There is an important overlap between what you say and what has been said in earlier answers. :)
                                                $endgroup$
                                                – Mariano Suárez-Álvarez
                                                Feb 28 '12 at 7:19




                                                $begingroup$
                                                There is an important overlap between what you say and what has been said in earlier answers. :)
                                                $endgroup$
                                                – Mariano Suárez-Álvarez
                                                Feb 28 '12 at 7:19




                                                6




                                                6




                                                $begingroup$
                                                however, this fantastic formulation of the chain rule is hilarious.
                                                $endgroup$
                                                – Sam Lisi
                                                Jun 26 '12 at 9:48




                                                $begingroup$
                                                however, this fantastic formulation of the chain rule is hilarious.
                                                $endgroup$
                                                – Sam Lisi
                                                Jun 26 '12 at 9:48












                                                $begingroup$
                                                @SamLisi they wouldn't write it like this. It'd rather be deriv(compose(smoothFunc1, smoothFunc2), x) = deriv(smoothFunc1, smoothFunc2(x)) * deriv(smoothFunc2, x). Much shorter. Besides, it's clattered with parentheses, and I imagine they'd use a terser notation. E.g. in Haskell parentheses are unambiguously used for order, function application is just a whitespace. So you're down to deriv (smoothFunc1 . smoothFunc2) x = deriv smoothFunc1 (smoothFunc2 x) * deriv smoothFunc2 x (might confuse a bit if you don't know Haskell, but it is easier to read).
                                                $endgroup$
                                                – Hi-Angel
                                                Jun 28 '17 at 15:52




                                                $begingroup$
                                                @SamLisi they wouldn't write it like this. It'd rather be deriv(compose(smoothFunc1, smoothFunc2), x) = deriv(smoothFunc1, smoothFunc2(x)) * deriv(smoothFunc2, x). Much shorter. Besides, it's clattered with parentheses, and I imagine they'd use a terser notation. E.g. in Haskell parentheses are unambiguously used for order, function application is just a whitespace. So you're down to deriv (smoothFunc1 . smoothFunc2) x = deriv smoothFunc1 (smoothFunc2 x) * deriv smoothFunc2 x (might confuse a bit if you don't know Haskell, but it is easier to read).
                                                $endgroup$
                                                – Hi-Angel
                                                Jun 28 '17 at 15:52











                                                9












                                                $begingroup$

                                                It's a convention like any other; never underestimate the power of historical inertia! Different disciplines have different conventions.



                                                I would also guess (and I have no evidence to support this) that a big reason it is currently still around is that typesetting equations was expensive and time-consuming before the rise of modern typesetting (e.g. TeX) and writers of textbooks were probably encouraged to keep their notation as concise as possible. This would explain the disparity between mathematicians and programmers since the latter, after all, have the benefit of a history of using computers.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 4




                                                  $begingroup$
                                                  Even with TeX the software still "expects" single-letter variables. One can write $pressure$ but only with mathrm{ ... } tags does it look like you would want a whole word to: $mathrm{pressure}$.
                                                  $endgroup$
                                                  – isomorphismes
                                                  Jun 23 '11 at 15:57


















                                                9












                                                $begingroup$

                                                It's a convention like any other; never underestimate the power of historical inertia! Different disciplines have different conventions.



                                                I would also guess (and I have no evidence to support this) that a big reason it is currently still around is that typesetting equations was expensive and time-consuming before the rise of modern typesetting (e.g. TeX) and writers of textbooks were probably encouraged to keep their notation as concise as possible. This would explain the disparity between mathematicians and programmers since the latter, after all, have the benefit of a history of using computers.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 4




                                                  $begingroup$
                                                  Even with TeX the software still "expects" single-letter variables. One can write $pressure$ but only with mathrm{ ... } tags does it look like you would want a whole word to: $mathrm{pressure}$.
                                                  $endgroup$
                                                  – isomorphismes
                                                  Jun 23 '11 at 15:57
















                                                9












                                                9








                                                9





                                                $begingroup$

                                                It's a convention like any other; never underestimate the power of historical inertia! Different disciplines have different conventions.



                                                I would also guess (and I have no evidence to support this) that a big reason it is currently still around is that typesetting equations was expensive and time-consuming before the rise of modern typesetting (e.g. TeX) and writers of textbooks were probably encouraged to keep their notation as concise as possible. This would explain the disparity between mathematicians and programmers since the latter, after all, have the benefit of a history of using computers.






                                                share|cite|improve this answer









                                                $endgroup$



                                                It's a convention like any other; never underestimate the power of historical inertia! Different disciplines have different conventions.



                                                I would also guess (and I have no evidence to support this) that a big reason it is currently still around is that typesetting equations was expensive and time-consuming before the rise of modern typesetting (e.g. TeX) and writers of textbooks were probably encouraged to keep their notation as concise as possible. This would explain the disparity between mathematicians and programmers since the latter, after all, have the benefit of a history of using computers.







                                                share|cite|improve this answer












                                                share|cite|improve this answer



                                                share|cite|improve this answer










                                                answered Feb 28 '11 at 15:23









                                                Qiaochu YuanQiaochu Yuan

                                                278k32585921




                                                278k32585921








                                                • 4




                                                  $begingroup$
                                                  Even with TeX the software still "expects" single-letter variables. One can write $pressure$ but only with mathrm{ ... } tags does it look like you would want a whole word to: $mathrm{pressure}$.
                                                  $endgroup$
                                                  – isomorphismes
                                                  Jun 23 '11 at 15:57
















                                                • 4




                                                  $begingroup$
                                                  Even with TeX the software still "expects" single-letter variables. One can write $pressure$ but only with mathrm{ ... } tags does it look like you would want a whole word to: $mathrm{pressure}$.
                                                  $endgroup$
                                                  – isomorphismes
                                                  Jun 23 '11 at 15:57










                                                4




                                                4




                                                $begingroup$
                                                Even with TeX the software still "expects" single-letter variables. One can write $pressure$ but only with mathrm{ ... } tags does it look like you would want a whole word to: $mathrm{pressure}$.
                                                $endgroup$
                                                – isomorphismes
                                                Jun 23 '11 at 15:57






                                                $begingroup$
                                                Even with TeX the software still "expects" single-letter variables. One can write $pressure$ but only with mathrm{ ... } tags does it look like you would want a whole word to: $mathrm{pressure}$.
                                                $endgroup$
                                                – isomorphismes
                                                Jun 23 '11 at 15:57













                                                9












                                                $begingroup$

                                                When doing algebra by hand with pencil and paper, it's a lot easier - and a lot faster - to work with something like



                                                PV=nRT



                                                instead of



                                                (pressure)(volume) = (number of moles of gas) (gas constant) (temperature).



                                                And this matters a lot when you're doing a timed exam.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 1




                                                  $begingroup$
                                                  Right. Part of what makes mathematics what it is is its ECONOMY of expression.
                                                  $endgroup$
                                                  – Mike Jones
                                                  Oct 20 '11 at 4:31
















                                                9












                                                $begingroup$

                                                When doing algebra by hand with pencil and paper, it's a lot easier - and a lot faster - to work with something like



                                                PV=nRT



                                                instead of



                                                (pressure)(volume) = (number of moles of gas) (gas constant) (temperature).



                                                And this matters a lot when you're doing a timed exam.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 1




                                                  $begingroup$
                                                  Right. Part of what makes mathematics what it is is its ECONOMY of expression.
                                                  $endgroup$
                                                  – Mike Jones
                                                  Oct 20 '11 at 4:31














                                                9












                                                9








                                                9





                                                $begingroup$

                                                When doing algebra by hand with pencil and paper, it's a lot easier - and a lot faster - to work with something like



                                                PV=nRT



                                                instead of



                                                (pressure)(volume) = (number of moles of gas) (gas constant) (temperature).



                                                And this matters a lot when you're doing a timed exam.






                                                share|cite|improve this answer









                                                $endgroup$



                                                When doing algebra by hand with pencil and paper, it's a lot easier - and a lot faster - to work with something like



                                                PV=nRT



                                                instead of



                                                (pressure)(volume) = (number of moles of gas) (gas constant) (temperature).



                                                And this matters a lot when you're doing a timed exam.







                                                share|cite|improve this answer












                                                share|cite|improve this answer



                                                share|cite|improve this answer










                                                answered Apr 1 '11 at 20:45







                                                user9000















                                                • 1




                                                  $begingroup$
                                                  Right. Part of what makes mathematics what it is is its ECONOMY of expression.
                                                  $endgroup$
                                                  – Mike Jones
                                                  Oct 20 '11 at 4:31














                                                • 1




                                                  $begingroup$
                                                  Right. Part of what makes mathematics what it is is its ECONOMY of expression.
                                                  $endgroup$
                                                  – Mike Jones
                                                  Oct 20 '11 at 4:31








                                                1




                                                1




                                                $begingroup$
                                                Right. Part of what makes mathematics what it is is its ECONOMY of expression.
                                                $endgroup$
                                                – Mike Jones
                                                Oct 20 '11 at 4:31




                                                $begingroup$
                                                Right. Part of what makes mathematics what it is is its ECONOMY of expression.
                                                $endgroup$
                                                – Mike Jones
                                                Oct 20 '11 at 4:31











                                                9












                                                $begingroup$

                                                I think mathematicians continue to use such terse notation because they don't have to maintain their creations under time pressure. Mathematics is essentially a write-once language and it only runs inside another mathematician's very forgiving brain. You can spend an hour rereading the same paragraph in a math paper until you understand it, taking time to absorb and reabsorb the sundry meanings of the Greek and Roman characters arrayed before you, and nothing bad will happen in the meantime. In an IT operating environment, we don't have that luxury. If I were ever rolled out of bed at 0300 to deal with a computer system problem and I had to deal with scripts/logs written anything like a typical math theorem, the person/idiot responsible for those scripts/logs would be strangled/fired before sunup.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 2




                                                  $begingroup$
                                                  This isn't unique to mathematics, though. The same was true for pretty much all disciplines before there were computers. Papers meant to be read by humans don't have to be "maintained" in the same way that software does. (Because, as you said, the papers are only "run" in another human's brain.) Instead of maintaining "legacy papers", each generation can simply rewrite in its own language, letting the (human) readers' brains take care of any "backward compatibility" issues.
                                                  $endgroup$
                                                  – Ted
                                                  Jan 13 '12 at 6:18






                                                • 2




                                                  $begingroup$
                                                  As support for this view (that variable names in mathematics can be short because they are "throwaway" and the expressions don't have to be looked at again) — note that even in programming, certain variables that are very temporary and local in scope often take single-letter names. Loops are often written with "i" for the index, and this is not (usually) considered bad style if the body of the loop is short and its structure is nothing unconventional.
                                                  $endgroup$
                                                  – ShreevatsaR
                                                  Mar 17 '13 at 11:19
















                                                9












                                                $begingroup$

                                                I think mathematicians continue to use such terse notation because they don't have to maintain their creations under time pressure. Mathematics is essentially a write-once language and it only runs inside another mathematician's very forgiving brain. You can spend an hour rereading the same paragraph in a math paper until you understand it, taking time to absorb and reabsorb the sundry meanings of the Greek and Roman characters arrayed before you, and nothing bad will happen in the meantime. In an IT operating environment, we don't have that luxury. If I were ever rolled out of bed at 0300 to deal with a computer system problem and I had to deal with scripts/logs written anything like a typical math theorem, the person/idiot responsible for those scripts/logs would be strangled/fired before sunup.






                                                share|cite|improve this answer









                                                $endgroup$









                                                • 2




                                                  $begingroup$
                                                  This isn't unique to mathematics, though. The same was true for pretty much all disciplines before there were computers. Papers meant to be read by humans don't have to be "maintained" in the same way that software does. (Because, as you said, the papers are only "run" in another human's brain.) Instead of maintaining "legacy papers", each generation can simply rewrite in its own language, letting the (human) readers' brains take care of any "backward compatibility" issues.
                                                  $endgroup$
                                                  – Ted
                                                  Jan 13 '12 at 6:18






                                                • 2




                                                  $begingroup$
                                                  As support for this view (that variable names in mathematics can be short because they are "throwaway" and the expressions don't have to be looked at again) — note that even in programming, certain variables that are very temporary and local in scope often take single-letter names. Loops are often written with "i" for the index, and this is not (usually) considered bad style if the body of the loop is short and its structure is nothing unconventional.
                                                  $endgroup$
                                                  – ShreevatsaR
                                                  Mar 17 '13 at 11:19














                                                9












                                                9








                                                9





                                                $begingroup$

                                                I think mathematicians continue to use such terse notation because they don't have to maintain their creations under time pressure. Mathematics is essentially a write-once language and it only runs inside another mathematician's very forgiving brain. You can spend an hour rereading the same paragraph in a math paper until you understand it, taking time to absorb and reabsorb the sundry meanings of the Greek and Roman characters arrayed before you, and nothing bad will happen in the meantime. In an IT operating environment, we don't have that luxury. If I were ever rolled out of bed at 0300 to deal with a computer system problem and I had to deal with scripts/logs written anything like a typical math theorem, the person/idiot responsible for those scripts/logs would be strangled/fired before sunup.






                                                share|cite|improve this answer









                                                $endgroup$



                                                I think mathematicians continue to use such terse notation because they don't have to maintain their creations under time pressure. Mathematics is essentially a write-once language and it only runs inside another mathematician's very forgiving brain. You can spend an hour rereading the same paragraph in a math paper until you understand it, taking time to absorb and reabsorb the sundry meanings of the Greek and Roman characters arrayed before you, and nothing bad will happen in the meantime. In an IT operating environment, we don't have that luxury. If I were ever rolled out of bed at 0300 to deal with a computer system problem and I had to deal with scripts/logs written anything like a typical math theorem, the person/idiot responsible for those scripts/logs would be strangled/fired before sunup.







                                                share|cite|improve this answer












                                                share|cite|improve this answer



                                                share|cite|improve this answer










                                                answered Jan 13 '12 at 4:27









                                                Kyle JonesKyle Jones

                                                1,2541912




                                                1,2541912








                                                • 2




                                                  $begingroup$
                                                  This isn't unique to mathematics, though. The same was true for pretty much all disciplines before there were computers. Papers meant to be read by humans don't have to be "maintained" in the same way that software does. (Because, as you said, the papers are only "run" in another human's brain.) Instead of maintaining "legacy papers", each generation can simply rewrite in its own language, letting the (human) readers' brains take care of any "backward compatibility" issues.
                                                  $endgroup$
                                                  – Ted
                                                  Jan 13 '12 at 6:18






                                                • 2




                                                  $begingroup$
                                                  As support for this view (that variable names in mathematics can be short because they are "throwaway" and the expressions don't have to be looked at again) — note that even in programming, certain variables that are very temporary and local in scope often take single-letter names. Loops are often written with "i" for the index, and this is not (usually) considered bad style if the body of the loop is short and its structure is nothing unconventional.
                                                  $endgroup$
                                                  – ShreevatsaR
                                                  Mar 17 '13 at 11:19














                                                • 2




                                                  $begingroup$
                                                  This isn't unique to mathematics, though. The same was true for pretty much all disciplines before there were computers. Papers meant to be read by humans don't have to be "maintained" in the same way that software does. (Because, as you said, the papers are only "run" in another human's brain.) Instead of maintaining "legacy papers", each generation can simply rewrite in its own language, letting the (human) readers' brains take care of any "backward compatibility" issues.
                                                  $endgroup$
                                                  – Ted
                                                  Jan 13 '12 at 6:18






                                                • 2




                                                  $begingroup$
                                                  As support for this view (that variable names in mathematics can be short because they are "throwaway" and the expressions don't have to be looked at again) — note that even in programming, certain variables that are very temporary and local in scope often take single-letter names. Loops are often written with "i" for the index, and this is not (usually) considered bad style if the body of the loop is short and its structure is nothing unconventional.
                                                  $endgroup$
                                                  – ShreevatsaR
                                                  Mar 17 '13 at 11:19








                                                2




                                                2




                                                $begingroup$
                                                This isn't unique to mathematics, though. The same was true for pretty much all disciplines before there were computers. Papers meant to be read by humans don't have to be "maintained" in the same way that software does. (Because, as you said, the papers are only "run" in another human's brain.) Instead of maintaining "legacy papers", each generation can simply rewrite in its own language, letting the (human) readers' brains take care of any "backward compatibility" issues.
                                                $endgroup$
                                                – Ted
                                                Jan 13 '12 at 6:18




                                                $begingroup$
                                                This isn't unique to mathematics, though. The same was true for pretty much all disciplines before there were computers. Papers meant to be read by humans don't have to be "maintained" in the same way that software does. (Because, as you said, the papers are only "run" in another human's brain.) Instead of maintaining "legacy papers", each generation can simply rewrite in its own language, letting the (human) readers' brains take care of any "backward compatibility" issues.
                                                $endgroup$
                                                – Ted
                                                Jan 13 '12 at 6:18




                                                2




                                                2




                                                $begingroup$
                                                As support for this view (that variable names in mathematics can be short because they are "throwaway" and the expressions don't have to be looked at again) — note that even in programming, certain variables that are very temporary and local in scope often take single-letter names. Loops are often written with "i" for the index, and this is not (usually) considered bad style if the body of the loop is short and its structure is nothing unconventional.
                                                $endgroup$
                                                – ShreevatsaR
                                                Mar 17 '13 at 11:19




                                                $begingroup$
                                                As support for this view (that variable names in mathematics can be short because they are "throwaway" and the expressions don't have to be looked at again) — note that even in programming, certain variables that are very temporary and local in scope often take single-letter names. Loops are often written with "i" for the index, and this is not (usually) considered bad style if the body of the loop is short and its structure is nothing unconventional.
                                                $endgroup$
                                                – ShreevatsaR
                                                Mar 17 '13 at 11:19











                                                7












                                                $begingroup$

                                                I am a retired software engineer and a math person. I am going to answer your question based on my own personal experience and observation.



                                                The coding style in your first example is unacceptable today but was common in old days. The FORTRAN programs written in 60's and 70's are like that.



                                                The programmers deal with real life problems. The reasons programmers use long variable names are mostly for readability and easy to debug. Programmers are asked to use long names because they were having difficulty understanding code written by others and debugging code written in short names. I was once shown a piece of code written by myself and could not figure out what I was doing.



                                                On the other hand, mathematicians mostly deal with abstractions. The formula in your example generally will be present with the explanation you provided. Later on in the literature,
                                                the author can use t, which is the number of years, wherever it is needed without repeated explanations. Most mathematicians follow certain conventions, say they usually use x for an unknown, c for a constant without explanation. This sometimes will give the readers some trouble understanding the text if unusual conventions were used. Also, the reader will have to get used to the notation the author adopts. Sometimes it's a pain.



                                                In either case, there is a compiler there. In the programming case, you have a compiler to help generating machine code for the computer to understand. In the math case, your brain is the compiler to generate the knowledge.






                                                share|cite|improve this answer









                                                $endgroup$


















                                                  7












                                                  $begingroup$

                                                  I am a retired software engineer and a math person. I am going to answer your question based on my own personal experience and observation.



                                                  The coding style in your first example is unacceptable today but was common in old days. The FORTRAN programs written in 60's and 70's are like that.



                                                  The programmers deal with real life problems. The reasons programmers use long variable names are mostly for readability and easy to debug. Programmers are asked to use long names because they were having difficulty understanding code written by others and debugging code written in short names. I was once shown a piece of code written by myself and could not figure out what I was doing.



                                                  On the other hand, mathematicians mostly deal with abstractions. The formula in your example generally will be present with the explanation you provided. Later on in the literature,
                                                  the author can use t, which is the number of years, wherever it is needed without repeated explanations. Most mathematicians follow certain conventions, say they usually use x for an unknown, c for a constant without explanation. This sometimes will give the readers some trouble understanding the text if unusual conventions were used. Also, the reader will have to get used to the notation the author adopts. Sometimes it's a pain.



                                                  In either case, there is a compiler there. In the programming case, you have a compiler to help generating machine code for the computer to understand. In the math case, your brain is the compiler to generate the knowledge.






                                                  share|cite|improve this answer









                                                  $endgroup$
















                                                    7












                                                    7








                                                    7





                                                    $begingroup$

                                                    I am a retired software engineer and a math person. I am going to answer your question based on my own personal experience and observation.



                                                    The coding style in your first example is unacceptable today but was common in old days. The FORTRAN programs written in 60's and 70's are like that.



                                                    The programmers deal with real life problems. The reasons programmers use long variable names are mostly for readability and easy to debug. Programmers are asked to use long names because they were having difficulty understanding code written by others and debugging code written in short names. I was once shown a piece of code written by myself and could not figure out what I was doing.



                                                    On the other hand, mathematicians mostly deal with abstractions. The formula in your example generally will be present with the explanation you provided. Later on in the literature,
                                                    the author can use t, which is the number of years, wherever it is needed without repeated explanations. Most mathematicians follow certain conventions, say they usually use x for an unknown, c for a constant without explanation. This sometimes will give the readers some trouble understanding the text if unusual conventions were used. Also, the reader will have to get used to the notation the author adopts. Sometimes it's a pain.



                                                    In either case, there is a compiler there. In the programming case, you have a compiler to help generating machine code for the computer to understand. In the math case, your brain is the compiler to generate the knowledge.






                                                    share|cite|improve this answer









                                                    $endgroup$



                                                    I am a retired software engineer and a math person. I am going to answer your question based on my own personal experience and observation.



                                                    The coding style in your first example is unacceptable today but was common in old days. The FORTRAN programs written in 60's and 70's are like that.



                                                    The programmers deal with real life problems. The reasons programmers use long variable names are mostly for readability and easy to debug. Programmers are asked to use long names because they were having difficulty understanding code written by others and debugging code written in short names. I was once shown a piece of code written by myself and could not figure out what I was doing.



                                                    On the other hand, mathematicians mostly deal with abstractions. The formula in your example generally will be present with the explanation you provided. Later on in the literature,
                                                    the author can use t, which is the number of years, wherever it is needed without repeated explanations. Most mathematicians follow certain conventions, say they usually use x for an unknown, c for a constant without explanation. This sometimes will give the readers some trouble understanding the text if unusual conventions were used. Also, the reader will have to get used to the notation the author adopts. Sometimes it's a pain.



                                                    In either case, there is a compiler there. In the programming case, you have a compiler to help generating machine code for the computer to understand. In the math case, your brain is the compiler to generate the knowledge.







                                                    share|cite|improve this answer












                                                    share|cite|improve this answer



                                                    share|cite|improve this answer










                                                    answered Apr 18 '12 at 10:19









                                                    scaaahuscaaahu

                                                    77111128




                                                    77111128























                                                        6












                                                        $begingroup$

                                                        I don't think that substituting single-letter variables with more letters would do much positive in most mathematics, because most theorems (and such) are short enough so that remembering a few variables isn't a problem. And if you forget, it is just to look at the start of the theorem. Also, there is conventions for what variable-letters to use in different circumstances. And last, it is a way to make it easier to separate words from variables.



                                                        In programming, the ability to have more letters for one variable, is a huge advantage because a program often consists of thousands of lines, and hundreds of variables.






                                                        share|cite|improve this answer









                                                        $endgroup$













                                                        • $begingroup$
                                                          Indeed, the usage that routinely confounds me is when I'm reading a paper and there's an intro paragraph that describes how 10 or more separate Roman/Greek/Hebrew symbols will be used, symbols that often have wildly differing value domains (sets, clauses, integers, formulas, edges, etc.), followed by a long series of increasingly complex lemmas that use those symbols. I can keep referring back to the intro paragraph, but jumping back and forth between contexts hinders understanding.
                                                          $endgroup$
                                                          – Kyle Jones
                                                          Dec 21 '11 at 0:16
















                                                        6












                                                        $begingroup$

                                                        I don't think that substituting single-letter variables with more letters would do much positive in most mathematics, because most theorems (and such) are short enough so that remembering a few variables isn't a problem. And if you forget, it is just to look at the start of the theorem. Also, there is conventions for what variable-letters to use in different circumstances. And last, it is a way to make it easier to separate words from variables.



                                                        In programming, the ability to have more letters for one variable, is a huge advantage because a program often consists of thousands of lines, and hundreds of variables.






                                                        share|cite|improve this answer









                                                        $endgroup$













                                                        • $begingroup$
                                                          Indeed, the usage that routinely confounds me is when I'm reading a paper and there's an intro paragraph that describes how 10 or more separate Roman/Greek/Hebrew symbols will be used, symbols that often have wildly differing value domains (sets, clauses, integers, formulas, edges, etc.), followed by a long series of increasingly complex lemmas that use those symbols. I can keep referring back to the intro paragraph, but jumping back and forth between contexts hinders understanding.
                                                          $endgroup$
                                                          – Kyle Jones
                                                          Dec 21 '11 at 0:16














                                                        6












                                                        6








                                                        6





                                                        $begingroup$

                                                        I don't think that substituting single-letter variables with more letters would do much positive in most mathematics, because most theorems (and such) are short enough so that remembering a few variables isn't a problem. And if you forget, it is just to look at the start of the theorem. Also, there is conventions for what variable-letters to use in different circumstances. And last, it is a way to make it easier to separate words from variables.



                                                        In programming, the ability to have more letters for one variable, is a huge advantage because a program often consists of thousands of lines, and hundreds of variables.






                                                        share|cite|improve this answer









                                                        $endgroup$



                                                        I don't think that substituting single-letter variables with more letters would do much positive in most mathematics, because most theorems (and such) are short enough so that remembering a few variables isn't a problem. And if you forget, it is just to look at the start of the theorem. Also, there is conventions for what variable-letters to use in different circumstances. And last, it is a way to make it easier to separate words from variables.



                                                        In programming, the ability to have more letters for one variable, is a huge advantage because a program often consists of thousands of lines, and hundreds of variables.







                                                        share|cite|improve this answer












                                                        share|cite|improve this answer



                                                        share|cite|improve this answer










                                                        answered Feb 28 '11 at 16:06









                                                        EivindEivind

                                                        1,4221019




                                                        1,4221019












                                                        • $begingroup$
                                                          Indeed, the usage that routinely confounds me is when I'm reading a paper and there's an intro paragraph that describes how 10 or more separate Roman/Greek/Hebrew symbols will be used, symbols that often have wildly differing value domains (sets, clauses, integers, formulas, edges, etc.), followed by a long series of increasingly complex lemmas that use those symbols. I can keep referring back to the intro paragraph, but jumping back and forth between contexts hinders understanding.
                                                          $endgroup$
                                                          – Kyle Jones
                                                          Dec 21 '11 at 0:16


















                                                        • $begingroup$
                                                          Indeed, the usage that routinely confounds me is when I'm reading a paper and there's an intro paragraph that describes how 10 or more separate Roman/Greek/Hebrew symbols will be used, symbols that often have wildly differing value domains (sets, clauses, integers, formulas, edges, etc.), followed by a long series of increasingly complex lemmas that use those symbols. I can keep referring back to the intro paragraph, but jumping back and forth between contexts hinders understanding.
                                                          $endgroup$
                                                          – Kyle Jones
                                                          Dec 21 '11 at 0:16
















                                                        $begingroup$
                                                        Indeed, the usage that routinely confounds me is when I'm reading a paper and there's an intro paragraph that describes how 10 or more separate Roman/Greek/Hebrew symbols will be used, symbols that often have wildly differing value domains (sets, clauses, integers, formulas, edges, etc.), followed by a long series of increasingly complex lemmas that use those symbols. I can keep referring back to the intro paragraph, but jumping back and forth between contexts hinders understanding.
                                                        $endgroup$
                                                        – Kyle Jones
                                                        Dec 21 '11 at 0:16




                                                        $begingroup$
                                                        Indeed, the usage that routinely confounds me is when I'm reading a paper and there's an intro paragraph that describes how 10 or more separate Roman/Greek/Hebrew symbols will be used, symbols that often have wildly differing value domains (sets, clauses, integers, formulas, edges, etc.), followed by a long series of increasingly complex lemmas that use those symbols. I can keep referring back to the intro paragraph, but jumping back and forth between contexts hinders understanding.
                                                        $endgroup$
                                                        – Kyle Jones
                                                        Dec 21 '11 at 0:16











                                                        6












                                                        $begingroup$

                                                        Because a variable is just a number and they all behave equally, different variables dont have any different meaning or interpretation in math, you dont gain any additional information by writing "final_amount" instead of x. Its only confusing and unproffesional. Even if you try to follow this path, there can be intermediate steps in solving an equation in which these words can not be interpreted in any sensible physical or informal way. For instance it can be convenient to introduce imaginary numbers even when solving equations with real solutions.






                                                        share|cite|improve this answer









                                                        $endgroup$









                                                        • 3




                                                          $begingroup$
                                                          We use single letters for things other than variables (operators and functions, for example).
                                                          $endgroup$
                                                          – isomorphismes
                                                          Jun 23 '11 at 15:58
















                                                        6












                                                        $begingroup$

                                                        Because a variable is just a number and they all behave equally, different variables dont have any different meaning or interpretation in math, you dont gain any additional information by writing "final_amount" instead of x. Its only confusing and unproffesional. Even if you try to follow this path, there can be intermediate steps in solving an equation in which these words can not be interpreted in any sensible physical or informal way. For instance it can be convenient to introduce imaginary numbers even when solving equations with real solutions.






                                                        share|cite|improve this answer









                                                        $endgroup$









                                                        • 3




                                                          $begingroup$
                                                          We use single letters for things other than variables (operators and functions, for example).
                                                          $endgroup$
                                                          – isomorphismes
                                                          Jun 23 '11 at 15:58














                                                        6












                                                        6








                                                        6





                                                        $begingroup$

                                                        Because a variable is just a number and they all behave equally, different variables dont have any different meaning or interpretation in math, you dont gain any additional information by writing "final_amount" instead of x. Its only confusing and unproffesional. Even if you try to follow this path, there can be intermediate steps in solving an equation in which these words can not be interpreted in any sensible physical or informal way. For instance it can be convenient to introduce imaginary numbers even when solving equations with real solutions.






                                                        share|cite|improve this answer









                                                        $endgroup$



                                                        Because a variable is just a number and they all behave equally, different variables dont have any different meaning or interpretation in math, you dont gain any additional information by writing "final_amount" instead of x. Its only confusing and unproffesional. Even if you try to follow this path, there can be intermediate steps in solving an equation in which these words can not be interpreted in any sensible physical or informal way. For instance it can be convenient to introduce imaginary numbers even when solving equations with real solutions.







                                                        share|cite|improve this answer












                                                        share|cite|improve this answer



                                                        share|cite|improve this answer










                                                        answered Feb 28 '11 at 16:10









                                                        TROLLHUNTERTROLLHUNTER

                                                        3,68823180




                                                        3,68823180








                                                        • 3




                                                          $begingroup$
                                                          We use single letters for things other than variables (operators and functions, for example).
                                                          $endgroup$
                                                          – isomorphismes
                                                          Jun 23 '11 at 15:58














                                                        • 3




                                                          $begingroup$
                                                          We use single letters for things other than variables (operators and functions, for example).
                                                          $endgroup$
                                                          – isomorphismes
                                                          Jun 23 '11 at 15:58








                                                        3




                                                        3




                                                        $begingroup$
                                                        We use single letters for things other than variables (operators and functions, for example).
                                                        $endgroup$
                                                        – isomorphismes
                                                        Jun 23 '11 at 15:58




                                                        $begingroup$
                                                        We use single letters for things other than variables (operators and functions, for example).
                                                        $endgroup$
                                                        – isomorphismes
                                                        Jun 23 '11 at 15:58











                                                        6












                                                        $begingroup$

                                                        I'm a programmer as well. Note that your initial phrasing would be better as "As an imperative programmer, ..."



                                                        If you look at functional programming languages like F# or Lisp, the single letter variable paradigm is quite common for many of the reasons mentioned in the other answers. Take the functions:



                                                        let square x = x * x;;
                                                        let power x y = x ^ y;;


                                                        These are common and accepted ways to write your functional functions. This is mostly due to stateless/immutability differences in variables, but if we can skip the why explanations I'll just assert that the functional programming style parallels mathematical thinking far better than imperative.



                                                        Now imperative programming (by far the majority of programming) is more like a list of instructions, what I would compare in mathematics to a proof. If you remember back to 'doing proofs,' you state your reason for making each step along the way; in some cases rather verbosely.






                                                        share|cite|improve this answer









                                                        $endgroup$













                                                        • $begingroup$
                                                          …and every time I see a function with variables >4 in Haskell, I wondering about the original programmer's sanity. Don't get me wrong, sometimes I'm using such variables myself. We're all using "i" for index. And I don't have problems with sum a b = a + b. But there's some — very small! — amount when those single-letters bast*ds starts climbing into your eyes, hanging on your back, and squeezing your breath. It's especially annoying when you need to understand how to work with a project. Github has quite a few throw-away projects with many likes just because nobody tried to work with them.
                                                          $endgroup$
                                                          – Hi-Angel
                                                          Jun 28 '17 at 16:56
















                                                        6












                                                        $begingroup$

                                                        I'm a programmer as well. Note that your initial phrasing would be better as "As an imperative programmer, ..."



                                                        If you look at functional programming languages like F# or Lisp, the single letter variable paradigm is quite common for many of the reasons mentioned in the other answers. Take the functions:



                                                        let square x = x * x;;
                                                        let power x y = x ^ y;;


                                                        These are common and accepted ways to write your functional functions. This is mostly due to stateless/immutability differences in variables, but if we can skip the why explanations I'll just assert that the functional programming style parallels mathematical thinking far better than imperative.



                                                        Now imperative programming (by far the majority of programming) is more like a list of instructions, what I would compare in mathematics to a proof. If you remember back to 'doing proofs,' you state your reason for making each step along the way; in some cases rather verbosely.






                                                        share|cite|improve this answer









                                                        $endgroup$













                                                        • $begingroup$
                                                          …and every time I see a function with variables >4 in Haskell, I wondering about the original programmer's sanity. Don't get me wrong, sometimes I'm using such variables myself. We're all using "i" for index. And I don't have problems with sum a b = a + b. But there's some — very small! — amount when those single-letters bast*ds starts climbing into your eyes, hanging on your back, and squeezing your breath. It's especially annoying when you need to understand how to work with a project. Github has quite a few throw-away projects with many likes just because nobody tried to work with them.
                                                          $endgroup$
                                                          – Hi-Angel
                                                          Jun 28 '17 at 16:56














                                                        6












                                                        6








                                                        6





                                                        $begingroup$

                                                        I'm a programmer as well. Note that your initial phrasing would be better as "As an imperative programmer, ..."



                                                        If you look at functional programming languages like F# or Lisp, the single letter variable paradigm is quite common for many of the reasons mentioned in the other answers. Take the functions:



                                                        let square x = x * x;;
                                                        let power x y = x ^ y;;


                                                        These are common and accepted ways to write your functional functions. This is mostly due to stateless/immutability differences in variables, but if we can skip the why explanations I'll just assert that the functional programming style parallels mathematical thinking far better than imperative.



                                                        Now imperative programming (by far the majority of programming) is more like a list of instructions, what I would compare in mathematics to a proof. If you remember back to 'doing proofs,' you state your reason for making each step along the way; in some cases rather verbosely.






                                                        share|cite|improve this answer









                                                        $endgroup$



                                                        I'm a programmer as well. Note that your initial phrasing would be better as "As an imperative programmer, ..."



                                                        If you look at functional programming languages like F# or Lisp, the single letter variable paradigm is quite common for many of the reasons mentioned in the other answers. Take the functions:



                                                        let square x = x * x;;
                                                        let power x y = x ^ y;;


                                                        These are common and accepted ways to write your functional functions. This is mostly due to stateless/immutability differences in variables, but if we can skip the why explanations I'll just assert that the functional programming style parallels mathematical thinking far better than imperative.



                                                        Now imperative programming (by far the majority of programming) is more like a list of instructions, what I would compare in mathematics to a proof. If you remember back to 'doing proofs,' you state your reason for making each step along the way; in some cases rather verbosely.







                                                        share|cite|improve this answer












                                                        share|cite|improve this answer



                                                        share|cite|improve this answer










                                                        answered Apr 18 '12 at 7:09









                                                        EhrykEhryk

                                                        22729




                                                        22729












                                                        • $begingroup$
                                                          …and every time I see a function with variables >4 in Haskell, I wondering about the original programmer's sanity. Don't get me wrong, sometimes I'm using such variables myself. We're all using "i" for index. And I don't have problems with sum a b = a + b. But there's some — very small! — amount when those single-letters bast*ds starts climbing into your eyes, hanging on your back, and squeezing your breath. It's especially annoying when you need to understand how to work with a project. Github has quite a few throw-away projects with many likes just because nobody tried to work with them.
                                                          $endgroup$
                                                          – Hi-Angel
                                                          Jun 28 '17 at 16:56


















                                                        • $begingroup$
                                                          …and every time I see a function with variables >4 in Haskell, I wondering about the original programmer's sanity. Don't get me wrong, sometimes I'm using such variables myself. We're all using "i" for index. And I don't have problems with sum a b = a + b. But there's some — very small! — amount when those single-letters bast*ds starts climbing into your eyes, hanging on your back, and squeezing your breath. It's especially annoying when you need to understand how to work with a project. Github has quite a few throw-away projects with many likes just because nobody tried to work with them.
                                                          $endgroup$
                                                          – Hi-Angel
                                                          Jun 28 '17 at 16:56
















                                                        $begingroup$
                                                        …and every time I see a function with variables >4 in Haskell, I wondering about the original programmer's sanity. Don't get me wrong, sometimes I'm using such variables myself. We're all using "i" for index. And I don't have problems with sum a b = a + b. But there's some — very small! — amount when those single-letters bast*ds starts climbing into your eyes, hanging on your back, and squeezing your breath. It's especially annoying when you need to understand how to work with a project. Github has quite a few throw-away projects with many likes just because nobody tried to work with them.
                                                        $endgroup$
                                                        – Hi-Angel
                                                        Jun 28 '17 at 16:56




                                                        $begingroup$
                                                        …and every time I see a function with variables >4 in Haskell, I wondering about the original programmer's sanity. Don't get me wrong, sometimes I'm using such variables myself. We're all using "i" for index. And I don't have problems with sum a b = a + b. But there's some — very small! — amount when those single-letters bast*ds starts climbing into your eyes, hanging on your back, and squeezing your breath. It's especially annoying when you need to understand how to work with a project. Github has quite a few throw-away projects with many likes just because nobody tried to work with them.
                                                        $endgroup$
                                                        – Hi-Angel
                                                        Jun 28 '17 at 16:56











                                                        4












                                                        $begingroup$

                                                        I write: Solutions of quadratic equation $ax^2 + bx + c=0$ are $(-bpmsqrt{b^2-4ac})/(2a)$. I would not want to write this with time in place of $x$ and acceleration_of_gravity in place of $a$ and so on!






                                                        share|cite|improve this answer









                                                        $endgroup$


















                                                          4












                                                          $begingroup$

                                                          I write: Solutions of quadratic equation $ax^2 + bx + c=0$ are $(-bpmsqrt{b^2-4ac})/(2a)$. I would not want to write this with time in place of $x$ and acceleration_of_gravity in place of $a$ and so on!






                                                          share|cite|improve this answer









                                                          $endgroup$
















                                                            4












                                                            4








                                                            4





                                                            $begingroup$

                                                            I write: Solutions of quadratic equation $ax^2 + bx + c=0$ are $(-bpmsqrt{b^2-4ac})/(2a)$. I would not want to write this with time in place of $x$ and acceleration_of_gravity in place of $a$ and so on!






                                                            share|cite|improve this answer









                                                            $endgroup$



                                                            I write: Solutions of quadratic equation $ax^2 + bx + c=0$ are $(-bpmsqrt{b^2-4ac})/(2a)$. I would not want to write this with time in place of $x$ and acceleration_of_gravity in place of $a$ and so on!







                                                            share|cite|improve this answer












                                                            share|cite|improve this answer



                                                            share|cite|improve this answer










                                                            answered Nov 30 '11 at 15:10









                                                            GEdgarGEdgar

                                                            62.2k267168




                                                            62.2k267168























                                                                3












                                                                $begingroup$

                                                                The point is that we usually want to be as concise as possible, in other words, we want to be capable of being understood and on the same time do not need to write lots of things. In truth, you'll never see in the middle of a serious text of math some equations with letters appearing from nowhere without explanations: we always have the definitions first. The point is that there are some conventions that we follow: things that always have the same name, and that our audience is supposed to know about. But if we do not assume even those basic things from our audience, we define them as well.



                                                                Now, I'll give you an example that you'll agree that writting everything like you say will make us even unable to proceed with the theory (only a masochist would proceed with something like that). This is an equation from differential geometry:



                                                                $$sum_{r=1}^ng_{lr}(gamma(t)) frac{d^2gamma^r}{dt^2}+sum_{i,j=1}^n[ij,l](gamma(t))frac{dgamma^i}{dt}frac{dgamma^j}{dt}=0$$



                                                                Now, that $[ij,l]$ expands also into another kind of big expression. Now imagine if for each of the letters we write the word it means. An equation like this one, that after making the definitions is at same time compact and understandable, would become a real mess and people would get lazzy to write down equations like that writing every word. So, we do use letters because we gain compactness, we gain simplicity and we do not waste too much time writing, but the benefits of that are only achievable if we combine with clear definitions and organized line of thought. If so, when someone reaches an equation like that will look at it and say: "well, that's easy to read, the author defined all those terms properly!" and although in the paper will appear only letters, for one who knows the definitions the entire words will "be there" but without making a real mess with the text.






                                                                share|cite|improve this answer









                                                                $endgroup$


















                                                                  3












                                                                  $begingroup$

                                                                  The point is that we usually want to be as concise as possible, in other words, we want to be capable of being understood and on the same time do not need to write lots of things. In truth, you'll never see in the middle of a serious text of math some equations with letters appearing from nowhere without explanations: we always have the definitions first. The point is that there are some conventions that we follow: things that always have the same name, and that our audience is supposed to know about. But if we do not assume even those basic things from our audience, we define them as well.



                                                                  Now, I'll give you an example that you'll agree that writting everything like you say will make us even unable to proceed with the theory (only a masochist would proceed with something like that). This is an equation from differential geometry:



                                                                  $$sum_{r=1}^ng_{lr}(gamma(t)) frac{d^2gamma^r}{dt^2}+sum_{i,j=1}^n[ij,l](gamma(t))frac{dgamma^i}{dt}frac{dgamma^j}{dt}=0$$



                                                                  Now, that $[ij,l]$ expands also into another kind of big expression. Now imagine if for each of the letters we write the word it means. An equation like this one, that after making the definitions is at same time compact and understandable, would become a real mess and people would get lazzy to write down equations like that writing every word. So, we do use letters because we gain compactness, we gain simplicity and we do not waste too much time writing, but the benefits of that are only achievable if we combine with clear definitions and organized line of thought. If so, when someone reaches an equation like that will look at it and say: "well, that's easy to read, the author defined all those terms properly!" and although in the paper will appear only letters, for one who knows the definitions the entire words will "be there" but without making a real mess with the text.






                                                                  share|cite|improve this answer









                                                                  $endgroup$
















                                                                    3












                                                                    3








                                                                    3





                                                                    $begingroup$

                                                                    The point is that we usually want to be as concise as possible, in other words, we want to be capable of being understood and on the same time do not need to write lots of things. In truth, you'll never see in the middle of a serious text of math some equations with letters appearing from nowhere without explanations: we always have the definitions first. The point is that there are some conventions that we follow: things that always have the same name, and that our audience is supposed to know about. But if we do not assume even those basic things from our audience, we define them as well.



                                                                    Now, I'll give you an example that you'll agree that writting everything like you say will make us even unable to proceed with the theory (only a masochist would proceed with something like that). This is an equation from differential geometry:



                                                                    $$sum_{r=1}^ng_{lr}(gamma(t)) frac{d^2gamma^r}{dt^2}+sum_{i,j=1}^n[ij,l](gamma(t))frac{dgamma^i}{dt}frac{dgamma^j}{dt}=0$$



                                                                    Now, that $[ij,l]$ expands also into another kind of big expression. Now imagine if for each of the letters we write the word it means. An equation like this one, that after making the definitions is at same time compact and understandable, would become a real mess and people would get lazzy to write down equations like that writing every word. So, we do use letters because we gain compactness, we gain simplicity and we do not waste too much time writing, but the benefits of that are only achievable if we combine with clear definitions and organized line of thought. If so, when someone reaches an equation like that will look at it and say: "well, that's easy to read, the author defined all those terms properly!" and although in the paper will appear only letters, for one who knows the definitions the entire words will "be there" but without making a real mess with the text.






                                                                    share|cite|improve this answer









                                                                    $endgroup$



                                                                    The point is that we usually want to be as concise as possible, in other words, we want to be capable of being understood and on the same time do not need to write lots of things. In truth, you'll never see in the middle of a serious text of math some equations with letters appearing from nowhere without explanations: we always have the definitions first. The point is that there are some conventions that we follow: things that always have the same name, and that our audience is supposed to know about. But if we do not assume even those basic things from our audience, we define them as well.



                                                                    Now, I'll give you an example that you'll agree that writting everything like you say will make us even unable to proceed with the theory (only a masochist would proceed with something like that). This is an equation from differential geometry:



                                                                    $$sum_{r=1}^ng_{lr}(gamma(t)) frac{d^2gamma^r}{dt^2}+sum_{i,j=1}^n[ij,l](gamma(t))frac{dgamma^i}{dt}frac{dgamma^j}{dt}=0$$



                                                                    Now, that $[ij,l]$ expands also into another kind of big expression. Now imagine if for each of the letters we write the word it means. An equation like this one, that after making the definitions is at same time compact and understandable, would become a real mess and people would get lazzy to write down equations like that writing every word. So, we do use letters because we gain compactness, we gain simplicity and we do not waste too much time writing, but the benefits of that are only achievable if we combine with clear definitions and organized line of thought. If so, when someone reaches an equation like that will look at it and say: "well, that's easy to read, the author defined all those terms properly!" and although in the paper will appear only letters, for one who knows the definitions the entire words will "be there" but without making a real mess with the text.







                                                                    share|cite|improve this answer












                                                                    share|cite|improve this answer



                                                                    share|cite|improve this answer










                                                                    answered Jun 4 '13 at 0:06









                                                                    user1620696user1620696

                                                                    11.5k442115




                                                                    11.5k442115























                                                                        2












                                                                        $begingroup$

                                                                        Try writing:



                                                                        $$e^{ipi}=-1$$



                                                                        using big words!






                                                                        share|cite|improve this answer









                                                                        $endgroup$


















                                                                          2












                                                                          $begingroup$

                                                                          Try writing:



                                                                          $$e^{ipi}=-1$$



                                                                          using big words!






                                                                          share|cite|improve this answer









                                                                          $endgroup$
















                                                                            2












                                                                            2








                                                                            2





                                                                            $begingroup$

                                                                            Try writing:



                                                                            $$e^{ipi}=-1$$



                                                                            using big words!






                                                                            share|cite|improve this answer









                                                                            $endgroup$



                                                                            Try writing:



                                                                            $$e^{ipi}=-1$$



                                                                            using big words!







                                                                            share|cite|improve this answer












                                                                            share|cite|improve this answer



                                                                            share|cite|improve this answer










                                                                            answered Feb 16 '18 at 8:24









                                                                            JonMark PerryJonMark Perry

                                                                            11.3k92338




                                                                            11.3k92338























                                                                                1












                                                                                $begingroup$

                                                                                If we saw something like the above, then the alphabet implicitly used in mathematics would consist of words. So, then the individual letters of that alphabet basically require another language to get understood in the first place. In other words if you have something like "velocity=distance/time" then you have "velocity", "distance", and "time" at least as implied as existing in some language as part of its alphabet. But, of course, you're wanting those symbols also to represent English words which have meaning also. Thus, you need two alphabets working together at once, as well as two languages working together at once, and it's not at all clear that you'll avoid ambiguity in principle when you do this. You will have character strings which consist of a word in one language and a letter of the alphabet in the other language at the same time.



                                                                                On the other hand the more common way just requires one alphabet and one language. In principle, one doesn't need any understanding of any natural languages to have v=(d/t) mathematically speaking. You just need "v", "d" and "t" as variables in your alphabet... and to perhaps make this clearer you could write the same formula mathematically as 6=(7/8) given 6, 7, and 8 as variables in your alphabet for some language. But, then we wouldn't seek to use "6", "7", and "8" to denote numbers, because then we would have two languages working simultaneously.



                                                                                Basically, it comes as simpler to have v=(d/t) than to have velocity=(distance/time).






                                                                                share|cite|improve this answer









                                                                                $endgroup$


















                                                                                  1












                                                                                  $begingroup$

                                                                                  If we saw something like the above, then the alphabet implicitly used in mathematics would consist of words. So, then the individual letters of that alphabet basically require another language to get understood in the first place. In other words if you have something like "velocity=distance/time" then you have "velocity", "distance", and "time" at least as implied as existing in some language as part of its alphabet. But, of course, you're wanting those symbols also to represent English words which have meaning also. Thus, you need two alphabets working together at once, as well as two languages working together at once, and it's not at all clear that you'll avoid ambiguity in principle when you do this. You will have character strings which consist of a word in one language and a letter of the alphabet in the other language at the same time.



                                                                                  On the other hand the more common way just requires one alphabet and one language. In principle, one doesn't need any understanding of any natural languages to have v=(d/t) mathematically speaking. You just need "v", "d" and "t" as variables in your alphabet... and to perhaps make this clearer you could write the same formula mathematically as 6=(7/8) given 6, 7, and 8 as variables in your alphabet for some language. But, then we wouldn't seek to use "6", "7", and "8" to denote numbers, because then we would have two languages working simultaneously.



                                                                                  Basically, it comes as simpler to have v=(d/t) than to have velocity=(distance/time).






                                                                                  share|cite|improve this answer









                                                                                  $endgroup$
















                                                                                    1












                                                                                    1








                                                                                    1





                                                                                    $begingroup$

                                                                                    If we saw something like the above, then the alphabet implicitly used in mathematics would consist of words. So, then the individual letters of that alphabet basically require another language to get understood in the first place. In other words if you have something like "velocity=distance/time" then you have "velocity", "distance", and "time" at least as implied as existing in some language as part of its alphabet. But, of course, you're wanting those symbols also to represent English words which have meaning also. Thus, you need two alphabets working together at once, as well as two languages working together at once, and it's not at all clear that you'll avoid ambiguity in principle when you do this. You will have character strings which consist of a word in one language and a letter of the alphabet in the other language at the same time.



                                                                                    On the other hand the more common way just requires one alphabet and one language. In principle, one doesn't need any understanding of any natural languages to have v=(d/t) mathematically speaking. You just need "v", "d" and "t" as variables in your alphabet... and to perhaps make this clearer you could write the same formula mathematically as 6=(7/8) given 6, 7, and 8 as variables in your alphabet for some language. But, then we wouldn't seek to use "6", "7", and "8" to denote numbers, because then we would have two languages working simultaneously.



                                                                                    Basically, it comes as simpler to have v=(d/t) than to have velocity=(distance/time).






                                                                                    share|cite|improve this answer









                                                                                    $endgroup$



                                                                                    If we saw something like the above, then the alphabet implicitly used in mathematics would consist of words. So, then the individual letters of that alphabet basically require another language to get understood in the first place. In other words if you have something like "velocity=distance/time" then you have "velocity", "distance", and "time" at least as implied as existing in some language as part of its alphabet. But, of course, you're wanting those symbols also to represent English words which have meaning also. Thus, you need two alphabets working together at once, as well as two languages working together at once, and it's not at all clear that you'll avoid ambiguity in principle when you do this. You will have character strings which consist of a word in one language and a letter of the alphabet in the other language at the same time.



                                                                                    On the other hand the more common way just requires one alphabet and one language. In principle, one doesn't need any understanding of any natural languages to have v=(d/t) mathematically speaking. You just need "v", "d" and "t" as variables in your alphabet... and to perhaps make this clearer you could write the same formula mathematically as 6=(7/8) given 6, 7, and 8 as variables in your alphabet for some language. But, then we wouldn't seek to use "6", "7", and "8" to denote numbers, because then we would have two languages working simultaneously.



                                                                                    Basically, it comes as simpler to have v=(d/t) than to have velocity=(distance/time).







                                                                                    share|cite|improve this answer












                                                                                    share|cite|improve this answer



                                                                                    share|cite|improve this answer










                                                                                    answered Jan 13 '12 at 5:45









                                                                                    Doug SpoonwoodDoug Spoonwood

                                                                                    7,99412144




                                                                                    7,99412144























                                                                                        1












                                                                                        $begingroup$

                                                                                        First of all, if mathematicians used more-than-one-letter variables, they might confuse them for multiplication. Second, mathematicians like to be as accurate in as little words as possible. And finally, there are 26 letters in the alphabet. It's not like one equation will use them all, anyways.






                                                                                        share|cite|improve this answer









                                                                                        $endgroup$









                                                                                        • 2




                                                                                          $begingroup$
                                                                                          On the one hand, there are certain conventions about how which letters are used (integers versus reals versus complex numbers, parameters versus functions versus operators, indices, constants, etc.) and on the other hand, we can choose between lowercase / capitals, or go into other fonts or alphabets (calligraphy, fraktur, Greek, Hebrew, etc.) plus a few miscellaneous symbols here and there.
                                                                                          $endgroup$
                                                                                          – anon
                                                                                          Jun 3 '13 at 23:47








                                                                                        • 1




                                                                                          $begingroup$
                                                                                          @anon Well, even if you exclude those, Unicode still has 95156 (as of Unicode 3.2, there must be lots more by now) characters. Use those and you never run out
                                                                                          $endgroup$
                                                                                          – Anonymous Pi
                                                                                          Jun 3 '13 at 23:54










                                                                                        • $begingroup$
                                                                                          Oh and don't forget emojicode.org
                                                                                          $endgroup$
                                                                                          – Hendy Irawan
                                                                                          Feb 16 '18 at 7:50
















                                                                                        1












                                                                                        $begingroup$

                                                                                        First of all, if mathematicians used more-than-one-letter variables, they might confuse them for multiplication. Second, mathematicians like to be as accurate in as little words as possible. And finally, there are 26 letters in the alphabet. It's not like one equation will use them all, anyways.






                                                                                        share|cite|improve this answer









                                                                                        $endgroup$









                                                                                        • 2




                                                                                          $begingroup$
                                                                                          On the one hand, there are certain conventions about how which letters are used (integers versus reals versus complex numbers, parameters versus functions versus operators, indices, constants, etc.) and on the other hand, we can choose between lowercase / capitals, or go into other fonts or alphabets (calligraphy, fraktur, Greek, Hebrew, etc.) plus a few miscellaneous symbols here and there.
                                                                                          $endgroup$
                                                                                          – anon
                                                                                          Jun 3 '13 at 23:47








                                                                                        • 1




                                                                                          $begingroup$
                                                                                          @anon Well, even if you exclude those, Unicode still has 95156 (as of Unicode 3.2, there must be lots more by now) characters. Use those and you never run out
                                                                                          $endgroup$
                                                                                          – Anonymous Pi
                                                                                          Jun 3 '13 at 23:54










                                                                                        • $begingroup$
                                                                                          Oh and don't forget emojicode.org
                                                                                          $endgroup$
                                                                                          – Hendy Irawan
                                                                                          Feb 16 '18 at 7:50














                                                                                        1












                                                                                        1








                                                                                        1





                                                                                        $begingroup$

                                                                                        First of all, if mathematicians used more-than-one-letter variables, they might confuse them for multiplication. Second, mathematicians like to be as accurate in as little words as possible. And finally, there are 26 letters in the alphabet. It's not like one equation will use them all, anyways.






                                                                                        share|cite|improve this answer









                                                                                        $endgroup$



                                                                                        First of all, if mathematicians used more-than-one-letter variables, they might confuse them for multiplication. Second, mathematicians like to be as accurate in as little words as possible. And finally, there are 26 letters in the alphabet. It's not like one equation will use them all, anyways.







                                                                                        share|cite|improve this answer












                                                                                        share|cite|improve this answer



                                                                                        share|cite|improve this answer










                                                                                        answered Jun 3 '13 at 23:33









                                                                                        Anonymous PiAnonymous Pi

                                                                                        666518




                                                                                        666518








                                                                                        • 2




                                                                                          $begingroup$
                                                                                          On the one hand, there are certain conventions about how which letters are used (integers versus reals versus complex numbers, parameters versus functions versus operators, indices, constants, etc.) and on the other hand, we can choose between lowercase / capitals, or go into other fonts or alphabets (calligraphy, fraktur, Greek, Hebrew, etc.) plus a few miscellaneous symbols here and there.
                                                                                          $endgroup$
                                                                                          – anon
                                                                                          Jun 3 '13 at 23:47








                                                                                        • 1




                                                                                          $begingroup$
                                                                                          @anon Well, even if you exclude those, Unicode still has 95156 (as of Unicode 3.2, there must be lots more by now) characters. Use those and you never run out
                                                                                          $endgroup$
                                                                                          – Anonymous Pi
                                                                                          Jun 3 '13 at 23:54










                                                                                        • $begingroup$
                                                                                          Oh and don't forget emojicode.org
                                                                                          $endgroup$
                                                                                          – Hendy Irawan
                                                                                          Feb 16 '18 at 7:50














                                                                                        • 2




                                                                                          $begingroup$
                                                                                          On the one hand, there are certain conventions about how which letters are used (integers versus reals versus complex numbers, parameters versus functions versus operators, indices, constants, etc.) and on the other hand, we can choose between lowercase / capitals, or go into other fonts or alphabets (calligraphy, fraktur, Greek, Hebrew, etc.) plus a few miscellaneous symbols here and there.
                                                                                          $endgroup$
                                                                                          – anon
                                                                                          Jun 3 '13 at 23:47








                                                                                        • 1




                                                                                          $begingroup$
                                                                                          @anon Well, even if you exclude those, Unicode still has 95156 (as of Unicode 3.2, there must be lots more by now) characters. Use those and you never run out
                                                                                          $endgroup$
                                                                                          – Anonymous Pi
                                                                                          Jun 3 '13 at 23:54










                                                                                        • $begingroup$
                                                                                          Oh and don't forget emojicode.org
                                                                                          $endgroup$
                                                                                          – Hendy Irawan
                                                                                          Feb 16 '18 at 7:50








                                                                                        2




                                                                                        2




                                                                                        $begingroup$
                                                                                        On the one hand, there are certain conventions about how which letters are used (integers versus reals versus complex numbers, parameters versus functions versus operators, indices, constants, etc.) and on the other hand, we can choose between lowercase / capitals, or go into other fonts or alphabets (calligraphy, fraktur, Greek, Hebrew, etc.) plus a few miscellaneous symbols here and there.
                                                                                        $endgroup$
                                                                                        – anon
                                                                                        Jun 3 '13 at 23:47






                                                                                        $begingroup$
                                                                                        On the one hand, there are certain conventions about how which letters are used (integers versus reals versus complex numbers, parameters versus functions versus operators, indices, constants, etc.) and on the other hand, we can choose between lowercase / capitals, or go into other fonts or alphabets (calligraphy, fraktur, Greek, Hebrew, etc.) plus a few miscellaneous symbols here and there.
                                                                                        $endgroup$
                                                                                        – anon
                                                                                        Jun 3 '13 at 23:47






                                                                                        1




                                                                                        1




                                                                                        $begingroup$
                                                                                        @anon Well, even if you exclude those, Unicode still has 95156 (as of Unicode 3.2, there must be lots more by now) characters. Use those and you never run out
                                                                                        $endgroup$
                                                                                        – Anonymous Pi
                                                                                        Jun 3 '13 at 23:54




                                                                                        $begingroup$
                                                                                        @anon Well, even if you exclude those, Unicode still has 95156 (as of Unicode 3.2, there must be lots more by now) characters. Use those and you never run out
                                                                                        $endgroup$
                                                                                        – Anonymous Pi
                                                                                        Jun 3 '13 at 23:54












                                                                                        $begingroup$
                                                                                        Oh and don't forget emojicode.org
                                                                                        $endgroup$
                                                                                        – Hendy Irawan
                                                                                        Feb 16 '18 at 7:50




                                                                                        $begingroup$
                                                                                        Oh and don't forget emojicode.org
                                                                                        $endgroup$
                                                                                        – Hendy Irawan
                                                                                        Feb 16 '18 at 7:50











                                                                                        0












                                                                                        $begingroup$

                                                                                        The way things are now has to do with momentum.



                                                                                        Much of formal math was developed before there were computers. Thus computation was done by hand, a very repetitive process. Much literature was written with this in mind. Since pure math is not an applied field, it generally does not throw away models used in the past, the body of relevant work extends back quite far. If the field were to decide that they want to change notation, there would be countless books and journal articles to update to the new notation. While it may be simple enough to update digital documents, a large number of document stored in analog or raster formats, would likely never get updated. This body of knowledge would likely become inaccessible to future generations and thus lost to history. It is unlikely that the field will change notation unless there is a really really good reason to do so. For example the adoption of Arabic numerals was a vas improvement over Roman numerals and happened at a time when there was a much smaller body of pre-existing literature.



                                                                                        Computer science on the other hand is a new, applied field, a good deal of the advancement of the field has been after the creation of the electronic computer. The field focuses on elimination of redundant work and aims to build working systems.






                                                                                        share|cite|improve this answer









                                                                                        $endgroup$


















                                                                                          0












                                                                                          $begingroup$

                                                                                          The way things are now has to do with momentum.



                                                                                          Much of formal math was developed before there were computers. Thus computation was done by hand, a very repetitive process. Much literature was written with this in mind. Since pure math is not an applied field, it generally does not throw away models used in the past, the body of relevant work extends back quite far. If the field were to decide that they want to change notation, there would be countless books and journal articles to update to the new notation. While it may be simple enough to update digital documents, a large number of document stored in analog or raster formats, would likely never get updated. This body of knowledge would likely become inaccessible to future generations and thus lost to history. It is unlikely that the field will change notation unless there is a really really good reason to do so. For example the adoption of Arabic numerals was a vas improvement over Roman numerals and happened at a time when there was a much smaller body of pre-existing literature.



                                                                                          Computer science on the other hand is a new, applied field, a good deal of the advancement of the field has been after the creation of the electronic computer. The field focuses on elimination of redundant work and aims to build working systems.






                                                                                          share|cite|improve this answer









                                                                                          $endgroup$
















                                                                                            0












                                                                                            0








                                                                                            0





                                                                                            $begingroup$

                                                                                            The way things are now has to do with momentum.



                                                                                            Much of formal math was developed before there were computers. Thus computation was done by hand, a very repetitive process. Much literature was written with this in mind. Since pure math is not an applied field, it generally does not throw away models used in the past, the body of relevant work extends back quite far. If the field were to decide that they want to change notation, there would be countless books and journal articles to update to the new notation. While it may be simple enough to update digital documents, a large number of document stored in analog or raster formats, would likely never get updated. This body of knowledge would likely become inaccessible to future generations and thus lost to history. It is unlikely that the field will change notation unless there is a really really good reason to do so. For example the adoption of Arabic numerals was a vas improvement over Roman numerals and happened at a time when there was a much smaller body of pre-existing literature.



                                                                                            Computer science on the other hand is a new, applied field, a good deal of the advancement of the field has been after the creation of the electronic computer. The field focuses on elimination of redundant work and aims to build working systems.






                                                                                            share|cite|improve this answer









                                                                                            $endgroup$



                                                                                            The way things are now has to do with momentum.



                                                                                            Much of formal math was developed before there were computers. Thus computation was done by hand, a very repetitive process. Much literature was written with this in mind. Since pure math is not an applied field, it generally does not throw away models used in the past, the body of relevant work extends back quite far. If the field were to decide that they want to change notation, there would be countless books and journal articles to update to the new notation. While it may be simple enough to update digital documents, a large number of document stored in analog or raster formats, would likely never get updated. This body of knowledge would likely become inaccessible to future generations and thus lost to history. It is unlikely that the field will change notation unless there is a really really good reason to do so. For example the adoption of Arabic numerals was a vas improvement over Roman numerals and happened at a time when there was a much smaller body of pre-existing literature.



                                                                                            Computer science on the other hand is a new, applied field, a good deal of the advancement of the field has been after the creation of the electronic computer. The field focuses on elimination of redundant work and aims to build working systems.







                                                                                            share|cite|improve this answer












                                                                                            share|cite|improve this answer



                                                                                            share|cite|improve this answer










                                                                                            answered Dec 6 '17 at 4:33









                                                                                            Joel no not that JoelJoel no not that Joel

                                                                                            11




                                                                                            11























                                                                                                0












                                                                                                $begingroup$

                                                                                                I'd say partially because mathematical notation has much bigger vocabulary of "symbols" than source code notation.



                                                                                                Consider the following (shortened):



                                                                                                $$sum x_i$$



                                                                                                You probably will write that in a programming language as:



                                                                                                np.sum(x)


                                                                                                Why not...?



                                                                                                np.Σ(x)


                                                                                                Σ is much easier to write on paper than on computer (typical setups).



                                                                                                You'll also realize that even in the whole of Math StackExchange and LaTeX users, you'll almost never see anyone write Σ, what you'll find is either sum or Sigma :



                                                                                                sum x_i


                                                                                                That's the LaTeX notation for the mathematical notation I first mentioned.



                                                                                                Either way, what's important is the concept of sum, regardless of how long or short it's needed to write that concept. And when math can use one consise letter $Sigma$, why would it want to use sum?



                                                                                                As for variable names themselves, I agree with most other answers in this thread.






                                                                                                share|cite|improve this answer









                                                                                                $endgroup$


















                                                                                                  0












                                                                                                  $begingroup$

                                                                                                  I'd say partially because mathematical notation has much bigger vocabulary of "symbols" than source code notation.



                                                                                                  Consider the following (shortened):



                                                                                                  $$sum x_i$$



                                                                                                  You probably will write that in a programming language as:



                                                                                                  np.sum(x)


                                                                                                  Why not...?



                                                                                                  np.Σ(x)


                                                                                                  Σ is much easier to write on paper than on computer (typical setups).



                                                                                                  You'll also realize that even in the whole of Math StackExchange and LaTeX users, you'll almost never see anyone write Σ, what you'll find is either sum or Sigma :



                                                                                                  sum x_i


                                                                                                  That's the LaTeX notation for the mathematical notation I first mentioned.



                                                                                                  Either way, what's important is the concept of sum, regardless of how long or short it's needed to write that concept. And when math can use one consise letter $Sigma$, why would it want to use sum?



                                                                                                  As for variable names themselves, I agree with most other answers in this thread.






                                                                                                  share|cite|improve this answer









                                                                                                  $endgroup$
















                                                                                                    0












                                                                                                    0








                                                                                                    0





                                                                                                    $begingroup$

                                                                                                    I'd say partially because mathematical notation has much bigger vocabulary of "symbols" than source code notation.



                                                                                                    Consider the following (shortened):



                                                                                                    $$sum x_i$$



                                                                                                    You probably will write that in a programming language as:



                                                                                                    np.sum(x)


                                                                                                    Why not...?



                                                                                                    np.Σ(x)


                                                                                                    Σ is much easier to write on paper than on computer (typical setups).



                                                                                                    You'll also realize that even in the whole of Math StackExchange and LaTeX users, you'll almost never see anyone write Σ, what you'll find is either sum or Sigma :



                                                                                                    sum x_i


                                                                                                    That's the LaTeX notation for the mathematical notation I first mentioned.



                                                                                                    Either way, what's important is the concept of sum, regardless of how long or short it's needed to write that concept. And when math can use one consise letter $Sigma$, why would it want to use sum?



                                                                                                    As for variable names themselves, I agree with most other answers in this thread.






                                                                                                    share|cite|improve this answer









                                                                                                    $endgroup$



                                                                                                    I'd say partially because mathematical notation has much bigger vocabulary of "symbols" than source code notation.



                                                                                                    Consider the following (shortened):



                                                                                                    $$sum x_i$$



                                                                                                    You probably will write that in a programming language as:



                                                                                                    np.sum(x)


                                                                                                    Why not...?



                                                                                                    np.Σ(x)


                                                                                                    Σ is much easier to write on paper than on computer (typical setups).



                                                                                                    You'll also realize that even in the whole of Math StackExchange and LaTeX users, you'll almost never see anyone write Σ, what you'll find is either sum or Sigma :



                                                                                                    sum x_i


                                                                                                    That's the LaTeX notation for the mathematical notation I first mentioned.



                                                                                                    Either way, what's important is the concept of sum, regardless of how long or short it's needed to write that concept. And when math can use one consise letter $Sigma$, why would it want to use sum?



                                                                                                    As for variable names themselves, I agree with most other answers in this thread.







                                                                                                    share|cite|improve this answer












                                                                                                    share|cite|improve this answer



                                                                                                    share|cite|improve this answer










                                                                                                    answered Feb 16 '18 at 8:04









                                                                                                    Hendy IrawanHendy Irawan

                                                                                                    1012




                                                                                                    1012























                                                                                                        0












                                                                                                        $begingroup$

                                                                                                        If I'm doing a piece of maths, I want to fit as much of it as possible on a single sheet of paper so I can see it all at once. Maths is hard enough without having to root through pages and pages to remind myself whether the inequality I'm about to use had $le$ or $<$ in it.



                                                                                                        I've often wondered whether this as why people who are good at maths often have tiny handwriting.






                                                                                                        share|cite|improve this answer









                                                                                                        $endgroup$


















                                                                                                          0












                                                                                                          $begingroup$

                                                                                                          If I'm doing a piece of maths, I want to fit as much of it as possible on a single sheet of paper so I can see it all at once. Maths is hard enough without having to root through pages and pages to remind myself whether the inequality I'm about to use had $le$ or $<$ in it.



                                                                                                          I've often wondered whether this as why people who are good at maths often have tiny handwriting.






                                                                                                          share|cite|improve this answer









                                                                                                          $endgroup$
















                                                                                                            0












                                                                                                            0








                                                                                                            0





                                                                                                            $begingroup$

                                                                                                            If I'm doing a piece of maths, I want to fit as much of it as possible on a single sheet of paper so I can see it all at once. Maths is hard enough without having to root through pages and pages to remind myself whether the inequality I'm about to use had $le$ or $<$ in it.



                                                                                                            I've often wondered whether this as why people who are good at maths often have tiny handwriting.






                                                                                                            share|cite|improve this answer









                                                                                                            $endgroup$



                                                                                                            If I'm doing a piece of maths, I want to fit as much of it as possible on a single sheet of paper so I can see it all at once. Maths is hard enough without having to root through pages and pages to remind myself whether the inequality I'm about to use had $le$ or $<$ in it.



                                                                                                            I've often wondered whether this as why people who are good at maths often have tiny handwriting.







                                                                                                            share|cite|improve this answer












                                                                                                            share|cite|improve this answer



                                                                                                            share|cite|improve this answer










                                                                                                            answered Dec 6 '18 at 3:40









                                                                                                            timtfjtimtfj

                                                                                                            1,658318




                                                                                                            1,658318















                                                                                                                Popular posts from this blog

                                                                                                                Probability when a professor distributes a quiz and homework assignment to a class of n students.

                                                                                                                Aardman Animations

                                                                                                                Are they similar matrix