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

книги из ГПНТБ / Богомолов А.М. Эксперименты с автоматами

.pdf
Скачиваний:
24
Добавлен:
23.10.2023
Размер:
7.81 Mб
Скачать

Пі,

П„ соответственно существует входная последовательность

р £ X*

такая, что

 

 

б п , (Кп„ р) П 6n ,(/Cn„ р) П • • • П б п„(/<пп ,

р)Ф0,

гдебп; — функция переходов Пг образа автомата А.

Теорема

5.5.

Пусть

(1 <

і <

п) — сходящееся

семейство

нетривиальных

разбиений

множества

состояний

сильносвязного

автомата

А

— (S,

X,

Y, б, К),

удовлетворяющее

условиям П =

л

 

 

 

л—1

 

 

 

 

 

 

= П П( =

0

и П0 =

П П; >

П?к. 7огда существует

нетривиальная

. = 1

 

 

 

і = і

 

 

 

 

 

 

параллельная

компонентно-диагностируемая декомпозиция поведе­

ния состояний автомата А,

состоящая

из п компонент.

декомпози­

Д о к а з а т е л ь с т в о .

Нетривиальная параллельная

ция поведения состояний автомата А, состоящая из п компонент, су­ ществует, поскольку семейство {П,} состоит из нетривиальных разбие­ ний со свойством подстановки и П = 0. В качестве компоненты At

(здесь At = AL) параллельной декомпозиции М автомата А принима­ ется автомат Л п.-Сходимость семейства разбиений {П,-} равносильна связности автомата М относительно А. Это непосредственно следует из того, что изоморфизм а, соответствующий построенной декомпози­ ции поведения состояний, задан равенством а (а) = (Кп (а), •••

...,Кпп (а)).

Функция выходов Л автомата М определяется соотношением

Л ((/Сп, (а), . . . , Knja)),

х) = Х(а, х).

Пусть {П,} (1 •< і •< п) — семейство разбиений множества со­ стояний V автомата М, в котором каждое П/ задано соотношением,

л—і

аналогичным (5.1). Пусть П0 = П П,-. Необходимо доопределить функцию выходов автомата М так, чтобы выполнялось неравенство

По > П Л . Пусть U =

s Є V

"п

рг/ (s) Ф

0}

и і

= {1, 2, ...

., п — 1}. Если s = ( s l t s n

) ,

то символом prj (s)

обозначим кор­

теж (sx ,

s„_i). Определим отображение /

:

(5) следующим

образом:

 

 

 

 

 

 

 

 

і

д 5 ) =

Js '

е с л и

Д prj(s) ф

0 ,

 

 

 

 

[ s'

в

противном случае,

 

 

где s' £ a (S) такое, что prj (s')

= р о (s).

Методом,

аналогичным

описанному

в доказательстве

теоремы 5.3,

используя

неравенство

П0 >• Щ, можно доопределить функцию выходов Л автомата М так, что будет выполняться неравенство По > ПЛ . При этом фигурирую­ щее в формуле (5.12) отображение g следует заменить отображением /. В результате получим автомат Мх, который может отличаться от М

только выходным алфавитом. Авто-

 

Т а б л и ц а

31

мат

Мг

является

связным относи-

0

1

0

1

тельно А,

и

для

него

выполняется

 

 

 

 

неравенство П 0 >

П Л - Поскольку мно­

2

3

0

0

жество компонент Л

=

