Лекция: Конечные автоматы с выходом (КАВ). Автоматные

advertisement
Лекция: Конечные автоматы с выходом (КАВ).
Автоматные функции, способы их задания.
Теорема о преобразовании периодических
последовательностей автоматными функциями.
Лектор - доцент Селезнева Светлана Николаевна
Лекции по “Дискретной математике”-2.
1-й курс, группа 141,
факультет ВМК МГУ имени М.В. Ломоносова
Лекции на сайте http://mk.cs.msu.su
Конечные автоматы с выходом
Способы задания
Определение конечного автомата с выходом
Конечным автоматом с выходом (КАВ)
(автоматом-преобразователем) называется
A = (A, B, Q, ϕ, ψ, q1 ),
где
A = {a1 , . . . , an }, n ≥ 1,
B = {b1 , . . . , bm }, m ≥ 1,
Q = {q1 , . . . , qr }, r ≥ 1,
ϕ:A×Q →B
ψ :A×Q →Q
q1 ∈ Q
–
–
–
–
–
–
входной алфавит;
выходной алфавит;
множество состояний;
функция выходов;
функция переходов;
начальное состояние.
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Входная лента
a∈A
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Входная лента
a∈A
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Входная лента
a∈A
b∈B
Выходная лента
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Входная лента
a∈A
b∈B
Выходная лента
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Входная лента
a∈A
6
Чтение
b∈B
Выходная лента
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Входная лента
a∈A
6
Чтение
Запись
?
b∈B
Выходная лента
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Входная лента
a∈A
6
Чтение
q∈Q
Запись
?
b∈B
Выходная лента
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Содержательное понимание КАВ
Содержательно КАВ A = (A, B, Q, ϕ, ψ, q1 ) можно понимать в
виде абстрактного устройства (преобразователя):
Входная лента
a∈A
6
Чтение
- Движение вправо
q∈Q
Запись
?
b∈B
Выходная лента
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
ai1
ai2
ai3
...
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
ai3
...
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
ai3
...
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
q1
ai2
ai3
...
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
q1
ai2
ai3
...
t=1
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
q1
ai3
...
t=1
bi1 = ϕ(ai1 , q1 )
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
q1
?
bi1
ai3
...
t=1
bi1 = ϕ(ai1 , q1 )
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
q1
?
bi1
ai3
...
t=1
bi1 = ϕ(ai1 , q1 )
qi2 = ψ(ai1 , q1 )
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
-
q1
qi2
?
bi1
ai3
...
t=1
bi1 = ϕ(ai1 , q1 )
qi2 = ψ(ai1 , q1 )
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
-
q1
qi2
?
bi1
ai3
...
t=1
bi1 = ϕ(ai1 , q1 )
qi2 = ψ(ai1 , q1 )
t=2
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
ai3
6
-
q1
qi2
?
bi1
...
t=1
bi1 = ϕ(ai1 , q1 )
qi2 = ψ(ai1 , q1 )
t=2
bi2 = ϕ(ai2 , qi2 )
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
ai3
6
-
q1
qi2
?
bi1
?
bi2
...
t=1
bi1 = ϕ(ai1 , q1 )
qi2 = ψ(ai1 , q1 )
t=2
bi2 = ϕ(ai2 , qi2 )
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
ai3
6
-
q1
qi2
?
bi1
?
bi2
...
t=1
bi1 = ϕ(ai1 , q1 )
qi2 = ψ(ai1 , q1 )
t=2
bi2 = ϕ(ai2 , qi2 )
qi3 = ψ(ai2 , qi2 )
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
ai3
6
-
q1
qi2
?
bi1
qi3
?
bi2
-
...
t=1
bi1 = ϕ(ai1 , q1 )
qi2 = ψ(ai1 , q1 )
t=2
bi2 = ϕ(ai2 , qi2 )
qi3 = ψ(ai2 , qi2 )
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функционирование конечного автомата с выходом
Функционирование автомата A = (A, B, Q, ϕ, ψ, q1 ):
На входной ленте – a∞ ∈ A∞
ai1
ai2
6
ai3
6
-
q1
qi2
?
bi1
...
6
-
qi3
t=1
bi1 = ϕ(ai1 , q1 )
qi2 = ψ(ai1 , q1 )
t=2
bi2 = ϕ(ai2 , qi2 )
qi3 = ψ(ai2 , qi2 )
?
bi2
И т.д.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Отображение, осуществляемое КАВ
В результате работы конечного автомата A бесконечная
последовательность a∞ ∈ A∞ (конечная последовательность
длины l al ) преобразуется в бесконечную последовательность
b ∞ ∈ B ∞ (конечную последовательность длины l b l ).
Т.е. конечный автомат A определяет некоторую (словарную)
функцию
fA : A∞ → B ∞ ,
которую будем называть отображением, осуществляемым
конечным автоматом A.
Конечные автоматы с выходом
Способы задания
Отображение, осуществляемое КАВ
Конечный автомат с выходом A = (A, B, Q, ϕ, ψ, q1 )
определяет функцию fA : A∞ → B ∞ ,
такую, что для каждой бесконечной последовательности
x ∞ = x(1)x(2) . . . x(t) . . .
соответствующая ей выходная последовательность
f (x ∞ ) = y ∞ = y (1)y (2) . . . y (t) . . .
построена по правилам:

 y (t) = ϕ(x(t), q(t − 1));
