Конечные автоматы и формальные языки

Определение детерминированного конечного автомата, способы его задания. Расширенные функции переходов на цепочки. Язык ДКА.

Алфавитом называется конечное непустое множество символов. Пример: бинарный алфавит Конечные автоматы и формальные языки - student2.ru = {0, 1}. Цепочкой или словом называется любая последовательность символов из некоторого алфавита. Конечные автоматы и формальные языки - student2.ru - пустая цепочка (пустое слово) не содержит ни одного символа. Конечные автоматы и формальные языки - student2.ru

Длина слова – число позиций для символов в цепочке. Пример: 01100. Символов – 2 длина – 5. Конечные автоматы и формальные языки - student2.ru - все слова в алфавите Конечные автоматы и формальные языки - student2.ru

Множество слов каждое из которых принадлежит Конечные автоматы и формальные языки - student2.ru называется языком L.

Детерминированным конечным автоматом (ДКА) называется пятерка A = (Q, Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , F)

Q – непустое конечное множество (множество состояний). Конечные автоматы и формальные языки - student2.ru - алфавит, множество входных символов. Конечные автоматы и формальные языки - student2.ru - начальное состояние. Конечные автоматы и формальные языки - student2.ru

F – множество допустимых (заключительных) состояний

Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru

Язык ДКА – множество всех его допустимых цепочек. Любой ДКА определяет язык, а именно множество всех цепочек приводящих автомат из начального состояния в одно из допускающих. Язык ДКА – множество всех меток вдоль всех маршрутов, ведущих из начального состояния в любое допускающее.

Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru

Конечные автоматы и формальные языки - student2.ru - расширенная функция переходов, Конечные автоматы и формальные языки - student2.ru

Индукция по длине слова

| w | - количество позиций в слове

| w | = 0 Конечные автоматы и формальные языки - student2.ru Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru

x – начальное слово, a – алфавитный символ, Конечные автоматы и формальные языки - student2.ru Конечные автоматы и формальные языки - student2.ru Язык ДКА A = (Q, Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , F), Конечные автоматы и формальные языки - student2.ru такие слова, которые приводят начальное состояние в конечное. Язык L называется регулярным, если L = L(A) (если совпадает с языком некоторого автомата).

Определение недетерминированного конечного автомата, способы его задания. Расширенные функции переходов на цепочки. Язык НКА.

НКА обладает свойством находиться в нескольких состояниях одновременно. Эту особенность часто представляют как свойство автомата “делать догадки” относительно его входных данных. Нужно: 1. определить НКА 2. показать, что всякий такой автомат допускает язык допустимый ДКА.

НКА допускает регулярные языки точно так же как и ДКА.

НКА автоматы строить легче, можно преобразовать в ДКА.

A = (Q, Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , F), Конечные автоматы и формальные языки - student2.ru - функция перехода

Различие ДКА и НКА состоит в типе функции Конечные автоматы и формальные языки - student2.ru .

НКА Конечные автоматы и формальные языки - student2.ru функция, аргументами которой являются состояния и элемент входного алфавита, а значениями Конечные автоматы и формальные языки - student2.ru - множество состоящее из 0,1 или нескольких состояний.

Язык НКА.НКА допускает цепочку w, если в процессе чтения этой цепочки можно выбрать хотя бы 1 последовательность переходов, так чтобы перейти из начального состояния в одно из допускающих. Тот факт, что при другом последовательности переходов по символам цепочки Конечные автоматы и формальные языки - student2.ru мы можем попасть в недопускающее состояние или вообще не попасть ни в какое, совсем не означает Конечные автоматы и формальные языки - student2.ru не является допустимым.

Для данного НКА A = (Q, Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , Конечные автоматы и формальные языки - student2.ru , F) язык L(A) есть множество цепочек Конечные автоматы и формальные языки - student2.ru

Наши рекомендации