Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1курс / 2 сем / МЛиТА / лекции (сборник през / МАТ ЛОГИКА ЛЕК 4.pptx
Скачиваний:
23
Добавлен:
09.07.2024
Размер:
1.16 Mб
Скачать

Пример (машина Тьюринга)

4 шаг

0 0 0 0 0 1 0 → 0 0 0 0 1 1 0 q 2 q 0

машина считала 0 заменив на 1 и перешла из состояния q2 в состояние q0 и остановилась

(машина остановилась т.к. достигла состояния q0 ,

кроме того в команде 3 есть символ S (стоп )). т.е. выполнилась команда 3

q2 0 → q0 1 S

Алгоритмы

Алгоритм (и устройство) распознавания предложений регулярного языка называется

конечным автоматом (КА). (другое определение конечного автомата)

Алфавит языка можно определить как конечное множество символов(букв)

Напр.

С = { a, b , c, d} , C={0, 1} Последовательность символов образуют слово аb , cd , 00111000

Число букв в слове - наз. длинной Пустое слово не содержит символов

Множество слов в алфавите называется языком.

Конечные автоматы

Все цифровые устройства можно разделить на 2 класса:

логические схемы

схемы с памятью(конечные автоматы)

Логические схемы формируют выходные сигналы в зависимости от входных сигналов, но не учитывают (не запоминают) входные сигналы , которые подавались на логические схемы ранее.

Конечные автоматы выходные сигналы зависят не только от входных сигналов , поступающих в данный момент времени, но и от входных сигналов , поступающих на входы логических схем ранее.

Алгоритмы

Пусть

C= { c0, c1, c2, c3}-входной алфавит y={y1, y2,y3} - выходной алфавит

с0, c1, c2,c3

 

y3, y2, y1

 

 

 

 

Будем рассматривать автомат с одним входом(на который подаются входные сигналы c0, c1, c2, c3) и одним выходом

Работа автомата рассматривается в дискретные моменты времени ti (такие моменты времени наз.

автоматными тактами и изменяются от 0 до n , где n - длинна входного слова.

Алгоритмы Конечные автоматы

Напр. на рис. (предыдущий слайд) автомат обрабатывает первую входную букву с3 и выдает на выходе сигнал y3 и т.д.

Есть две разновидности КА:

без выходного преобразователя

с выходным преобразователем

КА без выходного преобразователя.

Автомат без выходного преобразователя это сочетание

M= { Q, C, Q0,ᶞ }

Алгоритмы Конечные автоматы

Напр. на рис. (предыдущий слайд) автомат обрабатывает первую входную букву с3 и выдает на выходе сигнал y3 и т.д.

Есть две разновидности КА:

без выходного преобразователя

с выходным преобразователем

КА без выходного преобразователя.

Автомат без выходного преобразователя это сочетание

M= { Q, C, Q0,ᶞ }

Алгоритмы Конечные автоматы

где

Q={q0 , q1...qn} - множество состояний автомата С= { а , b, c ...} - входной алфавит

Q0 - начальное состояние автомата

ᶞ: Q*C → Pj (т.е. ᶞ - есть функция переходов из одного состояния в другое состояние)

где Pj - есть подмножество Q (т.е. Pj или Qj обозначим j-ое состояние в которое перешел конечный автомат)

т.е.

Qj = ᶞ (Ci ,Q i )

Абстрактный автомат наз конечным только тогда , если число входных символов и выходных символов конечно.

Алгоритмы Конечные автоматы

Автомат наз. инициальным , если он был перед началом работы установлен в начальное состояние.

Характеристическую функцию для автомата без выходного преобразователя запишем:

q(t +1) = f1 (xi (t), qi (t))

(в отличии от автомата Милли состоит только из одного уравнения)

Алгоритмы Конечные автоматы

символ t+1 - означает следующий автоматный такт.

Способы задания конечного автомата: 1. Перечислением т.е. приводятся все функции переходов q1 = ᶞ (q0 , c1)

q2 = ᶞ (q1 , c2)

qk= ᶞ (qk-1, ck) 2. Табличный

Алгоритмы Конечные автоматы

При табличном способе задания конечного автомата строится таблица переходов (см. пример следующий слайд)

Столбцы таблицы - обозначают входные символы (т.е. входные сигналы, которые подаются на вход автомата)

Строчки таблицы - обозначают состояния автомата

На пересечении i-ой строчки и j-того cтолбца указывается сотояние в которое перешел автомат под воздействием входного сигнала cj

c1 c2 q i \ Ci

q0 q1

q1 q2 qk