q(t) = ψ(x(t), q(t − 1));

q(0) = q1 .
Эта система правил называется каноническими
уравнениями автомата A.
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Автоматные функции
Функция
f : A∞ → B ∞
называется автоматной, если найдется такой конечный
автомат
A = (A, B, Q, ϕ, ψ, q1 ),
что fA = f .
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Канонические уравнения
Рассмотрим способы задания конечных автоматов и
соответствующих автоматных функций.
1. Канонические уравнения
Конечный автомат с выходом A = (A, B, Q, ϕ, ψ, q1 )
(и автоматную функцию fA : A∞ → B ∞ )
можно задавать каноническими уравнениями

 y (t) = ϕ(x(t), q(t − 1));
q(t) = ψ(x(t), q(t − 1));

q(0) = q1 .
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Диаграмма Мура
2. Диаграмма Мура
Диаграммой Мура конечного автомата с выходом
A = (A, B, Q, ϕ, ψ, q1 ) (и автоматной функции fA : A∞ → B ∞ )
называется ориентированный граф с пометками
DA = (VA , EA ),
где
VA = Q;
EA = {(q, ψ(a, q)) | a ∈ A, q ∈ Q};
причем
дуге (q, ψ(a, q)) ∈ E приписана пометка a(ϕ(a, q));
вершина q1 ∈ V помечена звездочкой“ ∗.
”
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функция единичной задержки
Пусть A = B = {0, 1}.
Рассмотрим такую функцию f : A∞ → B ∞ , что для каждой
входной последовательности
x ∞ = x(1)x(2)x(3) . . . x(t) . . .
соответствующая ей выходная последовательность имеет вид
f (x ∞ ) = y ∞ = 0x(1)x(2) . . . x(t − 1) . . . .
Такая функция f называется функцией единичной
задержки.
Содержательно, она задерживает элемент входной
последовательности на один такт работы и затем записывает
его в выходную последовательность. На первом такте работы
она выдает 0.
Докажем, что функция f – автоматная.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Функция единичной задержки
Функция f осуществляется конечным автоматом
A = (A, B, Q = {0, 1}, ϕ, ψ, q1 = 0),
где состояние q = 0 означает в предыдущий момент времени
”
на входе был 0“; состояние q = 1 означает в предыдущий
”
момент времени на входе была 1“.
Находим таблицы функций ϕ и ψ, а также канонические
уравнения:
a∈A q∈Q ϕ ψ

