Давненько я работал с CFG. В любом случае, у меня есть определенная грамматика, которая правильно выполняет все операции, но в конце (я исключил другие стандартные математические операции).
S :: = S + T | S-T | T
T :: = нетерминал | ID | -S | (S)
за все, что у меня есть .. Я знаю, что -S должно быть -T. Но дополнительно .. что это делает с приоритетом. Это двусмысленно? Математически я могу, это, очевидно, не будет правильно ... но это не должно иметь значения в вопросе двусмысленности.
Если бы это был -T, имел бы такой же приоритет, как (S)?
действительно пытается понять, как это происходит, когда он возвращается к состоянию «Старт».