3622
правки
Изменения
→FIRST и FOLLOW
Ключевую роль в построении парсеров для LL(1)-грамматик играю множества <tex> \mathrm{FIRST} </tex> и <tex> \mathrm{FOLLOW} </tex>.
Пусть <tex> c </tex> {{---}} символ из алфавита <tex> \Sigma </tex>, <tex> \alpha,\ \beta </tex> {{---}} строки из нетерминалов и терминалов (возможно пустые), <tex> S,\ A </tex> {{---}} нетерминалы грамматики (начальный и произвольный соответственно), <tex> \$ </tex> {{---}} символ окончания слова. Также будем считать, что в грамматике нет [[Удаление бесполезных символов из грамматики | недостижимых правил]]. Тогда определим <tex> \mathrm{FIRST} </tex> и <tex> \mathrm{FOLLOW} </tex> следующим образом:
{{Определение
|id=deffirst