{А(} (1 - < і •<

1

4

1

0

<: п — 1)

замкнуто, то

на основании

5

1

1

1

следствия

5.1

можно

утверждать,

что

2

6

1

1

сеть,

соответствующая

автомату

Мъ

7

3

1

0

5

4

0

0

является

компонентно-диагностируе­

5

4

0

1

мой. Теорема доказана.

Проиллюстрируем построение параллельной компонентно-диагно­ стируемой декомпозиции сильно связного автомата на примере авто­

 

 

мата ЛЗ,

представленного табл. 31. Легко

 

 

видеть, что разбиения

 

 

 

 

 

 

 

 

 

П 1

=

 

{1,2, 5, 6, 7;

зТІь

 

 

 

 

 

П2

=

{1,

3 , 4 , 6 , 7 ;

2^5),

 

 

 

 

 

П 3

=

О Г В ;

"277;

3,

6}

 

 

 

имеют свойство подстановки, П = П 1 П 2 П 3

= 0

 

 

и П 0

= П І П 2

>

П Ь

где

 

 

 

 

Рис.

18. Схема соединения

 

п 0

= { U 3 ,

7;_J2,

5;

3,

41

 

компонент параллельной

 

 

декомпозиции автомата ЛЗ.

 

 

 

(Г7б;

2,5;

3, 4;

7}.

 

Покажем, что семейство разбиений { П ъ

П2 , П3 }

сходящееся. Введем^

обозначения

 

 

 

 

 

 

 

 

 

 

 

 

 

а, =

1, 2, 5, 6, 7;

Ьг

=

З Д ;

 

 

 

 

 

 

о „ =

1, 3, 4, 6, 7;

&2

=

275;

 

 

 

 

 

 

а 3 = 1 , 4, 5;

b3 = 2, 7;

с3

=

3, 6.

 

 

 

Необходимо показать, что. для любого кортежа (glt

g2,

g3),

где gj

=

аъ

bi, gi — я2 , b2

a g3 = a3, b3,

c3,

существует такая входная по­

следовательность р,

что

 

 

 

 

 

 

 

 

 

 

 

 

б п , {gi,

Р) П V ( ^ 2 -

Р) П Sn ,(ffB. P)=f=

0-

 

 

 

Для кортежей (Gj, 62 , с8 ),

£ 3

) , (&г >

£2 , с 8 ),

 

62 , £3 ) и

Ьг, с3У

такой последовательностью является последовательность, состоя­ щая из одного символа 0. Для остальных кортежей требуемой после­ довательностью будет пустая последовательность е.

Поскольку семейство разбиений {П^ П2 , П3 } удовлетворяет всем, условиям теоремы 5.5, то можно заключить, что существует нетри­ виальная компонентно-диагностируемая параллельная декомпози­ ция поведения состояний автомата ЛЗ, состоящая из трех компонент. Схема соединения компонент параллельной декомпозиции автомата ЛЗ показана на рис. 18, а компоненты Аи Л2 , Л 3 этой декомпозиции; представлены табл. 32, 33 и 34 соответственно.

Т а б л и ц а 32

Т а б л и ц а 33

Т а б л и ц а 34

О

1

 

О

1

 

О

- I

ai

6.

а.,

b..

По

°з

Ьз

с3

а\

bl

а..

 

ь3

а3

аз

 

 

 

 

 

Сч

Пп

 

 

 

 

 

 

" 3

Введем обозначения:

А =

(ft, ft,

ft);

В =

( f t , a2 ,

Ь3 );

С =

(ft, a 2 )

с3 );

£> =

(ft, u 3 ,

ft);

£ =

(ft, b2,

ft);

F =

(ft,

ft,

с3);

G

=

(ft, ft,

a3 );

Я =

(ft, a2 ,

ft);

К = (ft,

ft,

c8 );

L

=

(ft, £>2,

ft);

/V =

(ft, ft,

ft);

О =

(ft,

ft,

c3).

В рассматриваемом примере

і/ = {А, В, С, D, Е, F, G, Н, К) и a(S) = = {Л, В, С, D, Е, G, К).

Для доопределения функции выходов Л автомата М строим отобра­ жение /, которое представлено табл. 35. Далее находим

V-U

=

{L,N,0),

<o(S)={(0,

0),

(0,

1),

(1,0),

(1, 1)},

 

9 =

{ L , N,

О}, П 0

= { Л ,

В, С;

D, Е,

F;

G, Н,

К;

L , N, О].

 

Принимая

Kj =

{(0, 1, 2}, убеждаемся, что неравенство |0|.<)УІ

— со (5)|

выполняется.

Задаем

отображение

у

соотношением

7 (L, N, О) =

(0,2) и доопределяем функцию

выходов