0
0
0 0
 y (t) = q(t − 1);
q(t) = x(t);
0
1
1 0 и

q(0) = 0.
1
0
0 1
1
1
1 1
Так как в первый момент времени всегда выдается 0, состояние
q = 0 – начальное.
Конечные автоматы с выходом
Способы задания
Диаграмма Мура функции единичной задержки
Построим диаграмму Мура функции f .
a∈A q∈Q ϕ ψ
0
0
0 0
0
1
1 0 и q1 = 0
1
0
0 1
1
1
1 1
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Диаграмма Мура функции единичной задержки
Построим диаграмму Мура функции f .
a∈A q∈Q ϕ ψ
0
0
0 0
0
1
1 0 и q1 = 0
1
0
0 1
1
1
1 1
'$ '$
q=0
q=1
&% &%
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Диаграмма Мура функции единичной задержки
Построим диаграмму Мура функции f .
a∈A q∈Q ϕ ψ
0
0
0 0
0
1
1 0 и q1 = 0
1
0
0 1
1
1
1 1
0(0)
'$ '$
q=0
q=1
&% &%
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Диаграмма Мура функции единичной задержки
Построим диаграмму Мура функции f .
a∈A q∈Q ϕ ψ
0
0
0 0
0
1
1 0 и q1 = 0
1
0
0 1
1
1
1 1
0(0)
'$
'$
1(0) -
q=0
q=1
&% &%
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Диаграмма Мура функции единичной задержки
Построим диаграмму Мура функции f .
a∈A q∈Q ϕ ψ
0
0
0 0
0
1
1 0 и q1 = 0
1
0
0 1
1
1
1 1
0(0)
'$
'$
1(0) -
q=0
q=1
0(1)
&% &%
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Диаграмма Мура функции единичной задержки
Построим диаграмму Мура функции f .
a∈A q∈Q ϕ ψ
0
0
0 0
0
1
1 0 и q1 = 0
1
0
0 1
1
1
1 1
0(0)
'$
'$
1(0) 1(1)
q=0
q=1
0(1)
&% &%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Диаграмма Мура функции единичной задержки
Построим диаграмму Мура функции f .
a∈A q∈Q ϕ ψ
0
0
0 0
0
1
1 0 и q1 = 0
1
0
0 1
1
1
1 1
∗
'$
'$
1(0) 1(1)
0(0)
q=0
q=1
0(1)
&% &%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Пример 1. Пусть A = B = {0, 1}.
Рассмотрим такую функцию g : A∞ → B ∞ , что для каждой
входной последовательности
x ∞ = x(1)x(2)x(3) . . . x(t) . . .
соответствующая ей выходная последовательность
g (x ∞ ) = y ∞ = y (1)y (2) . . . y (t) . . .
имеет вид
y (t) =
0,
t = 1;
x(t − 1) ⊕ x(t), t ≥ 2.
Докажем, что функция g – автоматная.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
'$
q1
&%
q2
&%
'$
q3
&%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
∗
'$
q1
&%
q2
&%
'$
q3
&%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
: q2
∗
0(0) '$
&%
q1
&%
'$
q3
&%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
: q2
∗
0(0) '$
&%
q1
'$
XXX
&%
XXX
q
XX
z 3
1(0)
&%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
0(0) :
∗
0(0) q2
'$
&%
q1
'$
XXX
&%
XXX
q
XX
z 3
1(0)
&%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
0(0) :
∗
0(0) q2
'$
&%
q1
1(1)
'$
?
XXX
&%
XXX
q
3
XX
z
1(0)
&%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
0(0) :
∗
0(0) q2
'$
&%
6
q1
0(1)
1(1)
'$
?
X
XX
&%
XXX
q
XX
z 3
1(0)
&%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
0(0) :
∗
0(0) q2
'$
&%
6
q1
0(1)
1(1)
'$
?
X
XX
&%
XXX
1(0)
q
3
XX
z
1(0)
&%
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Пример
Для доказательства построим диаграмму Мура функции g .
0,
t = 1;
y (t) =
x(t − 1) ⊕ x(t), t ≥ 2.
Введем 3 состояния: q1 – момент времени t = 1, q2 – момент
времени t ≥ 2 и x(t − 1) = 0 и q3 – момент времени t ≥ 2 и
x(t − 1) = 1.
'$
0(0) :
∗
0(0) q2 01
'$
&%
6
q1 00
0(1)
1(1)
'$
?
X
XX
&%
XXX
1(0)
11
q
3
XX
z
1(0)
&%
Конечные автоматы с выходом
Способы задания
Пример
Найдем канонические уравнения для функции g .
q1 (t − 1) q2 (t − 1) x(t) y (t) q1 (t) q2 (t)
0
0
0
0
0
1
0
0
1
0
1
1
0
1
0
0
0
1
0
1
1
1
1
1
1
0
0
1
0
1
1
1
0
1
0
1
1
1
1
0
1
1

