[Math] How to read mathematical formulas

notation

I'm coming from a programmers background, trying to learn more about physics. Immediately, I was encountered by math, but unfortunately unable to read it.

Is there a good guide available for reading mathematical notation? I know symbols like exponents, square roots, factorials, but I'm easily confused by things like sub-notation. For example, I have no idea what this is:

fn

I can easily express values using programmatic notation, ie pseudocode:

milesPerHour = 60
distanceInFeet = 100
feetPerMillisecond = ((milesPerHour * 5280) / (1e3 * 60 * 60))
durationInMilliseconds = 100 / feetPerMillisecond

However, I have no clue even where to begin when trying to express the same logic in mathematical notation.

How can I improve my ability to read and interpret mathematical formulas in notation?

Best Answer

The problem is that you cannot learn mathematical notation as though it were a programming language with a single, well-defined, fixed syntax where particular grammatical constructs always have the same meaning. It's much more like a natural language: a collection of rules and conventions, some inviolate, others less so, with lots of idioms some of which are mutually incompatible, and lots of variation between "dialects" (by which I mean, conventions within various fields). That's why you get the advice in the other answers: There is no reference manual and no formal specification. Just keep reading and writing the language and allow yourself to absorb it through practice. Here, let me give some examples to convince you.

You ask what $f_n$ means devoid of context. Well, sometimes it is the $n$th function in a sequence of functions $f_1,f_2,\ldots$. Sometimes it is the $n$th entry of an $m$-dimensional vector $\mathbf f=(f_1,f_2,\ldots,f_m)$. Sometimes it's the normal component of a force, as opposed to the tangential component which might be called $f_t$.

You might think that at least $f^n$ will always be $f$ to the $n$th power, but that's not always true either. Sometimes we put an index at the top because we're already using indices at the bottom to mean something else — so $f_i^n$ might be the value at the $i$th grid cell at time $n$. Usually $\sin^nx$ means $(\sin x)^n$ but usually $\log^n x$ means $\underbrace{\log\log\cdots\log}_{\text{$n$ times}}\, x$.

Why this apparently miserable state of affairs? Because mathematical notation is actually an extremely efficient method for communicating ideas between people, and people are, with a little bit of practice, quite adept at determining with high accuracy the intended meaning of informal, ad-hoc, underspecified, potentially ambiguous signals. When doing mathematics, we don't worry about shaping our thoughts to fit the rigid syntax of our language, like we do when programming. Instead, we freely shape the syntax to fit our thoughts. If that means it is impossible to read mathematics without knowing what it means, so be it; it only needs to be easy to parse by the intended reader, who is usually a mathematically literate human being. And said reader surely knows that the context in which $f_n$ appears is about, say, sequences of functions, in which case $f_n$ almost certainly means the $n$th function in the sequence.

See also the fourth section ("Mathematical syntax") of Jeremy Kun's essay "Why there is no Hitchhiker’s Guide to Mathematics for Programmers".

(Re. CBenni's comment: Suppose someone asks "What is the meaning of f[n] in programming?" If you're programming in the C family, it means the nth element of the array f. If you're programming in Haskell or ML, it means the function f applied to the list [n], whose only element is n. If you're programming in Mathematica, it means the function f applied to n. The meaning of $f_n$ in mathematics is similar.)

Related Question