автомата

Ми

который

представлен

табл.

36.

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а 35

 

 

 

 

Т а б л и ц а 36

 

 

 

 

 

А

 

А

 

 

 

1

 

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В

 

В

 

А

Е

К

0

 

0

 

 

 

 

 

С

 

С

 

D

G

0

 

1

 

 

 

 

 

D

 

D

 

С

D

G

0

 

0

 

 

 

 

 

Е

 

Е

 

D

В

К

1

 

0

 

 

 

 

 

F

 

Е

 

Е

А

G

1

 

0

 

 

 

 

 

G

 

G

 

F

А

G

1

 

0

 

 

 

 

 

Н

 

G

 

G

Е

С

 

1

 

1

 

 

 

 

 

К

 

К

 

И

D

А

1

 

1

 

 

 

 

 

 

 

 

 

К

D

А

1

 

1

 

 

 

 

 

 

 

 

 

L

В

С

0

 

2

 

 

 

 

 

 

 

 

 

N

А

А

0

 

2

 

 

 

 

 

 

 

 

 

О

А

А

0

 

2

 

 

Из табл. 36 видно, что

 

 

 

 

 

 

 

 

 

 

 

Пл =

{А, С;

В;

 

D, Е,

F;

G, Я, К;

L , N,

О}.

 

Поскольку сеть, соответствующая автомату Мъ связна относительно ЛЗ и По ;> Пд, то она компонентно-диагностируема.

Г л а в а 6

Р А С Ш И Р Е Н И Я А В Т О М А Т О В

Одной из основных задач технической диагностики является задача обеспечения заданного уровня контроля и локализации неисправ­ ностей в процессе проектирования устройства. В работе [15] эта за­ дача сводится к задаче выведения в устройстве контрольных точек для достижения этого уровня.

В теории автоматов такую задачу можно сформулировать как задачу изучения методов преобразования заданного автомата в авто­ мат, который реализует заданный и для которого можно провести заданный тип эксперимента. Искомый автомат можно интерпрети­ ровать как автомат с контрольными точками. Преобразование дан­ ного автомата в автомат с контрольными точками может проводиться на этапе как абстрактного [18], так и структурного синтеза автома­ тов.

Данная глава посвящена изучению способов преобразования автомата в автомат, который можно интерпретировать как автомате выходными контрольными точками. Преобразованный автомат назы­ вается расширением исходного автомата. Рассматриваются методы построения такого расширения исходного автомата, для которого существует заданный эксперимент по распознаванию состояний.

Методы построения расширений автомата, рассматриваемые в этой главе, являются дальнейшим развитием идей работы [66]. Материалы главы частично основаны на работах [21—23].

6.1. О п р е д е л е н и е расширения автомата

