Я хочу преобразовать введенное пользователем регулярное выражение в NFA, чтобы потом можно было запускать NFA для строки для сопоставления. Какой минимальный компьютер можно использовать для разбора регулярных выражений?
Я предполагаю, что это должен быть автомат с принудительной передачей, потому что наличие скобок означает необходимость подсчета, а DFA / NFA не может выполнить произвольный подсчет. Это предположение верно? Например, для выражения a (bc *) d потребуется PDA, чтобы подвыражение в скобках обрабатывалось правильно.