5
$\begingroup$

One of the first things you learn in a programming 101 course is to write readable code, and to name your variables properly. This notion has seemingly never translated into mathematics. Everywhere you look, there are one letter constants, variables and functions, and an abundance of hard to remember symbols for operators, crammed together into tight, linearly laid out expressions. Characters are often borrowed from Greek, being short of Latin ones.

As soon as you get into college-level mathematics, any non-trivial mathematical expression starts to look like signal noise that programmers would instantly ridicule if it were a programming language.

Was there ever a movement to make mathematics more readable? Is being so succinct really worth it? Does it get better with enough experience? Would using memorable names for mathematical symbols and operators have any downside aside from length? Would a neatly indented, airier layout/syntax for expressions?

I'm not trying to stir up an argument, I'm genuinely curious, having been frustrated by this for a long time, and I'd be keen to hear what actual mathematicians think about this.

$\endgroup$
21
  • 5
    $\begingroup$ Specific examples might help your question. $\endgroup$
    – user1504
    Commented Jun 16, 2020 at 13:59
  • 17
    $\begingroup$ Often in math variables don't actually have any practical meaning. I don't think it will help to state the Baker-Campbell-Hausdorff formula as $\operatorname{LogOfProdOfExps}(\operatorname{FirstLieAlgElem}, \operatorname{SecondLieAlgElem} ) = \operatorname{FirstLieAlgElem} + \operatorname{SecondLieAlgElem}.+ \frac{1}{2} \operatorname{Commutator} (\operatorname{FirstLieAlgElem}, \operatorname{SecondLieAlgElem} ) + \dots$ or a less intentionally-unnecessarily-wordy example along the same lines. $\endgroup$
    – Will Sawin
    Commented Jun 16, 2020 at 14:14
  • 8
    $\begingroup$ What @WillSawin said. Keep in mind that mathematics is often done on paper, where there is no tab-completion. $\endgroup$ Commented Jun 16, 2020 at 14:20
  • 7
    $\begingroup$ I'd be sympathetic to this question if it were phrased more neutrally. If you're not trying to stir up an argument, then the words "crammed", "ridicule" and "really" are tendentious. Similarly, if you're asking a question of mathematicians, it would help to say that symbols are hard to remember for you, and that the expressions look like symbol noise to you. $\endgroup$
    – user44143
    Commented Jun 16, 2020 at 15:29
  • 7
    $\begingroup$ I think mathematical formulas are much easier (for humans) to grasp and read than programming code. Indeed, mathematical formulas are written for humans, whereas programming code is written for computers. $\endgroup$ Commented Jun 16, 2020 at 15:50

1 Answer 1

5
$\begingroup$

Mathematics uses very few variable names in any proof compared to the number of variable names occuring in typical programming languages. Variable names survive only for short passages, except for a small (less than a dozen) global variables. The names are subject to a host of conventions (for example, $\varepsilon$ is a small number, $N$ is a large number) which are not found in programming languages. More distinct symbols are available, as we are not constrained to use ASCII. Try to rewrite a serious piece of mathematics in the style of a programming language, and you will quickly see that it is unreadable.

$\endgroup$
4
  • $\begingroup$ We are not constrained to use ASCII, but, as Halmos pointed out (not in these terms), we don't take nearly enough advantage of the full spread afforded to us by Unicode—a lot of Greek, a bit of Hebrew, and the most horrible abuse of diacritics …. $\endgroup$
    – LSpice
    Commented Jun 16, 2020 at 14:25
  • $\begingroup$ Programming languages have plenty of conventions for variable names, e.g. web.mst.edu/~cpp/common/hungarian.html and wiki.eclipse.org/Recommenders/… $\endgroup$
    – user44143
    Commented Jun 16, 2020 at 15:15
  • $\begingroup$ Is it really the case that the typical computer program needs more variables than the typical mathematical text? $\endgroup$ Commented Jun 16, 2020 at 17:27
  • $\begingroup$ Maths symbols (and vocabulary) are a compromise between rigor and readability, and generally it works from the concept of relevant non-trivial example (ie. easy to generalize), the latter is what unfortunately many people forget : without relevant examples most theorems/proofs are just abstract nonsense. $\endgroup$
    – reuns
    Commented Jun 16, 2020 at 19:00

Not the answer you're looking for? Browse other questions tagged .