7
$\begingroup$

I am a computer science graduate student works in theory. The general advice is to go through the paper and then in the second or third round try to understand the detail. Read the abstract, introduction and then main results(just the results). I go through research paper multiple times, each time keep record of confused things. Many time I have to spend more than a week to understand even the bigger picture. Once I have bigger picture, then it is easy for me to understand the paper quickly.

Reading is taking quite long time. I am even about to graduate but it takes me couple of weeks to read a single paper. I have to many times present research papers in front of senior researchers. So I prepare, but as I mentioned that reading is taking too much time.

Is there any better way to speedup the reading? Efficiently means getting the overall idea with less number of passes.

Question : How to efficiently read the theoretical computer science research papers ?

$\endgroup$
  • 1
    $\begingroup$ I may not be of good advice since I am also a slow reader but I found it useful to skip the intro first (or to only skim it lightly just to have a rough idea of the contributions) so that you can directly go to the "meat" of the paper. Also before I was reading the definitions to really get a good understanding of what the authors are using. Now I read the statements of the theorems and look the needed definitions. You save time because out of context definitions may be hard to parse. And maybe not needed if they are only needed in a proof that you do not really care about. $\endgroup$ – holf Oct 21 at 17:04
7
$\begingroup$

How long it takes one to read a paper typically depends on what one wants to get out of it. I'll outline three levels of granularity.

  1. Coarsest level: Relevant or not? When building up a list of potentially relevant literature, we often start with a handful of important papers, and then play the game -- who cites them? Whom do they cite? Iterating this game naively would cause an exponential explosion, so we prune the search tree. Briefly scan each candidate and classify it as relevant to my topic or not. This shouldn't take more than a few minutes.

  2. User level: I've decided the paper is relevant, but does it contain a particular result that I need? Say, some variant of Chernoff bounds for non-iid random variables? Unbounded ones? This can take a bit longer, since not all results are stated in the form I'm looking for -- but shouldn't take more than an hour.

  3. Expert level: The paper is relevant and has useful results; now I want to get an in-depth understanding and mastery of the technique. After all, this is the are I want to innovate in! This can take arbitrarily long, since it may require going down various rabbit holes of carefully reading previous results the present one relies on, and so on. No time limit here -- decide how badly you need this and settle in for the long haul.

Update, by popular demand. OK, the paper in question falls into category (3) and you're willing to devote serious time and effort into it. My first suggestion is to read the paper at the User Level, as specified in (2) above. Try first to understand what the main results are claiming, not how to prove them. Once you understand the claims, try to flesh out the proof outline. What basic strategy is being used? Is it a construction, an existence proof, etc -- try to "decompose" it into the various techniques you know. If it's an important paper, you might discover that it invents novel techniques -- make good note of these!

Sometimes short and seemingly elementary proofs are notoriously difficult to understand in an intuitive sense -- one such paper, I believe, is Haussler's "Sphere packing numbers for subsets of the Boolean n-cube with bounded Vapnik-Chervonenkis dimension". It's easy enough to follow the proofs step by step, but most beginner readers will still not be able to say much about the "big picture", even after the 2nd or 3rd reading. In such a case, it might be useful to seek out an expert (perhaps the author himself) to try to understand how he came up with the proof.

$\endgroup$
  • $\begingroup$ Thanks for the answer. I am interested in third one. The one point I have to disagree is "no time limit". There should be some time limit, the purpose of my reading to do some research, to come up with new results. $\endgroup$ – Print_lol Oct 23 at 5:13
  • 1
    $\begingroup$ @ Aryeh I don't know, how much badly I want, but let's say I want to perform research on particular research paper then is there any time limit? $\endgroup$ – Print_lol Oct 24 at 9:43
  • 1
    $\begingroup$ Obviously, I can't set one for you. Some papers can take a year or more to understand. Does your adviser/funding situation allow that? Do you have the patience and stamina? These are all personal, individual choices. $\endgroup$ – Aryeh Oct 24 at 10:33
  • 1
    $\begingroup$ and what about efficient reading of papers? $\endgroup$ – Print_lol Oct 26 at 15:05
  • 1
    $\begingroup$ I added an update, though it's very difficult to give general advice on a question where case-specific pointers will be most useful. $\endgroup$ – Aryeh Oct 26 at 18:45
2
$\begingroup$

I agree with @holf about skipping parts of the paper. Which parts you skip is a different matter. If I know nothing in the field, I skip the intro, related work, and conclusion. If I know a bit in the field, do the opposite: I skip the meat and read the intro and conclusion only.

In general, however, I would go even further: don't read the papers in the first place at all. Instead, first try to talk to the authors (if possible) and only then read the papers, if needed. My experience has been that the quality of an average paper is so low that a noninformed person is unlikely to understand what is going on. If you go for reading first, you weep and suffer exactly the way you described it and may drown in typos.

$\endgroup$

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.