Рисование простого недетерминированного конечного автомата (NFA)

Как я могу нарисовать NFA (автомат) для этого вопроса?

Сначала следует принять:

  • алфавит = х, у, г

  • L= { w | w такой, что одно из числа вхождений x,y,z кратно трем. }

Например: {xxx, yyy, zzz, xyxyzzz, xyxyx, zyzyz...}

1 ответ

Сначала давайте начнем с более простого вопроса:
Как бы вы нарисовали этот автомат для L '= {an | n% 3 == 0}?

Вы бы нарисовали автомат с 3 состояниями - по одному для каждого возможного модуля, и итерировали бы между ними для каждого появления a, Принимающее государство будет тем, которое обозначено для 0,

Теперь, установив это - для вашей задачи вам нужно иметь 33 состояния для вашего автомата - все возможные кортежи для (x,y,z) где x,y,z находятся в {0,1,2}.

Теперь ваша цель - понять, какой будет ваша лямда? Поскольку это ваша домашняя работа, я не буду давать полный ответ, только подсказка:

Если ты видишь x и ты в состоянии (a,b,c) - Вы хотите продвинуться к (a+1 %3 ,b,c)

Также подумайте - что это за принимающие государства? подсказка: какое было принимающее государство для упрощенного L'?

приложение: автомат для L' как описано выше.

L 'автомат

Другие вопросы по тегам