10 ms·
Its still not stiff enough. Mathematicians really ought to settle on a sound and coordinated syntax
by leetcodesucks 3y ago
Its still not stiff enough. Mathematicians really ought to settle on a sound and coordinated syntax
- eru 3y agoSyntax is about the least of people's worries when they worry about 'mathematical rigor'. Math is made for people to read and write, and they have different 'domain specific languages' for different parts of math. Now what would be useful is a tool, perhaps something like a large language model, to automatically translate from the notation used in one area of math into another. That can't be a fully mechanical procedure (hence the need for something flexible like an LLM), because it's part and parcel of human mathematics to abuse notation here and there in the name of ergonomics. My personal pet peeve is defining a function like f(x) := x + 3, and then treating f(x) as the name of the function, instead of just f. But really, it's just a harmless abuse of notation when done by some humans to other humans.
- salutis 3y agoI do not think mixing up 'f(x)' and 'f' is harmless, given mathematics is all about clarity. In any quality text, 'f(x)' denotes the value of 'f' at 'x', and 'f' denotes the function 'f' itself. Also, speaking of notation, I wonder why you used ':=' instead of '=' to define 'f'. There is no computation going on, right?
- eru 3y agoMixing up 'f' and 'f(x)' is mostly harmless in practice. The underlying principles are still clear enough. (And I say that as someone who would _really_ like to make that argument that people who mess this up are somehow unclear in their thinking. No, they are mostly fine. Getting 'f' vs 'f(x)' right mostly is really important for programmers who deal with higher order functions in general all the time. Most mathematicians don't fall into that category. You could say calculus deals with higher order functions, like the derivative. And that's a valid way to look at it. But most people get by just fine using special purpose notation for the derivative and not thinking about it as a function just like 'f'.) I used := to emphasis that I am defining 'f' here, not just writing down any old equation. (Eg like like in the example "Find all functions f such that f(x + 1) = x * f (x).") Though if you wanted to be pedantic about notation, I could have written that as with the x on the other side of the :=, like f := \x -> x + 3 (for Haskell inspired notation) or f := (x |-> x + 3) where |-> means the little arrow I draw by hand to denote a mapping when I'm writing math on a chalk board or piece of paper. I'm not sure why := would denote a computation? At most you might want to use it to denote an assignment in a mutable context?
- xeonmc 3y ago> Getting 'f' vs 'f(x)' right mostly is really important for programmers who deal with higher order functions in general all the time. Most mathematicians don't fall into that category. Operators and functionals?
- eru 3y agoIt's usually clear from context what you mean, even if you work with operators and functionals.
- bheadmaster 3y ago> Getting 'f' vs 'f(x)' right mostly is important for programmers who deal with higher order functions in general all the time. Most mathematicians don't fall into that category Mathematicians deal with higher order functions all the time, e.g. in functional analysis.
- deleted 3y ago[deleted]
- mbork_pl 3y agoThe amount of "cheating" (as in, notation/language abuse) in functional analysis is much worse than that. People routinely call points in L^2[0,1] "functions"... OTOH, I don't think it leads to serious problems. OTOH, the lack of rigor is definitely one of the problems of contemporary math. Many years ago, when I was a student, I studied one paper, coauthored by 2 people - call them X and Y. X was a very established mathematician, Y was a relative newcomer. There was one (set-theoretical) argument I couldn't understand, so I asked Y (he was my advisor's friend) about it. He told me "yeah, X asked me this, too, and I told him to use Zorn's lemma, and after a moment of thinking, he said, «yeah, that would work»". I'm not set theorist myself, but it smelled suspicious to me, so I asked another friend, who knew much more about set theory than me. He smiled and said "of course it's wrong, it's a very common mistake". Had X and Y written out the argument more rigorously, we'd have one less published result with no correct proof... And I have quite a few other anecdotes like this, unfortunately. One professor at my former faculty once told how he approaches refereeing papers. "For the first 30 minutes, I try to prove the main result myself. If I don't succeed, I spend the next 30 minutes trying to find a counterexample. This way I write most reviews in half an hour." A few years ago I coauthored a book about non-linear analysis. Quite a few quite interesting topics. One of the coauthors insisted on writing out proofs in detail and rigorously, and now we joke that our book is the first one where some (quite established and known in this field) theorems are proved correctly for the first time. (And that includes proofs with gaps/mistakes in both research papers and monographs, btw.)
- red_trumpet 3y ago> Also, speaking of notation, I wonder why you used ':=' instead of '=' to define 'f'. There is no computation going on, right? In math, := is typically used to denote a definition. Using equality (=) only makes sense if both sides of the equality sign already have a definition.
- chasd00 3y ago> In math, := is typically used to denote a definition. i mentioned this up-thread but is that why := is assignment in Pascal? Wasn't Pascal the main academic language there for a while?
- red_trumpet 3y agoYeah, I think that has the same origin. Though I'm not sure if programming languages or maths came first. Apparently, for programming languages it appeared first in ALGOL in 1958[1]. Edit: On math.SE[2] someone claims that it's notation borrowed form programming. Someone else claims that it was introduced by Bourbaki, which might predate programming, as Bourbaki started publishing in the 1930s. However, I couldn't find any evidence of this from skimming a few Bourbaki PDFs. [1] https://en.wikipedia.org/wiki/Assignment_(computer_science) https://en.wikipedia.org/wiki/Assignment_(computer_science) [2] https://math.stackexchange.com/a/25215/312406 https://math.stackexchange.com/a/25215/312406
- eru 3y agoWell, to be fair, = is also very often used for definitions. And the reader has to figure out from context which meaning of = applies.
- chasd00 3y agoI agree but i'm by no means even remotely an expert. Mixing up f and f(x) seems pretty bad to me. f = y+3 makes sense f(x) = y+3 does not make sense (at least to me), f(y) = y+3 makes sense however. f(x) is a function of x correct? It's articulated as "f of x". > I wonder why you used ':=' instead of '=' to define 'f'. There is no computation going on, right? := is assignment in Pascal iirc, maybe that's where it's coming from.
- eru 3y agoSomething like 'f(x) = y + 3' can make perfect sense, depending on context. For example, that could describe a constant function that doesn't depend on x, and y is a free variable that gets its value from context. Or y could implicitly be a function of x. That happens a lot in calculus or physics.
- atoav 3y agoWhile I agree with the point you make, I think that syntax has a huge impact. Maybe not on mathematicians themselves, but I am certain that mathematical syntax has done more to scare people away from the field than the actual mathematical problems themselves. For example the convention to use the greek alphabet for certain things. This is totally arbitrary and you could have also used emoticons instead (had they existed). But what this means is that the pupil, before tackling the meat of the mathematical problem has to accept that weird looking letter they have never seen for no real reason whatsoever. And I say that as someone who can fluently read the greek alphabet.
- 4gotunameagain 3y agoIt is not arbitrary, it is heritage. Apart from the fact that Greek was the de facto scientific language of the west (which is no longer the case), I think we can agree that the characters of a single alphabet are not enough for notation, especially given the fact that it is very useful to be able to discern different types of entities, e.g. constants from variables or vectors from matrices. If we changed symbols now, it would create an even bigger mess. Because the people that learn the new symbols, could not read any textbook published before 0 A.D. (Anno Discombobuli)
- atoav 3y agoSo you read my comment and thought: "That guy who can read the greek alphabet doesn't know there are historical roots for greek letters in mathematical notation". Sure, back then when everybody who learned trigonometry had a classical education with ancient greek picking greek letters when the latin alphabet wouldn't do was a rational decision. It just hasn't aged well.
- 4gotunameagain 3y agoI'm just saying that changing the symbols will make things worse, not better. Virtually all the textbooks use those symbols. Do you have a viable and better alternative to suggest or are you just complaining? And I didn't assume that you know or don't know something, I just wrote it down for the sake of the argument. We are not having a private conversation, we are contributing to a public discussion.
- eigenket 3y agoSyntax and notation is an incredibly minor "problem". We have much more significant (and interesting) stuff to deal with. Judging maths on its syntax is like judging a poem or work of literature on its font. It really isn't a central thing.