R * выражение NFA - PullRequest
       11

R * выражение NFA

1 голос
/ 21 октября 2011

Я нашел это изображение, которое представляет r * выражение NFA.Мой вопрос: не должно быть стрелки, связывающей второй узел с третьим узлом?Таким образом, если у меня есть строка «rr», когда читается первый символ, я попадаю во второй узел, но оттуда никуда не денусь, потому что нет исходящих стрелок.http://imageshack.us/f/641/screenshot20111021at114.png/

1 Ответ

1 голос
/ 21 октября 2011

Связанное изображение подразумевает пару предположений.

  • Стрелки, помеченные буквой «E», означают «эпсилон-переход», изменяющееся состояние, которое не изменяет текущий символ.следующая стрелка не «потребляет никакого ввода»
  • Под прямоугольной областью, помеченной буквой «R», подразумевается «Автомат, принимающий R ».если вы достигнете начального состояния в этой области (второй кружок слева на изображении), область в штучной упаковке примет R для произвольного подъязыка. R используется как переменная, так же как и в базовом регулярном выражении <em>R</em><strong>*</strong>.Мы не видим стрелок между начальным и конечным состояниями, потому что мы не определяем, что означает R ;это переменная, мы можем использовать что угодно.
...