Пусть заданы автоматы А = ( S A , Х А , YА, &А, У И В = ( S B , Х В , Ув, 6в, ^в)- Обобщим понятие реализации поведения состояний автомата, введенное в главе 5. Тройку отображений (а, і, £), где а : S A ->• SB,

І : ХА —*- Х В , £ : У в'-»- YA,

удовлетворяющих соотношениям

а (8А (s,

х)) = Ьв (а (s), і (*)),

l(XB(a(s),

i(x))) = XA(s, X)

для всех s £ SA, x £ X A , назовем представлением автомата А в авто­ мате В. Следуя работе [60] автомат В будем называть реализацией поведения состояний автомата Л, если существует такое представле­ ние (а, і, 0 автомата А в автомате В, для которого а — взаимно однозначное отображение.

Определение 6.1. Автомат В назовем расширением автомата А, если ХА = ХВ и существует такое представление (a, i , Q автомата А в автомате В, для которого і — тождественное преобразование, а а — взаимно однозначное отображение.

Из определения 6.1 следует, что расширение автомата есть част­ ный случай реализации поведения состояний автомата.

Термин «расширение» подчеркивает тот факт, что у автомата В может быть «богаче поведение», чем у автомата Л, т. е. у автомата В может быть больше различных выходных последовательностей, чем у автомата А .

Пусть на множестве SA X ХА задано отношение эквивалентно­ сти п. Известно, что каждому разбиению Е некоторого множества D ставится во взаимно однозначное соответствие отношение эквивалент­ ности є на множестве D, определяемое соотношением (d, g) £ є <-> <-> d s= g (E). В дальнейшем разбиение и соответствующее ему от­ ношение эквивалентности будем обозначать одинаковыми гречески­ ми буквами: большой — разбиение и малой — отношение эквива­ лентности.

Определение 6.2. Автомат С = ( S A , ХА, УС, б^, Хс) назовем соб­ ственным П-расширением автомата А , если Yc = У А X П И ХС (S, х) = (ХА (s, х), К (s, х)), где К (s, х) — класс разбиения П, содер­ жащий элемент (s, л-). Автомат В назовем it-расширением автомата А , если В есть расширение собственного я-расширения автомата А .

Легко видеть, что собственное я-расширенне автомата есть рас­ ширение этого автомата.

Каждому отношению эквивалентности є на множестве D един­ ственным образом соответствует отображение ХЕ: D Е, определя­ емое соотношением Хг (d) = є (d), где є (а) = \g\ (d, g) £ є} — класс эквивалентности (разбиения), содержащий элемент d. Произ­ вольному отображению X : D ~>- G единственным образом соответ­

ствует отношение

эквивалентности e ^ s D

х

D, называемое ядром

отображения X и определяемое соотношением

(d, g)

£ е\ <-+ X (d) =

=

Ь (ff)-

 

 

 

 

 

 

б, X)

 

Из сказанного следует, что любому автомату А =

(S, X,

Y,

ставится в соответствие пара (A', e>J, где

А ' = (S, X, б) —

автомат

Медведева и єх — ядро отображения X. Обратно, каждой паре (Л',

е),

где А ' = (S,

X,

б) — автомат Медведева,

є — некоторая

экви­

валентность на 5

х

X, соответствует автомат (Мили) Л = (5, X,

Е, б,

ЯЕ ), гдеЯЕ —отображение, соответствующее е. Поэтому в дальнейшем произвольную пару (Л', е) также будем называть автоматом Мили.

Каждому автомату (Л', е) можно поставить в соответствие

мно­

жество Рг

всех диагностических

последовательностей,

т. е.

таких

последовательностей р £ X*, для которых из равенства

Хе (s,

р) =

— К {t, р),

гдез, t £ S , следует равенство s = t.

 

автомат

Пусть Р

cz X*. Автомат (Л', є)

(и соответствующий ему

Л) назовем Р-диагностируемым, если Р s Ре -

 

(S, X,

Рассмотрим следующую задачу. Пусть дан автомат А =

Y, б, X) и некоторое множество Р £

X*, не содержащее пустой после­

довательности е. Требуется построить такое отношение эквивалент­ ности л на множестве S X X, чтобы собственное я-расширение авто­ мата являлось Р-диагностируемым. Покажем, что эта задача всегда

имеет тривиальное решение. Для этого

полагаем, что

я =

^sxx,

где iSxx — тождественное преобразование

множества 5 X X.

Пусть

С — собственное я-расширеиие автомата

А . Покажем,

что

любой

символ х £ X будет для автомата С диагностической последователь­ ностью и тем самым покажем, что эквивалентность я есть решение поставленной задачи.

 

Пусть s и t — произвольно

выбранные состояния автомата С и

s ф t. По определению 6.2, Хс (s, х)

=

А

(s, х),

К (s, х)) и Хс

(t, х)

=

=

А (t, х), K{t, х)). Поскольку я =

isxx и s ф:

t, то (s, х)

(г!, х) (П)

и,

следовательно,

%с (s, х) Ф

Хс

(t,

х).

Это

означает,

что х

диагностическая последовательность

для

автомата С, что и требо­

валось доказать.

 

 

 

 

 

 

 

 

 

Поставленную

выше задачу

естественно интерпретировать как

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

ляло

определить состояние автомата. При этом контрольными

точ­

ками

естественно считать те выходные каналы я-расширения,

на

которых наблюдаются сигналы, соответствующие

классам разбие­

ния

П.

 

 

Поскольку задача построения Р-диагностируемого

я-расширения

может иметь несколько решений, то при выборе одного из них можно руководствоваться следующим критерием: искомое отношение эк­ вивалентности я должно иметь минимальное число классов эквива­ лентности. Этот критерий интерпретируется как критерий построе­ ния минимального числа выходных контрольных точек. Очевидно, что задача выбора отношения эквивалентности я с минимальным чис­ лом классов эквивалентности может быть решена перебором. Нашей целью является рассмотрение методов решения этой задачи, умень­ шающих перебор.

6.2. Задача с и н т е з а расширений автомата

Целью настоящего раздела является построение такого расширения исходного автомата, что любая входная последовательность из заранее заданного множества последовательностей будет для постро­ енного автомата диагностической.

Введем необходимые определения и обозначения. Напомним, что

автоматом

Рабина — Скотт

[36] называется пятерка объектов

В = (5, X ,

б, s0, F), где 5,

X — конечные непустые множества со­

стояний и входных символов соответственно, б — функция переходов автомата, s0 — начальное состояние, F — множество заключитель­ ных или представляющих состояний. Автомату Рабина — Скотт В

ставится в

соответствие

множество W (В) = {р\6

(s0 , р) £

F],

ко­

торое называется событием , представленным в автомате В .

 

 

 

Подмножество

Р Е

X* называется регулярным событием, если

существует

автомат Рабина — Скотт

В , представляющий

событие

W

(В), равное Р . Известно [18], что если Р , Q — регулярные события

из

X*, то регулярными

являются и следующие события: Р U

Q,

Р

Г)

Q , P

- Q , P

• Q =

{pq/p

£ Р Л

Ч Є Q),

Р*

=

{Р/Р

= е

V

\j3k

ЗРІ

pk£P

Pi •••

Pk)}- Событие P

• Q

называется

про­

изведением событий Р и Q, а событие Р* — итерацией события Р .

Пусть задан некоторый автомат Л = (S, X, Y, б, X) и регулярное событие Р є Х * , не содержащее пустой последовательности. Нашей задачей является построение такого отношения эквивалентности

яЕ (S X X ) 2 с минимальным числом классов, чтобы собственное л-расширение автомата А было Р-диагностируемым.

Учитывая, что автомат

(А',г),

соответствующий

автомату А,

имеет множество диагностических

последовательностей

.Ре, и пола­

гая Q равным Р — Рг, нашу

задачу можно сформулировать следую­

щим образом.

 

 

 

Задача синтеза. Дан автомат Медведева А' = (S, X,

б) и регуляр­

ное событие Q <=^ X*, не содержащее е. Построить такое отношение эквивалентности я с минимальным числом классов, чтобы автомат (А', я) был Q-диагностируемым.

В силу сказанного в разделе 6.1, эта задача всегда имеет решение с помощью перебора. Рассмотрим методику решения задачи синтеза для определения возможного уменьшения перебора.

 

Вначале рассмотрим частную задачу синтеза. Дан автомат

Мед­

ведева А' = (S, X,

б), регулярное событие Q s

X* — [е]

и состоя­

ния s0, t0

£ S, s0

t0. Найти такую эквивалентность я на множестве

5

X X с

наименьшим

числом классов,

чтобы

Q s

Ря

(s0 .

^о) =

=

{р/Х (s0 , р) Ф

X (t0,

р)}. Не уменьшая

общности, можно предпо­

ложить,

что для

заданного события Q выполняется

соотношение

QX* Е

Q, поскольку, если последовательность р диагностическая,

то для всех р' £

X* последовательность рр' тоже диагностическая.

 

Решение частной задачи будет получено в результате построения

ряда автоматов Рабина — Скотт. Сначала по автомату А'

построим

автомат Рабина — Скотт А = (Т, X, б, {s„, t0), а). Здесь Т — это множество всех неупорядоченных пар {s, t), s, t £ S, дополненное

специальным

элементом а, б

({s, t), х)

= б (s,

х) U 8 (t, х) и

6 (а, х) — а.

Из определения

функции

переходов

автомата Л сле­

дует, что представляющее состояние а автомата не достижимо из на­

чального состояния {s0 , t0\, т. е. W (Л) =

0 .

Пусть

автомат

Раби­

на — Скотт В =

(D,

X, A, d0, f) есть минимальный автомат, пред­

ставляющий событие

Q. Поскольку

QX* s

 

Q, то у автомата В

имеется единственное

представляющее состояние f. Построим авто­

мат G = (D х Т,

X,

6G , g0,

F ) , где 6G

(d,

[s,

t),

x) = (A

(d, x),

б ({s, t], x)), go =

(d0,

{So, t0))

и F,

если g

=

(f,

[s,

Ц) для некото­

рых s, t £ S.

 

 

 

 

 

 

 

 

 

 

 

В дальнейшем автоматом G будем называть подавтомат автомата G,

порожденный начальным состоянием g 0 .

Очевидно, что

W (G) — Q.

Напомним, что пара (g, р), где g £ D

X Т и р

£ X*,

называется

переходом автомата G. Переход (g, х) назовем конечным переходом для автомата G, если g$ F и 6а (q, х) £ F. Множество всех конеч­ ных переходов автомата обозначим через Z (G).

Теперь по автомату G построим автомат Рабина — Скотт Л я , учитывающий структуру автомата Л' и представляющий событие

W (Ал),

содержащее

Q. Автомат Л я = (Т, X,

бя , {s0, t0},a) определя­

ется

так:

 

 

 

 

 

б я

({s,

t),x) = а,

если

((d, {s, t}), x)£Z(G)

для некоторого

d,

 

 

6({s, t),

x) в противном случае.

^ ^

Вдальнейшем автоматом Ал будем называть подавтомат автомата

Лл , порожденный начальным состоянием {s0 , t0). С целью нахожде­

ния события

W (Ап) рассмотрим некоторые свойства автомата

Л я .

Ядром Рп

регулярного события Р назовем множество всех

тех

последовательностей р из Р, для которых выполняется соотношение:

q

<Z р

q $

Р.

Напомним, что q •< р, если для некоторого

р'

£Х*-

\е)

qp'

= р.

Учитывая соотношение QX* ^ Q, получаем равенство Q„X* =

=Q.

Пусть для некоторых q £ X* и х £ X qx £ фя и W (q) =

=(р/бл ({s0 , t0), P) — бя ({s0 , t0], Я)}- Имеет место такая лемма.

 

Лемма 6.1. qx£

QH

-»- W {q)xX*

<= W

 

я).

 

 

 

 

 

 

 

 

" Д о к а з а т е л ь с т в о .

Пусть qx £ Q„.iИз определения ядра

следует, что

0 (g0>

°), *)