y (t) = q2 (t − 1)(q1 (t − 1) ⊕ x(t));



q1 (t) = x(t);
q
(t) = 1;


 2
q1 (0) = q2 (0) = 0.
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Периодические последовательности
Последовательность
a∞ = a(1)a(2) . . . a(t) · · · ∈ A∞
называется периодической с периодом T и предпериодом
T0 , если для всех t > T0 верно
a(t + T ) = a(t).
Периодическая последовательность имеет вид
a∞ = aj1 . . . ajT0 ai1 . . . aiT ai1 . . . aiT · · · = aj1 . . . ajT0 (ai1 . . . aiT )∞ ,
где α0 = aj1 . . . ajT0 ∈ A∗ – предпериод, α = ai1 . . . aiT ∈ A∗ –
период, aj1 , . . . , ajT0 , ai1 , . . . , aiT ∈ A.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Теорема о периодических последовательностях
Теорема 1. Пусть f : A∞ → B ∞ – автоматная функция,
задаваемая конечным инициальным автоматом
A = (A, B, Q, ϕ, ψ, q1 )
с r состояниями (|Q| = r ).
Тогда если
a∞ = a(1)a(2) . . . a(t) · · · ∈ A∞
периодическая последовательность с периодом T , то
соответствующая ей выходная последовательность
f (a∞ ) = b ∞ = b(1)b(2) . . . b(t) · · · ∈ B ∞
тоже периодическая последовательность с периодом T 0 ≤ r · T .
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Теорема о периодических последовательностях
Доказательство. Пусть предпериод периодической
последовательности a∞ ∈ A∞ равен T0 .
Рассмотрим следующие (r + 1) совпадающие значения этой
последовательности
a(T0 +1) = a(T0 +1+T ) = a(T0 +1+2T ) = · · · = a(T0 +1+r · T ).
Пусть при считывании этих значений конечный автомат A
находился соответственно в состояниях
q (0) , q (1) , q (2) , . . . , q (r ) ∈ Q.
Но в множестве Q всего r различных элементов.
Следовательно, найдутся такие номера i и j, где i < j, что
q (i) = q (j) .
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Теорема о периодических последовательностях
Доказательство (продолжение). Значит, при t = T0 + 1 + i · T
и при t = T0 + 1 + j · T конечный автомат A будет считывать
один и тот же символ
a(T0 + 1 + i · T ) = a(T0 + 1 + j · T ) ∈ A,
находиться в одном и том же состоянии
q (i) = q (j) = q ∈ Q,
и, более того, бесконечные (входные) последовательности,
которые автомат A прочитает, начиная с этих двух элементов
a(T0 + 1 + i · T ) и a(T0 + 1 + j · T ) и из состояния q, будут
совпадать.
Отсюда, соответствующие (бесконечные) выходные
последовательности для них также будут совпадать.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Теорема о периодических последовательностях
Доказательство (продолжение). Значит, конечная
последовательность
β = b(T0 +1+i ·T )b(T0 +1+i ·T +1) . . . b((T0 +1+j ·T )−1) ∈ B ∗
является периодом выходной последовательности b ∞ ,
соответствующей входной последовательности a∞ .
Период этой последовательности b ∞ равен
T 0 = (j − i) · T ≤ r · T .
Конечные автоматы с выходом
Способы задания
Примеры
Пример 2.
1. Пусть A = B = {0, 1, . . . , 9}.
Рассмотрим функцию f : A∞ → B ∞ , которая преобразует
входную последовательность
x ∞ = x(1)x(2)x(3) . . . x(t) . . .
в выходную последовательность
f (x ∞ ) = y ∞ = y (1)y (2) . . . y (t) . . .
по правилу:
y (t) = t-я цифра после запятой в числе π.
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Примеры
Т.е.
y (1) = 1, y (2) = 4, y (3) = 1, y (4) = 5, . . . .
Докажем, что f не является автоматной функцией.
Предположим противное: пусть функция f – автоматная.
Рассмотрим периодическую входную последовательность
a∞ = (0)∞ ∈ A∞ периода T = 1.
Тогда по теореме 3 соответствующая ей выходная
последовательность f (a∞ ) = b ∞ ∈ B ∞ также обязана быть
периодической. Приходим к противоречию, т.к. число π
иррационально и задается непериодической десятичной
дробью.
Следовательно, функция f не является автоматной.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Примеры
2. Пусть A = B = {0, 1}.
Рассмотрим функцию g : A∞ → B ∞ , которая входную
последовательность
x ∞ = x(1)x(2)x(3) . . . x(t) . . .
преобразует в выходную последовательность
g (x ∞ ) = y ∞ = y (1)y (2) . . . y (t) . . .
по правилу:
y (t) = t-я цифра после запятой двоичной записи числа 25 .
Докажем, что g – автоматная функция.
Конечные автоматы с выходом
Способы задания
Примеры
Заметим, что
(10)2
2
=
= 0, (0110)∞ .
5
(101)2
Построим диаграмму Мура функции g . Введем состояния
qi = t mod 4, где i = 1, 2, 3, 0.
Свойства КАВ
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Примеры
Заметим, что
(10)2
2
=
= 0, (0110)∞ .
5
(101)2
Построим диаграмму Мура функции g . Введем состояния
qi = t mod 4, где i = 1, 2, 3, 0. Тогда
∗
'$ '$ '$ '$
q1
0, 1(0)- q2
0, 1(1)- q3
0, 1(1)- q0
&% &% &% &%
6
0, 1(0)
Мы построили диаграмму Мура для функции g . Значит, g –
автоматная функция.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Задачи для самостоятельного решения
1. Является ли функция f (x(1)x(2) . . . ) = y (1)y (2) . . .
автоматной, если
√
1) y (t) – t-я цифра после запятой в двоичной записи числа 2;
2) y (t) – (t + 1)-я цифра после запятой в двоичной записи
числа 23 · x(t)?
2. Построить диаграмму Мура автоматной функции, заданной
каноническими уравнениями:

y (t) = x(t) · q1 (t − 1) · q2 (t − 1);



q1 (t) = x̄(t);
q (t) = x(t) · q1 (t − 1);


 2
q1 (0) = q2 (0) = 0.
Конечные автоматы с выходом
Способы задания
Свойства КАВ
Литература к лекции
1. Яблонский С.В. Введение в дискретную математику. М.:
Высшая школа, 2001.
2. Алексеев В.Б. Лекции по дискретной математике. М.: МАКС
Пресс, 2004. Стр. 66-67.
3. Гаврилов Г.П., Сапоженко А.А. Задачи и упражнения по
дискретной математике. М.: Физматлит, 2004.
Конечные автоматы с выходом
Способы задания
Конец лекции
Свойства КАВ
Download