<<
>>

3.2. Формальные языки и дискретные автоматы

Изучаемые вопросы: Структура формального языка. Построение слов. Дискретные автоматы с памятью и без. Сумматор.

3.2.1. Формальные языки

Здесь будем под языком понимать средство общения автомата с окружающей средой.

Под формальным языком Я будем понимать математический объект, который включает в себя:

1) Состояние языка {S0,S1,…,Sn} = Mn , где S0 – начальное или нейтральное состояние, а само множество Mn – множество нетерминальных символов.

2) Алфавит языка {m1,m2,…,mp} = Mt, состоящий из некоторого набора символов (букв). Заметьте, здесь индексация начинается с 1, само Mt – множество терминальных символов. Чаще всего под символами понимаются двоичные символы 0 и 1.

3) Правила грамматики – показывают как образуются слова языка. Они имеют вид соотношений

Sl ::= Skmi, (1)

где i = 0,1,2,…,p; l,k = 0,1,2,…,n. Это соотношение означает, что при переходе из состояния Sk в Sl появляется буква mi образуемого слова. При этом значению i=0 соответствует буква m0, которая не входит в алфавит, а представляет собой знак пробела или некоторый интервал между словами.

Образование каждого слова начинается из начального состояния S0 и им же заканчивается (далее идет пробел).

Язык задан, если формула вида (1) определена для каждой пары состояний Sk, Sl.

Пример 1: Язык Я с алфавитом Mt={m1,m2,m3} задан совокупностью следующих правил грамматики:

S1:: = S0m0; S2:: = S1m1|S2m3; S3:: = S0m0|S2m2; S0:: = S3m1. (2)

(Здесь обозначение означает и/или).

○Построение слов в языке Я удобно проводить с помощью графов: в вершинах помещаются состояния S, а рядом с дугой, соединяющей Sk и Sl пишут появляющуюся при этом букву mi. Начнем с S0. С этим состоянием связаны состояния S1 и S3: дуги и производят пробел , а дуга ­­- букву ; дуга - букву ; дуга производит букву , дуга ­-­ букву .

При обходе всего цикла из в

m1 получаем все возможные слова:

m0 1) m1m2m1;

2) m1m3m2m1;

m3 3) m1;

m0 (m­0 –пробел – не пишется)!

m2 Тогда

m1 Я = {m1, m1m2m3, m1m3m2m1}.●

Пример 2: Язык Я с алфавитом Mt = {m1,m2,m3} задан совокупностью правил:

S1:: = S0m0|S2m2; S2:: = S1m1; S3:: = S2m3|S3m2; S0:: = S4m3|S3m1.

Изобразить в виде графа структуру языка и построить совокупность слов, порождаемых грамматикой данного языка.

○Слова:

1)[m­1m2 m1] n m3m1, n-любое (тавтология, т.е. повторение одного и того же)

2)[m­1m2m1]nm3m2m1, также тавтология

3) m1m3m1

4)m1m3m2m1

Здесь состояние ­- «мёртвое», поскольку в него невозможно попасть. (Такие ситуации возможны при проводившейся ранее коррекции языка).

3.2.2. Дискретные автоматы (ДА)

ДА – это устройство, служащее для восприятия, переработки поступающей извне информации и выработки соответствующей реакции на эту информацию.

(Здесь считаем, что информация дискретна, т.е. поступает в отдельно взятые моменты времени.)

Для двоичных сигналов (0 и 1) и автоматы называются двоичными.

Пусть ДА имеет k входов и q выходов, тогда совокупность входных (x1,x2,…,xk) и выходных (y1,y2,…,yq) сигналов можно трактовать как векторы X и Y соответствующих размерностей:

ДА

X=(x1,x2,…,xk) Y=(y1,y2,…,yq)

Рассмотрим два типа ДА:

1. Без памяти (или комбинационная схема КС)

2. С памятью (последовательная схема ПС).

В КС для текущего момента времени Yn = fкс (Xn), (1)

т.е. выходные сигналы являются функцией только входных.

В ПС они зависят и от предыдущего момента n-1:

Yn = fпс (Xn, Xn-1) (2)

Поскольку рассматриваем двоичные дискретные автоматы, то f являются не обычными алгебраическими функциями, но булевскими. И проблема математического описания поведения ДА решается на основе аппарата алгебры логики.

Пусть в некоторый момент времени ДА находится в состоянии Sk и под воздействием входного сигнала x, поступающего в этот момент, переходит в состояние Sl, вырабатывая выходной сигнал y, тогда процесс перехода ДА из Sk в Sl можно записать:

