Учебники

Детерминированный конечный автомат

Конечный автомат можно разделить на два типа —

  • Детерминированный конечный автомат (DFA)
  • Недетерминированный конечный автомат (NDFA / NFA)

Детерминированный конечный автомат (DFA)

В DFA для каждого входного символа можно определить состояние, в которое машина перейдет. Следовательно, это называется Детерминированный Автомат . Поскольку оно имеет конечное число состояний, машина называется « Детерминированный конечный автомат» или « Детерминированный конечный автомат».

Формальное определение DFA

DFA может быть представлен 5-кортежем (Q, ∑, δ, q 0 , F), где —

  • Q — конечное множество состояний.

  • — это конечный набор символов, называемый алфавитом.

  • δ — функция перехода, где δ: Q × ∑ → Q

  • q 0 — начальное состояние, из которого обрабатывается любой вход (q 0 ∈ Q).

  • F — множество конечных состояний / состояний Q (F ⊆ Q).

Q — конечное множество состояний.

— это конечный набор символов, называемый алфавитом.

δ — функция перехода, где δ: Q × ∑ → Q

q 0 — начальное состояние, из которого обрабатывается любой вход (q 0 ∈ Q).

F — множество конечных состояний / состояний Q (F ⊆ Q).

Графическое представление DFA

DFA представлен орграфами, которые называются диаграммой состояний .

  • Вершины представляют состояния.
  • Дуги, помеченные входным алфавитом, показывают переходы.
  • Начальное состояние обозначается пустой единственной входящей дугой.
  • Конечное состояние обозначено двойными кружками.

пример

Пусть детерминированный конечный автомат будет →

  • Q = {a, b, c},
  • ∑ = {0, 1},
  • q 0 = {а},
  • F = {c} и

Функция перехода δ, как показано в следующей таблице —

Современное состояние Следующее состояние для ввода 0 Следующее состояние для ввода 1
б
б с
с б с

Его графическое представление будет следующим: