6 ms·
> δ, Ω why not just use like... `N` or `K`, or like... words lol why do we still use greek letters for variable names? Why make this arbitrarily more difficult
by insanitybit 3y ago
> δ, Ω
why not just use like... `N` or `K`, or like... words lol why do we still use greek letters for variable names? Why make this arbitrarily more difficult for me, a programmer who might actually be interested in implementing this data structure?
Anyway I hate to be That Guy but I'm about to read the paper and I just immediately see "symbol I don't know the name of, is that important to know?".
- ndriscoll 3y agoΩ(...) is a standard notation in complexity theory (related to O(...) notation). The meanings of the symbols there are subtle and if you don't already know them, words aren't going to cut it. δ is also typical (though not "standard") for "small difference". Using conventional symbols makes it easier for people to track what they mean. You don't have to spend brain energy finding and remembering what the author said K means. Every letter in Greek and English already have multiple conventional meanings that could appear in the same papers as it is. It's just a crowded space that benefits from having more symbols. And using words instead of symbols for everything would make most expressions illegible.
- ot 3y ago> δ is also typical (though not "standard") for "small difference" No, that's epsilon. In this area, delta is usually a probability. Epsilon-delta statements are usually of the time "error > epsilon with probability < delta"
- ndriscoll 3y agoEpsilon and delta both often represent small changes. Epsilon typically represents an "error" size. Very often, when they appear together, delta is a small change in the input of something, and epsilon is the corresponding change in the output. So e.g. in lots of analysis proofs, you want an output error less than epsilon, and must figure out the required bound on delta to achieve that. Maybe there's a way in which your sense is an example of the above sense, but it's too early for me to think about that. In any case, in your sense, typically delta is implicitly meant to be thought of as small. Anyway, point is mathematics is a language. Like all languages, it's inseparable from its culture. The symbols often carry conventional meaning and aren't purely formal/arbitrary. This helps the speakers of that language communicate more efficiently, but it means outsiders need to learn the culture too in order to properly understand "native" level speakers. And like other languages, many parts of written mathematics just don't translate correctly to another language.
- ot 3y ago> Anyway, point is mathematics is a language. Yes, and like any language there is context-dependence. In calculus you're right, epsilon and delta are usually small variations (for example in the definition of a limit). In randomized algorithms, if you say epsilon-delta anybody will immediately associate delta with an error probability.
- insanitybit 3y ago> Ω(...) is a standard notation in complexity theory (related to O(...) notation) Yeah that sucks. All of what you're saying is true and sucks. > You don't have to spend brain energy finding and remembering what the author said K means. I don't believe this is true, I believe it is the opposite. A small group of people, people who are often not the ones building the libraries from this research, know what these symbols are likely to mean. Adding a simple glossary at the top of what 'Ω' means, etc, would help. > Every letter in Greek and English already have multiple conventional meanings that could appear in the same papers as it is. Yes, that's one of the many reasons why it's a terrible practice. The same symbols can mean different things across papers.
- ndriscoll 3y agoI don't have a CS degree, but I'm pretty sure everyone who does was supposed to have learned what Ω means in this context. My understanding is it's standard within the field, and is a standard part of undergrad CS programs. So I'd expect that someone building libraries for data structures does understand it (or could refresh their memory). And again, with something like Ω, if you don't understand it, a glossary will not help you. It's not going to help to see "f = Ω(g) means `lim inf n->infinity f(n)/g(n) > 0`". Keep in mind this is a paper, not a tutorial on complexity theory. > Yes, that's one of the many reasons why it's a terrible practice. The same symbols can mean different things across papers. They can just like homonyms in other languages, but the meaning is usually clear from context. If you see "probabilitly 1-δ", you can expect that means "close to 100%", and probably "as close as you'd like" by tweaking some parameter that affects δ. Where there is ambiguity, the author typically spells it out. In longer works like books, authors often have an intro chapter/section where they list all of their notation even if it's completely standard with no ambiguity.
- insanitybit 3y agoI don't have a CS degree either but I know what Omega means with regards to Big O. I don't think that that should really be required and I don't see why a glossary would be a problem. Omega is used for many things across many maths. > So I'd expect that someone building libraries for data structures does understand it (or could refresh their memory). Why? It's not related to the same skillset. I can and have built data structures from papers and I don't think that memorizing the greek alphabet is a useful prerequisite. > And again, with something like Ω, if you don't understand it, a glossary will not help you. No one is asking for a wikipedia quote. Just "Ω: Referring to the asymptotic complexity bound" or something like that would be fine and provide plenty of context. > If you see "probabilitly 1-δ", you can expect that means "close to 100%" How nice for you but I can not do that.
- bruce343434 3y agoIt's like type parameters usually getting abbreviated to <T>. δ is the go-to symbol for "deviation". In this case, the deviation from 100% correctness probability. The Ω is a symbol for expressing asymptotic equivalence, see https://en.m.wikipedia.org/wiki/Big_O_notation https://en.m.wikipedia.org/wiki/Big_O_notation. These are just the arbitrary norms we have collectively settled on. If it had been other symbols, you would have complained just as much. We can write it out in words, sure, but then you get a sort of COBOL equivalent: wordy, hard to skim, annoying and inefficient to write and deal with once you have programming experience, but hey, at least it seems easy and accessible to beginners right? With any user interface, including syntax, including symbols chosen, there's gonna be a group that's going to be impeded. And we collectively settled on impeding novices in favour of empowering those with experience.
- dekhn 3y agoI recommend memorizing the greek alphabet, it's quite useful.
- mathisfun123 3y ago> Why make this arbitrarily more difficult for me, a programmer who might actually be interested in implementing this data structure? it makes absolutely zero sense to complain about a community's internally created, primarily internally consumed, language. this complaint is basically the same thing (but of course much less significant) as english-speaking tourists traveling to non-predominantly-english-speaking countries and demanding that english be spoken. if the language here doesn't speak to you directly, you are free to create your own language and culture around that language and then if your ideas are good you will develop a community that suits your needs. >Anyway I hate to be That Guy but I'm about to read the paper and I just immediately see "symbol I don't know the name of, is that important to know?". the solution is glaringly obvious: just like you shouldn't expect to read Война и миръ without first learning the russian language, you shouldn't expect to read this paper without first learning the language (i.e., math).
- Asraelite 3y ago> just like you shouldn't expect to read Война и миръ without first learning the russian language, you shouldn't expect to read this paper without first learning the language (i.e., math). With the key difference being that math is an artificial and constructed language which can be improved. Criticising it makes sense. But while there are improvements to be in math syntax, I don't think that's the main problem here and I agree that you should be expected to learn the notation of a field before being able to understand a paper. The problem is that academia has a culture of making papers needlessly complicated. If you try to use simple wording and explain things to the reader, you will get rejected by journals. They could easily structure it as something like "let δ be the probability of failure from 0 to 1, O(x) is big-O notation indicating the upper bound of the growth rate" etc. defining and explaining all the variables and notation first and only after that beginning to use them.
- kweingar 3y agoI've seen this sentiment about math notation among programmers, and I don't understand it. Lots of programmers would like mathematicians to define everything in their papers so that programmers don't have to learn math notation. At first glance this seems reasonable, but consider the reverse scenario. If I were a mathematician who didn't know much about programming, I wouldn't go into a GitHub project and ask the maintainers to add little comments to explain the syntax and functions that they're using. "Looks like you're using a function called 'fold'. I don't know what that does. Can you please write a quick explanation of what it does before you use it in your code? This is too complicated for the layman to understand." The maintainer might reply that you can look up what fold means, and that they don't have time to annotate all of their code just to spell out everything to people who don't program.
- valbaca 3y agohttps://en.wikipedia.org/wiki/Greek_letters_used_in_mathematics,_science,_and_engineering https://en.wikipedia.org/wiki/Greek_letters_used_in_mathemat... Ω represents: an asymptotic lower bound notation related to big O notation \delta represents: a variation in the calculus of variations