Sk ® xySl (3)

Рассмотрим ДА без памяти (КС)

Пример: пусть работа ДА задана совокупностью правил:

S1 ® x2y2S1, S1 ® x1y1S2, S2 ® x1y1S2, S2 ® x2y1S3, S3 ® x1y2S1.

И пусть на вход подана последовательность: х2, х1, х2, х1, а ДА установлен в состояние S1. Определить последовательность на выходе. Интерпретируем правила работы ДА в виде графа:

Так как начальное состояние и первый входной сигнал х2, то, в соответствии с графом, первым выходным сигналом будет y2 и ДА останется в состоянии .

Следующий входной - х1, тогда y1 и . Далее, y1 и , потом y2 и , т.е. последовательность сигналов на выходе: y2, y1, y1, y2.

Рассмотрим теперь ДА с памятью (ПС)

Пример: пусть имеется устройство с входным каналом Х, каналом обратной связи Z и выходным каналом Y, реализующее отображение

,

которое задается в виде таблицы (*).

Структурная схема блока:

Комбинационная

часть

Память
Здесь входной сигнал задается не только входным Х в момент t, но и выходным сигналом предшествующего

момента, т.е.Z+(t)=Z-(t-t), t>0.

(Считается, Z+(t=0)=Z0+).

Z+ Z-

X Y

Пусть на вход подается последовательность 101001 и Z0+ = 0. Определить последовательность на выходе.

X Z+ Z- Y
0 0 1 1
0 1 1 0
1 0 0 1
1 1 0 0

Табл.(*) В t = 0 вектор XZ+, равный 10 ( Х = 1 – первый член входной последовательности, Z+ = Z0+ = 0), определяет, в соответствие с третьей строкой (*) вектор 01.

В следующий момент t входной вектор Х = 0(второй член входной последовательности), а Z+(t) = Z-(t-t) = Z-(0) = 0, тогда в t = t XZ+ = 00 и из первой строки (*) : Z-Y = 11. В t = 2t XZ+ = 11 (X = 1 – третий член входной последовательности, а Z+(2t) = Z-(t), и из 4-й строки (*) Z-Y = 00 etc.

Это решение удобно представить в виде табл.(**): Ответ: 101001 110100. Табл.(**)

Время X Z+ Z- Y
0 1 0 0 1
t 0 0 1 1
2t 1 1 0 0
3t 0 0 1 1
4t 0 1 1 0
5t 1 1 0 0

Работа сумматора подробно описана в [3].

Вопросы для самопроверки по теме 3.2

1. Что означает «язык задан»?

2. В чём отличие комбинационной схемы от последовательной?

3. Что означает запись ?

<< | >>
Источник: Т.Д.Бессонова, Н.М.Петухова, В.В. Тарасенко. Математика ч.2: учебно-методический комплекс / сост. Т.Д.Бессонова, Н.М.Петухова, В.В. Тарасенко - СПб.: Изд-во CЗТУ,2008. – 158 с.. 2008

Еще по теме 3.2. Формальные языки и дискретные автоматы:

  1. ЕСТЕСТВЕННЫЕ И ИСКУССТВЕННЫЕ ЯЗЫКИ ЖИВЫЕ И МЁРТВЫЕ ЯЗЫКИ ФУНКЦИИ ЯЗЫКА
  2. § 37. ЯЗЫКИ МЕЖДУНАРОДНОГО ОБЩЕНИЯ. ИСКУССТВЕННЫЕ ЯЗЫКИ
  3. §3.1. Определение и примеры автоматов
  4. §3.4. Приведённый автомат
  5. §3.2. Диаграмма Мура и таблица автомата
  6. 33. Контрольно-сортировочные автоматы
  7. §3.5. Периодичность выходной последовательности конечного автомата
  8. Что умели автоматы
  9. 3. Понятия и определения: автомат, полуавтомат, ГПС, автоматическая линия
  10. Статья 498. Продажа товаров с использованием автоматов
  11. Глава 3. Автоматы
  12. Формальные механизмы. Основные типы формальных механизмов.
  13. Как автоматы могли подменить астронавтов
  14. Славянские языки
  15. 7. Дискретные модели активных систем
  16. 3.3. Дискретные и непрерывные случайные величины.
  17. 1.3. Дискретные каналы и их модели
  18. Дискретные пороговые датчики
  19. 2.4. Дискретная динамическая модель прогнозирования количества вызовов