£ Z (G). Тогда по

(6.1), учитывая

равен­

ство g„ =

 

(d0, (s0 , *„}), получаем соотношение б я

(б„ ({s0 , t0},

q), х)

=

— а. Из

 

последнего

 

равенства

вытекает соотношение W (q)xX*

 

s

S

W (Ал),

что и требовалось

 

доказать.

 

 

 

 

 

 

 

 

 

 

 

Лемму 6.1 можно записать в следующем виде: (\j „д:е<эя W (q) хХ*)

s

s

W (Ал).

 

Используя

последнее

соотношение

и

соотношение

Q_nX* =

 

Q,

получаем

следствие.

 

 

 

 

 

 

 

 

 

 

 

 

 

Следствие 6.1.

Q є

W (АЛ).

Найдем событие, представляемое

в

автомате

 

Ая.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Лемма 6.2. W я ) =

\}„х^я

 

W

(q)xX*.

6.1

(J

 

 

 

 

 

 

s

 

Д о к а з а т е л ь с т в о .

 

По

лемме

 

W

(q)xX*

 

<=

W (Ап).

Покажем,

что

 

W (АЛ)

=

[}

W

(q)xX*.

 

Пусть.

р £ W (Ля )

и р 2 — такой

начальный

отрезок

последовательности

р,

ч т о р х £

Я Я ). Следовательно, 6 n ( { s 0 , - i 0 } , p 1 ) = а. Тогда, если по­

