LL Parsing과 반대로, right derivation에서 작동하며, 반대로 작동한다. 따라서 production이 아니라, reduction을 하는 것이다.
Left factoring과 left-recursive 제거가 필요 없다.
e.g. input: id*id
CFG:
initial state: | id * id
action: shift, state: id| * id, stack:[id]
action: Reduce by F->id, state: F| * id, stack:[F]
action: shift, state: F * |id, stack:[F, *]
action: shift, state: F * id|, stack:[F, *, id]
action: Reduce by F->id, state: F * F|, stack:[F, *, F]
action: Reduce by T->F, state: F * T|, stack:[F, *, T]
action: Reduce by T->F*T, state: T|, stack:[T]
action: Reduce by E->T, state: E|, stack:[E]
ACCEPTED
LR Parser에서는 2가지 충돌이 발생할 수 있다.