Изменения

Перейти к: навигация, поиск

Регулярная аппроксимация КС-языков

8 байт добавлено, 20:20, 19 января 2014
Идея алгоритма
return cyclic;
Заметим, что <tex> \forall i </tex> <tex>recursive(N_i) \neq self </tex>, т.к грамматика не самоприменима.<br \>
В основе алгоритма будет рекурсивный обход грамматики во все стороны. Спускаемся по грамматике до тех пор не приходим в терминал нетерминал или символ алфавита:# символ алфавит или <tex> \varepsilon </tex> {{---}} добовляем добавляем новое правило в автомат
# нерекурсивный нетерминал {{---}} запускаемся от всех правых частей правил, который терминал порождает
# рекурсивный терминал нетерминал {{---}} в зависимости от типа рекурсивного нетерминала, продолжаем рекурсию (будет ясно из пседокода)
===Псевдокод===
50
правок

Навигация