Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсач автоматы v2 - копия.doc
Скачиваний:
40
Добавлен:
17.09.2019
Размер:
316.42 Кб
Скачать

3. Декомпозиция автомата

Декомпозируем его на автоматы с двумя состояниями.

Алфавит состояний А={1, 2, 3, 4, 5, 6, 7, 8}, алфавит входов Z={z1, z2, z3, z4 },алфавит выходов W={ w1, w2}.

Выберем разбиения множества состояний А произвольно, но так, чтобы они были ортогональны. Пусть

1(А) = { 1 2 3 4, 5 6 7 8 }={ B1 , B2 } = B;

2(А) = { 1 2 5 6, 3 4 7 8 }= { C1 , C2 } = C;

3(А) = { 1 5 3 7, 2 6 4 8 } = { D1 , D2 } = D.

Проверка показывает, что 1(А) x 2(А)= { 1 2, 3 4 , 5 6, 7 8 }, а 1(А) x 2(А) x 3(А)= {1, 3, 5, 7, 2, 4, 6,8} =0(А), т.е. 1(А), 2(А), 3(А) – ортогональны.

Для каждого разбиения i построим функцию Fi: AxZi, на базе функции . Эта функция определяет реакции автоматов Si на внешнее воздействие zi, при условии, что автомат S (и реализующий его автомат SN) находится в состоянии k.

Определим для функций Fi разбиения i на множестве А так, чтобы для любых аk и аm из множества А условие:  z Z Fi(ak, z)= Fi(am, z) выполнялось тогда и только тогда, когда ak и am принадлежат к одной группе разбиения i.

F1

1

2

3

4

5

6

7

8

z1

B2

B1

B2

B1

--

B1

B2

B1

z2

B1

--

B2

B1

B2

B2

B1

B1

z3

B1

B2

B2

B2

B1

B1

B1

B1

z4

B1

B1

--

B1

B1

--

B2

B1

F2

1

2

3

4

5

6

7

8

z1

C2

C1

C1

C2

--

C1

C1

C1

z2

C2

--

C2

C1

C1

C2

C2

C1

z3

C1

C2

C1

C1

C2

C1

C1

C2

z4

C1

C2

--

C1

C1

--

C1

C1

F3

1

2

3

4

5

6

7

8

z1

D2

D1

D2

D1

--

D1

D2

D1

z2

D2

--

D1

D1

D2

D1

D1

D2

z3

D1

D1

D2

D1

D2

D1

D2

D1

z4

D1

D2

--

D1

D1

--

D1

D2

В результате получим: 1 = { 1, 24 3, 56, 7, 8}, 2 = { 1, 2, 367, 4, 58}, 3 ={1, 26, 37, 4, 5, 8}

Определим для функции Fi ещё одно разбиение на множестве Z – i , так, чтобы для любых zk и zm из множества Z условие aA Fi (a, zk ) = Fi(a, zm) выполнялось тогда и только тогда, когда zk и zm принадлежат к одной группе разбиения i. Получим

1 = { z1, z2, z3, z4}={u1, u2, u3, u4}=U,

2 = { z1, z2, z3, z4}={v1, v2, v3, v4}=V,

3 = { z1, z2, z3, z4}={t1, t2, t3, t4}=T

Найдём все возможные произведения пересечений:

1(A)x2(A) = {12, 34,56, 78},

1(A) x 3(A) = {13, 57, 68, 24},

2(A)x 3(A)= {15, 26, 37, 48 },

1(A)x2(A)x3(A)={1, 3, 5, 7, 2, 4, 6, 8}

1 > 1(A) x2(A) x3(A), значит Z1`=2(A)x 3(A)= {15, 26, 37, 48 } = {p1, p2, p3, p4 } = P,

первый автомат зависит от второго и третьего.

2 > 1(A) x2(A) x3(A), значит Z2`=1(A)x 3(A)= {13, 57, 68, 24} = {m1, m2, m3, m4 } = M,

второй автомат зависит от первого и третьего.

