Я пытаюсь удалить левое отречение из грамматики, и я могу сделать это.Я, очевидно, не знаю правил, потому что я знаю, как это сделать методом проб и ошибок.Правила, которые я вижу, таковы: Правила, которые я нашел в Википедии
S --> SX | SSb | XS | a
X --> Xb | Sa | b
Итак, я знаю, что в этом конкретном примере я могу сначала удалить немедленную левую рекурсию из Sправило, а затем после этого я получаю это:
S --> XSS' | aS'
S' --> XS' | SbS' | epsilon
X --> Xb | Sa | b
Затем, отсюда я могу объединить производство S с производством X, чтобы получить:
X --> Xb | XSS' | aS'a | b
и затем я могу удалить немедленнооставил рекурсию оттуда, чтобы получить мой окончательный ответ.НО, может кто-нибудь объяснить мне правила, потому что я не следовал им, чтобы прийти к своему окончательному ответу.Мне вроде повезло.Мне нужно знать, как удалить левую рекурсию из любой данной грамматики.Любая помощь будет принята с благодарностью.Спасибо.