For me the problem is that math papers/articles lack a proper API documentation. By that I mean that it's very hard for me to understand what a lot of symbols mean because mathematicians (and physicians) love to use single letters to name various concepts and functions.
Worse, they also like to use the same symbol to denote different things in different fields. I'm sure it's extremely convenient to have a shorthand when working and sharing "code" with some peers in the know but for stuff like wikipedia articles it makes things appear more complex and obscure than they should.
I don't mind if people call a local function variable "n" in some code, it's usually non ambiguous. But if you export a variable "n" in an external API you will be screamed at. Why is it ok for maths?
To give a quick example, the letter R in maths can mean the set of real numbers. It can also (with a different typeface!) mean Ramanujan summation. Oh wait, you're doing physics? Then R is the gas constant, silly.
Also, i is the imaginary unit. Except in physics, then it's j, because i is used for currents. Makes sense.
I agree. To clarify, its not that the reader gets confused between the gas constant and the set of real numbers. The issue is never actually explicitly stating "R represents the set of real numbers" or "n is a natural number".
At uni it once took me hours to work out that "." was used for function application in one particular paper. "." was also used for multiplication and (in some example code) had the usual object oriented meaning in the same paper. It was incredibly frustrating.
> The issue is never actually explicitly stating "R represents the set of real numbers" or "n is a natural number".
It's at the start of like... every book ever. Pretty much any book on mathematics will start off with a fairly in-depth list of symbols.
It's the math equivalent of expecting you know what a 'while' loop is when you go reading through the documentation for a library (reading a paper) - basic programming literacy is assumed.
Yep, it's also a good practice for programming. Describe every single-letter variable in the README, which everyone obviously reads and memorizes before diving into the code. I still do this as a throwback to the days when we wrote code on parchment that cost a week's wages per square cubit.
You realize that there are fairly standard single letter variables in programming, for which people are supposed to understand the type of the object, right?
I see a lot of 'n' for a number, 'i', 'j', 'k' for loop indexes, 'a' and 'b' for the variables in a swap function, 'f' and 'g' for various things involving function composition.
The case of knowing what a capital pi or sigma means, however, is much more like knowing what a "while" loop is.
This makes me realise the potential that a supposed "Math API" has. Mathematical functions described visually, with unambiguous terms, and even properly named variables so they can be implemented even if you don't understand how they function entirely.
I would love to see a wiki style website that aims to produce such a wealth of information.
Worse, they also like to use the same symbol to denote different things in different fields. I'm sure it's extremely convenient to have a shorthand when working and sharing "code" with some peers in the know but for stuff like wikipedia articles it makes things appear more complex and obscure than they should.
I don't mind if people call a local function variable "n" in some code, it's usually non ambiguous. But if you export a variable "n" in an external API you will be screamed at. Why is it ok for maths?
To give a quick example, the letter R in maths can mean the set of real numbers. It can also (with a different typeface!) mean Ramanujan summation. Oh wait, you're doing physics? Then R is the gas constant, silly.
Also, i is the imaginary unit. Except in physics, then it's j, because i is used for currents. Makes sense.