ложить, что р! = р2л; и б я ({s0 ,

£0 j, р2 ) =

js, і}, то по

(6.1) существу­

ет d

£ D,

 

для которого ((d,

{s,

t}), х) £ Z (G).

Поскольку

состояние

(d,

{s,

t})

автомата G достижимо из (d0, {s0 , t0})

и поскольку

W

(G)

=

=

Q,

то

существует

последовательность

q,

для

которой

бс

(d0,

{So,

t0),

q) = (d,

{s,

 

ф

и

qx

£ Qn. Тогда

p2x

£ W (q)xX*

a

p £

£

W

(q)xX*.B

силу произвольности последовательности p W (Ал)

 

s

=;

 

 

U

 

^

(я)хХ*,

что и доказывает лемму.

 

 

 

 

 

 

 

 

 

 

По множеству Z (Ля ) конечных переходов автомата Л я

определим

отношение ф на 5

X

X. Оно задается формулой

 

 

 

 

 

 

 

 

 

 

 

((s, X

l ) , (t,

х2))£ч>^(х1

 

 

= x2-*({s,

 

t),

хг) £

Z(An)).

 

 

(6.2)

Из (6.2) следует, что отношение ф симметрично. Преобразуем авто­ мат Л л , изменяя его функцию переходов, в некоторый автомат, у ко-

торого множество его конечных переходов порождало бы по (6.2) симметричное и рефлексивное отношение ф. Пусть автомат Рабина — Скотт Л л = (Г, X, бя , {% М> а) определяется следующим образом:

о я ({s,

г}, х) =

\а,

если

выполняется условие У (s, t, х),

 

 

<_ ..

.

 

 

 

 

 

 

 

 

л

({s, г}, X) — в противном случае.

 

 

Условие

У (s,

t,

х)

имеет

вид б (s,

х) — б (£, х)

и

существует

последовательность р, для которой б я ({s, t), хр) — а.

 

 

 

 

В дальнейшем автоматом Л я будем называть подавтомат автома­

та Л я , порожденный состояниями, достижимыми из

начального со­

стояния.

 

 

 

 

 

 

 

 

 

 

Рассмотрим

множество

конечных

переходов

автомата

Л я .

Из определения функции 5Я

и того, что все состояния автомата

Л я

достижимы, из начального состояния следует, что если

({s, t),

х)

£

£ Z я ), то

s Ф

t. Пусть отношение ф порождается

множеством

Z я ) по формуле (6.2). Тогда легко видеть, что ф симметрично и

рефлексивно. Далее, из определения функции переходов б л следует,

что W (Ля) => W я ) э

