Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции / 07PredstSobw

.pdf
Скачиваний:
16
Добавлен:
28.06.2014
Размер:
142.01 Кб
Скачать
(A [ B)C = AC [ BC:
C(A [ B) = CA [ CB:
Событие M; M µ A¤ называется регулярным, если его можно получить из
событий вида ;; fag; a 2 A применением конечного числа операций объедине-
ния, произведения и итерации.
Например, регулярно любое конечное множество слов длины 1. Регулярные события удобно представлять так называемыми регулярны-
ми выражениями, отражающими процесс построения регулярного события на- чиная с пустого и одноэлементных событий посредством операций произведения, объединения и итерации. Регулярные выражения представляют собой слова (формулы) в алфавите A[f;; _;: ;¤ ; (; )g и описываются следующим образом:
7
= ;;

7Представление событий автоматами

7.1Основные понятия

Подмножества M множества A¤ nfΛg называются событиями в алфавите A: Рассмотрим некоторый инициальный конечный автомат V = (A; Q; B; '; Ã; q) и некоторое подмножество B0 µ B: Тогда множество

M µ A¤; M = f®jÃ(q; ®) 2 B0g

называется множеством слов (событием в алфавите A), представимым в конеч- ном автомате V с помощью подмножества B0 выходных символов. (Иначе: автомат V представляет событие M посредством B0). Событие M называет-

ся представимым, если существует конечный автомат Vq, представляющий это событие посредством некоторого подмножества B0 выходных символов. Кро-

ме обычных теоретико-множественных операций объединения, пересечения и дополнения будем использовать следующие операции:

1) Произведение событий M1 è M2

M1M2 = 1®2gj®1 2 M1; ®2 2 M2g;

2)Итерация события M :

M¤ = 1®2 : : : ®kgj®i 2 M; k ¸ 1:

Эти операции обладают свойствами:

;M = M; = ;;

;¤

ãäå ; = fg пустое множество.

M¤ = MM¤ [ M; MM¤ = M¤M:

1)символы алфавита A и символ ; являются регулярными выражениями,

2)åñëè ®; ¯ регулярные выражения, то (® _ ¯); (® :¯); ®¤ также являются

регулярными выражениями.

3) каждое регулярное выражение получается в соответствии с п.п. 1),2) данного определения за конечное числа шагов.

Обозначим R событие, соответствующее регулярному выражению R; ïî

определению,

8

 

 

a åñëè

 

 

= a;

 

 

 

 

 

 

 

 

 

 

>

 

 

; åñëè R = ;;

 

 

 

 

 

f g

 

R

 

 

 

 

R =

>

R1

 

R2

åñëè

 

 

=

1

 

2; :

>

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

>