3 > 1(A) x2(A) x3(A), значит Z3`=1(A)x 2(A)= {12, 34,56, 78} = {h1, h2, h3, h4 } = H,

третий автомат зависит от первого и второго.

Рассмотрим воздействия автоматов друг на друга с помощью введенных выше обозначений

1

B1

B2

2

C1

C2

2

D1

D2

p1/u1

B2

--

q3/q4

m1/v1

C2

C1

e3

h1/t1

D2

D1

r3

p1/u2

B1

B2

q2

m1/v2

C2

C2

e4

h1/t2

D2

--

r3/r4

p1/u3

B1

B1

q1

m1/v3

C1

C1

e1

h1t3

D1

D1

r1

p1/u4

B1

B1

q1

m1/v4

C1

--

e1/e2

h1/w4

D1

D2

r2

p2/u1

B1

B1

q1

m2/v1

--

C1

e1/e3

h2/t1

D2

D1

r3

p2/u2

--

B2

q2/q4

m2/v2

C1

C2

e2

h2/t2

D1

D1

r1

p2/u3

B2

B1

q3

m2/v3

C2

C1

e3

h2/t3

D2

D1

r3

p2/u4

B1

--

q1/q2

m2/v4

C1

C1

e1

h2/t4

--

D1

r1/r3

p3/u1

B2

B2

q4

m3/v1

C1

C1

e1

h3/t1

--

D1

r1/r3

p3/u2

B2

B1

q3

m3/v2

C2

C1

e3

h3/t2

D2

D1

r3

p3/u3

B2

B1

q3

m3/v3

C1

C2

e2

h3/t3

D2

D1

r3

p3/u4

--

B2

q2/q4

m3/v4

--

C1

e1/e3

h3/t4

D1

--

r1/r2

p4/u1

B1

B1

q1

m4/v1

C1

C2

e2

h4/t1

D2

D1

r3

p4/u2

B1

B1

q1

m4/v2

--

C1

e1/e3

h4/t2

D1

D2

r2

p4/u3

B2

B1

q3

m4/v3

C2

C1

e3

h4/t3

D2

D1

r3

p4/u4

B1

B1

q1

m4/v4

C2

C1

e3

h4/t4

D1

D2

r2

B1

B2

C1

C2

D1

D2

q1

B1

B1

e1

C1

C1

r1

D1

D1

q2

B1

B2

e2

C1

C2

r2

D1

D2

q3

B2

B1

e3

C2

C1

r3

D2

D1

q4

B2

B2

e4

C2

C2

r4

D2

D2

Автомат S1:

q1=00; u1=00; p1=00;

q2=01; u2=01; p2=01;

q3=10; u3=11; p3=10;

q4=11; u4=10; p4=11;

Найдем функцию Q:

u\p

00

01

11

10

00

q3

q1

q1

q4

01

q2

q2

q1

q3

11

q1

q3

q3

q3

10

q1

q1

q1

q2

Найдем функцию Q1:

x1x2\cd

00

01

11

10

00

1

0

0

1

01

0

0

0

1

11

0

1

1

1

10

0

0

0

0

Q1=

Найдем функцию Q2:

x1x2\cd

00

01

11

10

00

0

0

0

1

01

1

1

0

0

11

0

0

0

0

10

0

0

0

1

Q2=

Автомат S2:

e1=00; v1=00; m1=00;

e2=01; v2=01; m2=01;

e3=10; v3=11; m3=10;

e4=11; v4=10; m4=11;

Найдем функцию E:

v\m

00

01

11

10

00

e3

e1

e2

e1

01

e4

e2

e1

e3

11

e1

e3

e3

e2

10

e1

e1

e3

e1

Найдем функцию E1:

x1x2\bd

00

01

11

10

00

1

0

0

0

01

1

0

0

1

11

0

1

1

0

10

0

0

1

0

E1=

Найдем функцию E2:

x1x2\bd

00

01

11

10

00

0

0

1

0

01

1

1

0

0

11

0

0

0

1

10

0

0

0

0

E2=

Автомат S3:

r1=00; w1=00; h1=00;

r2=01; w2=01; h2=01;

r3=10; w3=11; h3=10;

r4=11; w4=10; h4=11;

Найдем функцию R:

x1x2\h

00

01

11

10

00

r3

r3

r3

r1

01

r3

r1

r2

r3

11

r1

r3

r3

r3

10

r2

r1

r2

r1

Найдем функцию R1:

x1x2\bc

00

01

11

10

00

1

1

1

0

01

1

0

0

1

11

0

1

1

1

10

0

0

0

0

R1=

Найдем функцию R2:

x1x2\bc

00

01

11

10

00

0

0

0

0

01

0

0

1

0

11

0

0

0

0

10

1

0

1

0

R2=

Возникает необходимость закодировать функцию выхода g

Функция g реализует выход автомата.

Установим соответствие между состояниями компонентных автоматов и исходного автомата.

b1 c1 d1

000

1

b1 c1 d2

001

2

b1 c2 d1

010

3

b1 c2 d2

011

4

b2 c1 d1

100

5

b2 c1 d2

101

6

b2 c2 d1

110

7

b2 c2 d2

111

8

z \ bcd

1

2

3

4

5

6

7

8

b1c1d1

b1c1d2

b1c2d1

b1c2d2

b2c1d1

b2c1d2

b2c2d1

b2c2d2

z1

W2

W1

W1

W1

W2

W2

W1

W2

z2

W2

--

W1

W2

W1

W2

W1

W2

z3

W2

W1

W2

W2

W1

W1

W1

W1

z4

W2

--

--

W2

W2

--

W2

W2

Закодируем W1 = 1, W2=0

Получим функцию

x1x2\bcd

000

001

011

010

110

111

101

100

00

0

1

1

1

1

0

0

0

01

0

--

0

1

1

0

0

1

11

0

1

0

0

1

1

1

1

10

0

--

0

--

0

0

--

0

Функция выхода будет иметь вид

g=

Схема сети компонентных автоматов

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]