Q.

 

 

 

 

 

 

Пусть ф отношение, определенное множеством Z (Ля ) по фор­

муле (6.2), и я — произвольное отношение эквивалентности на мно­

жестве 5

X

X.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Теорема

6. J. я

s

Ф <-> Q Е

Рл

(s0> to)-

 

 

Q. По следствию

 

Д о к а з а т е л ь с т в о .

Пусть я

s

Ф и р £

6.1

р

£ W я ). Пусть

qx — начальный отрезок

последовательнос­

ти

р,

для

которого

qx

£ Wa

(А'„)

и б я

({s„, t0\,

q)

=

[s,

t\. Тогда

({s,

t), x)

£ Z (A'n) и no (6.2) ((s, x), (t,

x))

ф. По

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

я s

ф и,

значит,

((s,

0 .

 

*))

(2 я.

Из

определения

функции

б я

следует, что б (s0 , q)

(J б (<0, 9) =

{s, і). Для простота положим, что

б (s0 ,

9) =

s, б (t0,

q)

=

1 Тогда Хл

(s, х)

Ф

X (t,x)

и, следовательно,

Х„ (s0 , qx) Ф

Xn (t0,

qx).

Поскольку

qx <; p,

получаем, что Xn [s0,p)

Ф

Ф

 

(^o> p)> T-

e-

P

Рл (s0 .

A>)- Таким

образом,

если

я s

ф, то

<3 =

Р Я ( %

О -

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пусть теперь Q є

Р я

(s0,

4) и ((s> *і)>

 

хг))

я. Если

хх ^= х2 ,

то по (6.2) ((s, Xj), (і, х2 ))

£ ф. Пусть x x =

x2 =

x и пусть /? —

неко­

торая последовательность, для которой бд ({s0 ,

/ 0 ) , /?) =

{s, Ц. По­

скольку {s,

достижимо из

начального состояния, то такая после­

довательность

существует. Из

равенства

°п (а, х')

=

а,

где

х'

произвольное,

следует,

что

Ая

(s„, рх)

=

Ая

(/„,

рх),

т.

е. рх

^

g

Р я

(s0 , £0). По предположению

рх

&

Q, и,

значит, ({s, і}, х)

^

g Z(An).

Тогда по

(6.2)

((s,

х),

(t, х))

£ ф. Таким

образом,

если

Q s

Р я (so>

 

то я =

ф, что и доказывает теорему.

 

 

 

 

 

 

Теорема 6.1 показывает, что частная задача синтеза равносильна

задаче нахождения отношения эквивалентности, включающегося в отношение ф и имеющего минимальное число классов эквивалент­

ов

ности. Заметим, что по заданным Q, А'

= (S, X,

б) и s0,

t0 £ S авто­

мат Ал,

а значит, и ср строится единственным образом,

без перебора.

Задача

нахождения эквивалентности

я с ф с

наименьшим числом

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

Вернемся к задаче синтеза. Пусть заданы А'

=

(S, X, б) и регу­

лярное событие Q s

X* [е].

Решая частную

задачу

синтеза

для всех s, і £ S, s Ф

t, получим множество отношений cps(.

По этому

множеству определим отношение

Ф = П <Ps<-

Нетрудно

показать,

что для полученного ф и произвольного отношения эквивалентности л s (5 X X)2 теорема 6.1 выполняется. Поэтому задача синтеза равносильна задаче нахождения отношения эквивалентности, вклю­ чающего в ф и имеющего минимальное число классов.

6.3. Алгоритм нахождения эквивалентности на м н о ж е с т в е с заданным отношением

В настоящем разделе рассматривается следующая задача: по задан­ ному рефлексивному и симметричному бинарному отношению ф на ко­ нечном множесте/V построить эквивалентность я ^ ф с минимальным числом классов эквивалентности. К этой задаче, кроме задачи син­ теза, сводятся многие задачи теории автоматов, например нахожде­ ние индекса обратной связи при реализации автомата на сдвиговых регистрах. В разделе 6.4 будет рассмотрена модифицированная за­ дача синтеза. Эта задача будет представлена в виде двух задач, од­ ной из которых является задача построения эквивалентности я.

Решение поставленной задачи связано со значительными труд­ ностями, и решение, отличное от перебора, пока не найдено. Поэтому представляет интерес нахождение алгоритмов приближенного реше­ ния этой задачи и изучение свойств таких алгоритмов.

В данном разделе предлагается алгоритм построения максималь­ ной эквивалентности л s ф. Исследуются свойства этого алгоритма, находятся оценки числа классов эквивалентности я. При этом под отношением будем понимать симметричное и рефлексивное отноше­ ние.

Пусть

N = {1,

п\ и пусть задано некоторое отношение

Ф с N X

N.

 

Определение 6.3. Эквивалентность л на множестве N называется максимальной, если для нее одновременно выполняются следующие

условия:

 

 

а) я Е ф;

ф, если я 1 Ф л, то л 1

ct. л.

б) для любой эквивалентности я1 s

Эквивалентность л на множестве N назовем оптимальной,

если

для нее выполняются условия а);

 

 

в) для любой эквивалентности л 1 s

ф число классов эквивалент­

ности я не превосходит числа классов эквивалентности л1 .

9

2—1686

129

Соседние файлы в папке книги из ГПНТБ