[

 

 

R

 

 

R _ R

 

>

R

R2

åñëè

 

=

 

:

 

2;

 

<

 

 

 

1

R

 

>

1

 

R1¤åñëèR

 

=R 1¤

 

 

>

 

 

 

 

R

 

 

R

 

 

 

>

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

>

>

:

Регулярные выражения называются эквивалентными (что обозначается R1 ´ R2), если им соответствуют равные события.

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

;R ´ R; ´ ;; ;¤ ´ ;;

R¤ = RR¤ _ R; RR¤ ´ R¤R:

(R1 _ R2)R3 ´ R1R3 _ R2R3: R3(R1 _ R2) ´ R3R2 _ R3R2:

8

Тогда события

Лемма 4.1. Соотношение X = XC [ D выполняется для событий C; D è X тогда и только тогда, когда X = DC¤ [ D:

Доказательство. Если X = DC¤ [ D; òî

XC [ D = (DC¤ [ D)C [ D =

= (DC¤C [ DC) [ D = D(C¤C [ C) [ D = DC¤ [ D = X:

Пусть теперь X = XC [ D: Тогда X µ DC¤ [ D; поскольку в противном случае в X n (DC¤ [ D) найдется слово ® 2 DC¤; противоречие.

(Этим словом будет кратчайшее слово ® èç Xn(DC¤[D), ïðè ýòîì ® 2 XC[

D; ® 2= D и поэтому ® = ®1®2 2 XC; ®1 2 X; ®2 2 C; причем ®1 62(X nDC¤ [D);

так как оно короче слова ® кратчайшего из этого множества и следовательно

®1 2 DC¤ [ D è ® 2 DC¤ :

®1 2 DC¤ [ D ! ®1®2 2 DC¤C [ DC = D(C¤C [ C) = DC¤:)

 

 

Далее, если X = XC[D; òî DC¤[D µ X: В противном случае в (DC¤[D)nX

найдется слово ® 2 X; противоречие.

 

 

 

 

 

(DC¤

 

D)

 

X; ïðè ýòîì ® = X è,

 

 

(Этим словом будет кратчайшее слово ®

2

[

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

следовательно, ® = D; поэтому ® = ®

®

2

2

DC¤ (®

 

D!), откуда (®

2

D èëè

 

 

 

 

 

 

2

 

 

 

 

 

 

1

 

 

 

 

 

62

 

1

 

®

1

2

DC¤) ®

1

2

(DC¤

[

D); íî ®

1

 

(DC¤

[

D)

n

X; так как оно короче самого

 

 

 

 

 

 

62

 

 

 

 

 

 

 

 

 

 

 

 

короткого слова ® из этого множества. Таким образом, ®1 2 X и, следовательно,

®2 2 C: Значит ® = ®1®2 2 XC µ X: Отсюда ® 2 X:)

 

 

 

 

 

 

 

Лемма доказана.

 

 

 

 

 

 

 

 

 

 

= 1; : : : ; n регулярные события,

 

 

Лемма 4.2. Пусть Rij; i = 0; 1; : : : ; n;

j

X1

; : : : Xn события, удовлетворяющие системе уравнений

 

 

 

 

 

 

 

 

 

8

X1 = X1R: :11: :[: :::::::[: :X: :n:R: n1 [ R01;

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X1

<

X = X R

 

 

: : : X R

 

R :

 

 

 

 

 

 

 

 

 

; : : :: n

n 1 1n

[ [ n nn [ 0n

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

X регулярны.

Доказательство. (Индукция по n:) В случае n = 1 X1 = X1R11 [ R01 è ïî лемме 4.1 X1 = R01R11¤ [R01; òî åñòü X1 регулярно. Пусть утверждение доказано для некоторого n = k ¡ 1; рассмотрим случай n = k: Из последнего уравнения

системы по лемме 1 (полагая C = Rnn) получаем

Xn = (X1R1n [ : : : [ X1R1;n [ R0n)Rnn¤ [

[X1R1n [ : : : [ X1R1;n [ R0n =

= X1(R1nRnn¤ [ R1n) [ : : : [ X1(R1;nRnn¤ [ R1;n)[

[R0nRnn¤ [ R0n:

Подставив полученное выражение в первые n уравнений после приведения

подобных членов получим систему того же вида для X1; : : : X1. По предпо- ложению индукции события X1; : : : ; X1 оказываются регулярными, а вместе

с ними регулярно и событие Xn; представленное выше через них с помощью операций объединения, произведения и итерации. Лемма доказана.

9

Учитывая регулярность событий

7.2 Теорема Клини

7.2.1 Регулярность событий, представимых конечными автоматами

íî.Лемма 4.3. Каждое событие, представимое в конечном автомате регуляр-

Доказательство. Пусть событие M представимо в конечном автомате Vq1 =

(A; Q; B; '; Ã; q1); Q = fq1; : : : ; qng с помощью множества B0; B0 µ B :

M = f®j® 2 A¤; Ã(q1; ®) 2 B0g:

Обозначим Mi = f®j® 2 A¤; ® 6= Λ; '(q1; ®) = qig; Mi0 = faja 2 A; Ã(qi; a) 2 B0g:

Очевидно, что события Mi0

регулярны, а событие M представимо выраже-

íèåì

M = M1M10 [ : : : [ MnMn0 [ M10

 

и для доказательства его регулярности достаточно убедиться в регулярности событий M1; : : : Mn:

Последние соответствуют системе уравнений

 

8

M1 = M1R11: : :[: :: :: :: :[: :M: :nRn1 [ R11;

;

 

>

 

 

 

ãäå

<

M = M R : : : M R R ;

 

:

n

1 1n [ [ n nn [ 1n

 

 

>

 

Rij = faja 2 A; '(qi; a) = qjg:

Rij и Лемму 4.2, получаем, что события Mi; i = 1; : : : n; а вместе с ними и событие M регулярны. Лемма доказана.

7.2.2 Представление регулярного события конечным автоматом

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

с выделенными начальной и конечной вершинами v è w, дугам которого при-

писаны символы алфавита или пустые слова Λ: Допускается наличие петель и

параллельных ребер. Последовательность символов, приписанных дугам некоторого пути ¼(vi; vj) из одной вершины vi в ту же или другую его вершину vj;

после исключения из не¼ символов ¸ образует некоторое слово в алфавите A; если в этой последовательности имеется хотя бы один символ из алфавита A:

Обозначим µ(u; ®) множество вершин u0; таких, что существует путь ¼(u; u0) èç u â u0; которому соответствует слово ®:

10

Каждый обобщенный источник G с начальной вершиной v и финальной вершиной w определяет событие jGj; образованное непустыми словами, соответствующими всевозможным путям ¼(v; w) из начальной вершины в конечную

вершину:

jGj = f®j® 2 A¤; ® 6= Λ; w 2 µ(v; ®)g:

 

Лемма 4.4. Если событие R регулярно, то существует обобщенный источ-

íèê G; такой, что R = jGj:

Доказательство осуществляется индукцией по шагам построения регулярного события R с помощью операций объединения, произведения и итерации,

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

Лемма 4.5. Если G обобщенный источник, то событие jGj представимо.

Доказательство. Пусть M = fq1; : : : qng множество вершин обобщенного источника G; в алфавите A; v; w его начальная и финальная вершины.

Обозначим

 

 

Q = P (M) множество всех подмножеств множества M:

Определим инициальный конечный автомат с множеством состояний Q è

начальным состоянием q1 = fvg:

 

 

Vq1 = (A; Q; f0; 1g; '; Ã; fvg);

 

'(q; a) = v[02q µ(v0; a);

 

Ã(q; a) =

1; åñëè w 2 '(q; a);

:

(

0; åñëè w = '(q; a)

 

 

2

 

Индукцией по длине слова можно показать, что для любого непустого слова

®; ® 2 A¤; выполняется '(fvg; ®) = µ(v; ®):

Базис индукции:

'(fvg; a) = [ µ(v0; a) = µ(v; a):

v02fvg

Предположим, что для любого непустого слова ®; ® 2 A¤; выполняется

'(fvg; ®) = µ(v; ®):

Тогда (индуктивный переход)

'(fvg; ®a) =

0

2

[f g

µ(v0; a) =

 

 

µ(v0

; a) = µ(v; ®a):

 

 

v02[

 

 

v

 

 

'( v

)

 

 

µ(v;®)

 

 

Отсюда

 

 

 

 

 

 

 

 

 

 

Ã(v; ®) =

 

1; åñëè w 2 '(fv ; ®) = µ(v; ®);

:

 

 

(

0; åñëè w = '(

f

vg; ®) = µ(v; ®):

 

 

 

 

 

 

2

 

g

 

 

Åñëè ® 2 jGj; òî w 2 µ(v; ®) = '(fvg; ®) и по определению функции Ã имеем

Ã(fvg; ®) = 1;

11

Åñëè æå ® 2= jGj; òî w 2= µ(v; ®) è Ã(fvg; ®) = 0:

Таким образом, событие jGj представимо в автомате Vq1 с помощью множе- ñòâà f0; 1g: Лемма доказана.

7.2.3 Теорема Клини

Как следствие лемм 4.3, 4.4, 4.5 получаем следующее утверждение

Теорема 4.1 (Клини). Событие E в алфавите A представимо тогда и толь-

ко тогда, когда оно регулярно.

Множество представимых событий в конечном алфавите счетно; в то же время множество всех слов в нем имеет мощность континуум.

Приведем пример события, не являющегося представимым и следовательно регулярным.

Таким событием является множество всех слов в алфавите f0; 1g; имеющих

одинаковое количество нулей и единиц. Предположим,0 0 что оно представимо автоматом Vq = (f0; 1g; Q; B; '; Ã; q) с помощью B ; B µ B: В силу конечности

множества Q найдутся такие i1; i2; i1 6= i2;, ÷òî '(q; 0i1 ) = '(q; 0i2 ); но тогда

Ã(q1; 0i1 1i1 ) = Ã(q1; 0i2 1i1 );

что невозможно, так как Ã(q1; 0i1 1i1 ) 2 B0; à Ã(q1; 0i2 1i1 ) 2= B0; поскольку i1 6= i2:

7.3 О проблеме равенства регулярных событий

Возникает вопрос о существовании алгоритма0 проверки равенства или неравенства двух регулярных событий R è R ; заданных регулярными выражениями

R è R0. Эта проблема равенства имеет решение и сводится к проблеме неотли-

чимости состояний двух автоматов следующим образом0. построим обобщ¼нные По двум заданным регулярным выражениям R è R

источники G è G0;, определяющие события jGj = R è jG0j = R0; описываемые

этими регулярными выражениями. Затем построим два инициальных конечных автомата,

Vq = (A; Q; f0; 1g; '; Ã; q)

è

Vq00

= (A; Q0; f0; 1g; '0; Ã0; q0)

 

представляющие те же события с помощью множества f1g:

Нетрудно видеть, что R = R0 тогда и только тогда, когда состояния q àâòî-

ìàòà Vq è q0 автомата Vq00 неотличимы.

Как было показано в лекции 3 (Теорема 3.3) множество AjQ1j+jQ21; отличает

указанные состояния, если они отличимы.

Таким образом, проблема равенства регулярных событий разрешима.

12

7.4 Упражнение

7.1. Постройте автомат, представляющий регулярное множество

11(00¤ _ (11 _ 01)¤)

Контрольные вопросы

1. Какие множества слов в данном алфавите называются регулярными событиями?

2. Как связаны между собой понятия регулярного выражения и регулярного события?

4. Какие регулярные выражения называются эквивалентными и в чем состоит проблема эквивалентности регулярных выражений?

5. На каких леммах основано доказательство регулярности события, представимого конечным автоматом?

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

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

8. Как доказать или опровергнуть эквивалентность двух регулярных выражений?

Литература.

В.Б.Кудрявцев, С.В.Ал¼шин, А.С.Подколзин. Введение в теорию автоматов. М.:Наука, 1985.

13

Соседние файлы в папке Лекции