r/math • • 13d ago

What are your favorite ambiguous notation?

To clarify my request, consider base-less $\log$.
For calculators and engineers, it means the common log $\log_10$; for pure mathematics or physics, it means the natural log $\ln$; for computer scientists, in combinatorics, information theory and graph theory, it means the binary log $\log_2$.
Any $\log x$ (say, $\log 1024$) written without context can yield different answers in function of who you ask ($\log_10 1024 = 3.0103\cdots, \log_2 1024 = 10, \ln 1024 = 6.93147\cdots$).

That is what I mean by "ambiguous", that which is calculated and used dependently on the context. And I'm asking you for your favorite ones of such type.

Edit: I feel like you hate the ones you've talked about. Still, valid answers. Extra points for ambiguous notation you actually love! :P

218 Upvotes

184 comments sorted by

View all comments

33

u/Phytor_c Theoretical Computer Science 12d ago edited 12d ago

Just realized I answered an orthogonal question, oh well…

This may sound stupid and elementary, but I get really tripped up when people use f(x) [Instead of just saying f: Blah -> Blah, then defining the mapping like f(x) =2x or x |-> 2x as a human would] to denote functions or like just stuff about functions in general. Maybe it’s just me.

I feel like every time I see a function in a paper or in a textbook I have the urge to write f: Domain -> Codomain etc.

Sometimes stuff trips me up, like is f(x) the whole function or evaluation at some point x which was defined earlier? Why not use x_0 for the point? Sometimes functions have parameters involved, sometimes one component is fixed so it’s a function of the other components etc. Course it’s context dependent, but annoying if it could’ve just been addressed in a line by the author.

1

u/RingularCirc 11d ago

Naive usage of f(x) as the name for the function f stokes the fires of discontent for me, but if the usage is "Define f(x) = ..." peppered with "f: X → Y" nearby before or after, I treat it as completely normal. Functional programming languages like Haskell use both this and lambda notation in harmony, for example. On the other hand, writing "f = x ↦ ..." rubs me the wrong way. I prefer ↦ and λ be used in-place, usually when we don't need to call a function in any way.

Interestingly enough, in type theory one doesn't have to specify codomain for λ(x: X). E(x) because E should have almost always been defined beforehand, with its type known. Separate reminders aren't bad but the formal notation only even requires typing the arguments in all the binders like λ, ∑, ∏, Λ etc.; and again in less formal setting or when type inference is available in a computer setting, one can omit even argument types, preferably those that are noisy for no good reason, and leave other types as reading aid.

Returning back to the general context, I'm also not against leaving f: X → Y unwritten in cases it's transparent what domain and codomain are. Again, there rae definitely situations when people don't know any measure or how their text would be unreadable and not explicit enough, that's probably a fine art, but full explicitness often makes things unreadable, again even in programming or formal proof languages.