[1] The theoretical foundation was provided in a 1974 paper[2] by Bernard Lang (along with other general context-free parsers such as GLL).
It describes a systematic way to produce such algorithms, and provides uniform results regarding correctness proofs, complexity with respect to grammar classes, and optimization techniques.
The first actual implementation of GLR was described in a 1984 paper by Masaru Tomita, it has also been referred to as a "parallel parser".
As shown by an earlier publication,[4] Lang was primarily interested in more easily used and more flexible parsers for extensible programming languages.
If any given top state and input token do not result in at least one transition, then that "path" through the parse tables is invalid and can be discarded.