2

I am exploring some new research fields in CS from my unrelated field in math.

Many papers I have stumped upon during research seem to completely ignore the fact that notation and symbols have meanings. Coming from math, this is a bit unsettling to me.

I hate to provide example, but here is one. In equation 1, some magical capital letters are used as functions, but never defined. No references are provided either. Here is another one. Virtually all the symbols which are supposed to mean something in math are not provided with any definition.

I've encountered a whole string (dozens) of these papers in a row.

Is this a common practice in CS? Or perhaps due to page limit? Can anyone explain what I am seeing?

  • 7
    In the first example, the functions are defined. T^\pi is the Bellman operator; read further. This is consistent with other papers on this topic area. In my experience, I have not encountered what you are seeing. Maybe I'm from the area, so I don't need the definition of standard notations. I'm sure when someone without a math background venture into your area, they will query the meaning of standard notations; e.g., integral, sum, etc :) – Prof. Santa Claus Sep 22 '18 at 6:31
  • @Prof.SantaClaus I have to some what agree, for example, arxiv.org/pdf/1801.05914.pdf, the symbol \Gamma is not defined. However, I find that unlike CS, in math, the notations are followed consistently not just between researchers, but across the field, or even across different levels of education from university to k12. In this case, even though \Gamma is not defined, I intuitively knew that it denoted the \Gamma function. So I guess the issue may be that CS is younger. But then there is more of a risk of serious misinterpretation. And what benefits do undefined symbols bring? – Olórin Sep 22 '18 at 6:52
  • 3
    If the definitions really are well known, then omitting them saves space (in case of page limits, which are more common in CS than in math). It also means that a reader doesn't have to wade through pages of definitions she already knows in order to find the new material, which can be very tedious and annoying, and possibly damage her opinion of the paper. – Nate Eldredge Sep 22 '18 at 14:23
  • Sloppiness of course. If you were a reviewer for such an article, you could point it out and they would apologize and add the definition. I do it all the time. Reviewers get sloppy too, skimming past the early formulation if it is familiar, and only analyzing the novel steps (and many clearly never check the math at all). – A Simple Algorithm Sep 22 '18 at 18:40
  • The opening to section 1.1 reads "The most popular and widely used... comprised of a set of states S, a set of (possibly state-dependent) actions A (A_s), a dynamical system model comprised of the transition probabilities P^a_{ss'} specifying the probability of transition to state s' from state s under action a, and a reward model R. A policy π : S → A is a deterministic mapping from states to actions. Associated with each policy π is a value function V^π, which is a fixed point of the Bellman equation." – Stella Biderman Sep 27 '18 at 15:39
3

In the case of the first paper, the meaning of these equations are well-known within the subfield of reinforcement learning. (See Barto and Sutton's book for background.)

For instance, V is usually a value function which is the expected reward from following a policy π to termination. (The Q function - the value of taking an action from a state is also often used without full definition as well.)

I can't speak about CS as a whole, but in subfields like reinforcement learning, this is somewhat common. Personally, I find myself getting more and more formal the older I get. But, CS doesn't demand the same rigor as might be found in mathematics, so people get used to not providing it - and don't demand it of their graduate students.

  • Even if T is well known, what is the definition of P, or R, their domain, range, etc? It seems to me that we are excusing poorly written or loose math here by simply deeming them to be "well known". This raises a further question, do all these reinforcement/machine learning researchers use the same notation? I fear not. – Olórin Sep 22 '18 at 6:36
  • Barto and Sutton's book has been a seminal book in the field, and that's the terminology that has been followed for the most part. Although there are variances, they are usually close enough that one can jump to the new notation without much difficulty. (Note: It seems the new version will be Sutton and Barto.) – Nathan S. Sep 22 '18 at 6:38
  • 2
    Funny you mentioned that book, I am going through it right now just to understand some of the notations, and I have to say that even in that textbook, the notations are awfully unclear, for example, on page 38 of incompleteideas.net/book/bookdraft2017nov5.pdf, the authors defined R_{t+1} as a real number, then immediately followed up by calling R_{t+1} a random variable. Anyways, the focus is not on that particular paper or even this subject, but rather my confusion on why this kind of practice is followed or allowed. If you say that this field is more creative, then so be it. – Olórin Sep 22 '18 at 6:40
  • 1
    I have to echo the comment above to your original question. The more time you spend in a field the more comfortable you get with the notation. I would surely be confused by notation in your field if I began to study that field. It's hard to learn new things - and easy to forget how hard it was the first time. – Nathan S. Sep 22 '18 at 6:44
  • 1
    P and R are sort-of-defined in the paragraph preceding equation (1): P represents transition probabilities and R represents rewards. The problem is that neither of these is defined with a superscript \pi that denotes a policy. As a result, I can get a general idea of the meaning of equation (1): The value of a policy (in a state) is the immediate reward plus the expected value, discounted by \gamma, of the value of the next state. (The second = in (1) just serves to define T.) But I can't give more precise information without learning about the model. – Andreas Blass Sep 23 '18 at 18:55
1

Mathematical notation tends to be more context-dependent in computer science than in mathematics. I guess the reason is cultural: computer scientists are often also programmers, and programmers routinely deal with much larger abstract systems than mathematicians.

Even a small program can have hundreds of named functions and variables. Large software systems are orders of magnitude larger. The code also evolves over time, as new concepts, functions, and variables replace old ones. There is no way one can define everything with the level of rigor a mathematician would expect.

Instead, the code is expected to be self-documenting. Function/variable names are often already sufficiently informative that further definitions are unnecessary, especially if you already understand the context. The structure of the code and the patterns in it give further hints that can help to understand it. Difficult/confusing places may have comments that clarify them, and high-level concepts are usually documented.

If a computer scientist can't read code, their career options are severely limited. Reading code is a basic skill every CS graduate should have, just like every mathematics graduate should be able to read mathematical proofs. And because the target audience is familiar with context-dependent notation, computer scientists often use it in their research papers. They may even find it easier to understand than mathematical rigor.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.