Automaty Sposoby ustawiania Podstawowe definicje n Skończone. Metody ustawiania automatów cyfrowych Automaty skończone sposoby ustawiania i podstawowe właściwości

Podstawowe definicje n Automat skończony to układ M =(А, B, S, y), w którym n n А = (а 1, .. . , am) jest alfabetem o skończonym wejściu, B =(b 1, . . . ., bk ) - alfabet skończonego wyjścia, S =(s 1, .. . . , sn) - alfabet skończonego stanu, : A S S - funkcja przejścia, y: A S B - funkcja wyjściowa. n Jeżeli w automacie M wybrany jest jeden stan, zwany stanem początkowym (zazwyczaj będzie uważane, że jest to s 1), to powstały automat nazywamy początkowym i oznaczamy (M, s 1). n Istnieją dwa sposoby zdefiniowania automatu: tabela automatów, diagram przejść

Tabela automatu n 1) 2) 3) 4) Przykład: ustaw automat na odczytywanie słowa „001”, jeśli wprowadzono znaki „0” i „1”. Alfabet wejściowy A=(0, 1) Alfabet wyjściowy A=(Y, N) Alfabet stanu S=(s 0 "" , s 1 " 0" , s 2 " 00" s 3 "001" ) Automatyczna tabela na dwa sposoby . 1) Wiersze to stany automatu. Kolumny są symbolami wejściowymi. Na przecięciu wierszy i kolumn wskazane są funkcje, y. 2) S, A, y są podane w kolumnach. Ćwiczenie 25 Zbuduj automat do wyszukiwania słowa CAKADU SA 0 1 S 0 "" S 1, N S 0, N S 1 "0" S 2, N S 0, N S 2 "00" S 2, N S 3, Y S 3 "001 " S 1 , N S 0, N S In y S 0 0 S 1 N 1 S 0 N 0 S 2 N 1 S 3 T 0 S 1 N 1 S 0 N S 1 S 2 S 3

Diagram przejść n Zorientowany multigraf, zwany diagramem przejść, jest multigrafem, przejściem lub grafem odpowiadającym stanom. Jeżeli (Si, aj)=Sk, y(Si, aj)=bl, to od wierzchołka Si do wierzchołka Sk jest łuk, na którym jest zapisany (aj, bl) n Na każdym wierzchołku si warunki poprawności są : 0 1 S 0 "" S 1, N S 0, N S 1 "0" n Wierzchołki, y S 2, N S 0, N S 2 "00" S 2, N S 3, Y S 3 "001" S 1, N S 0, N 1, N spełnione 1) dla dowolnej litery wejściowej aj ma łuk wychodzący z si, na którym zapisano aj (warunek zupełności); 2) dowolna litera aj występuje tylko na jednej krawędzi wychodzącej z si (warunek spójności lub determinizmu) S 0 S 1 (0, N) (1, N) (0, N) (1, N) S 2 (1, Y) S 3

Automat i słowa wejściowe n Dla danego automatu M jego funkcjami są M i y. M można zdefiniować nie tylko w zestawie A wszystkich liter wejściowych, ale także w zestawie A* wszystkich słów wejściowych. n Dla dowolnego słowa wejściowego = aj 1 aj 2. . . ajk (si, aj 1 aj 2… ajk) = ((… (si, aj 1), aj 2),… ​​ajk-1, ajk). y (si, aj 1 aj 2.... ajk) = y((... (si, aj 1), aj 2),... ajk-1, ajk).

Przykład: Automaty i słowa wejściowe Przykład: = 0101 (S 1, 0101) = ((S 1, 0), 1) (S 1, 0101) = (((S 2, 1), 0), 1) (S 1, 0101) = ((S 3, 0), 1) (S 1, 0101) = (S 1, 1) (S 1, 0101) = S 0 0 1 S 0 "" S 1, N S 0, N S 1 "0" S 2, N S 0, N S 2 "00" y(S 1, 0101) = y((((S 1, 0), 1) y(S 1, 0101) = y(((S 2 , 1), 0), 1) y(S 1, 0101) = y((S 3, 0), 1) y(S 1, 0101) = y(S 1, 1) y(S 1, 0101) \u003d N, y S 2, N S 3, Y S 3 „001” S 1, N S 0, N

Mapowanie automatyczne n Ustalmy stan początkowy S 0 w M i dla każdego słowa wejściowego = a 1 a 2. . . ak przypisujemy słowo w alfabecie wyjściowym: = y (S 0, a 1) y(S 0, a 1 a 2). . . y(S 0, a 1... ak). (3 a) n Ta korespondencja, która odwzorowuje słowa wejściowe na słowa wyjściowe, nazywana jest mapowaniem automatycznym n Jeśli wynikiem zastosowania operatora do słowa jest słowo wyjściowe, zostanie to odpowiednio oznaczone przez M() = .

Przykład: Mapowanie automatyczne Przypiszmy słowo wejściowe = 0101 do słowa w alfabecie wyjściowym: = y (S 0, 0) y(S 0, 01)y(S 0, 0101). y (S 0, 0)= N, y 0 S 0 "" S 1, N S 0, N S 1 "0" S 2, N S 0, N S 2 "00" S 2, N S 3, T 1 S 3 "001 » S 1, N S 0, N y(S 0, 01) = y((S 0, 0), 1) = y(S 1, 1) = N y(S 0, 010) = y(((S 0, 0, 1), 0) = y((S 1, 1), 0) = y(S 0, 0)=N y(S 0, 0101) = y((((S 0, 0) , 1) =y(((S 1, 1), 0), 1) = = y((S 0, 0), 1) = y(S 0, 1) = NNNN

Automatyczne właściwości wyświetlania 1) słowa i = M() mają tę samą długość: | | = | | (właściwość zachowania długości); 2) jeśli = 1 2 i M(1 2) = 1 2, gdzie | 1| = | 1|, to M(1) = 1; innymi słowy, obraz odcinka o długości i jest równy odcinkowi obrazu o tej samej długości.

Rodzaje automatów Ogólny model automatu skończonego (S-skończony), który był rozważany wcześniej, nazywa się automatem Mealy'ego. n Automat nazywamy autonomicznym, jeśli jego alfabet wejściowy składa się z jednej litery: A=(a). Wszystkie słowa wejściowe automatu autonomicznego mają postać aa. . . a. n Automat skończony nazywamy automatem Moore'a, jeśli jego funkcja wyjściowa zależy tylko od stanów, tj. dla dowolnych s, ai, aj y(s, ai) = y(s, aj). Funkcja wyjściowa automatu Moore'a jest naturalnie jednoargumentowa; jest zwykle oznaczana literą i nazywana jest funkcją znaków. Na wykresie automatu Moore'a wyjście jest zapisane nie na krawędziach, ale na górze.

Automat Moore n Twierdzenie: Dla każdego automatu Mealy'ego istnieje równoważny automat Moore'a. n Badając możliwości automatów wystarczy użyć automatów Moore'a. Jest to wygodne, ponieważ automat Moore'a można traktować jako automat bez wyjść, których stany są różnie etykietowane.

Przykład automatu autonomicznego SA a S 1 S 3, 0 S 2 S 4, 0 S 3 S 4, 0 S 4 S 7, 0 S 5 S 4, 2 S 6 S 5, 0 S 7 S 6, 1 S 8 S 9, 0 S 9, 1 S S S S S A=(a), B=(0, 1, 2), S=(S 1, S 2, S 3, S 4, S 5, S 6, S 7, S8, S9)

Stany nie do odróżnienia n Niech M i T będą dwoma automatami z tymi samymi alfabetami wejściowymi i wyjściowymi. Mówi się, że stan s automatu M i stan r automatu T są nie do odróżnienia, jeśli dla dowolnego słowa wejściowego M(s,) = T(r,). n Automaty M i T nazywamy nieodróżnialnymi, jeśli dla dowolnego stanu s automatu M istnieje stan r automatu T, który jest od niego nieodróżnialny i odwrotnie, dla dowolnego r od T istnieje stan nieodróżnialny s od M. n Stany nierozróżnialne nazywane są ekwiwalentnymi

Automat minimalny n Przejście od automatu M do automatu równorzędnego nazywamy przekształceniem równoważnym automatu M. n Można postawić różne problemy ze znalezieniem automatów, które są równoważne danemu automatowi i mają określone właściwości. Wśród takich problemów najbardziej badanym jest problem minimalizacji liczby stanów automatu: wśród automatów równoważnych M znajdź automat o najmniejszej liczbie stanów - automat minimalny.

Aspekty „pracy” automatów n Można wyróżnić dwa główne aspekty „pracy” automatów: 1) automaty rozpoznają słowa wejściowe, tj. odpowiadają na pytanie, czy słowo podane na wejściu należy do danego zbioru (te są automatami do rozpoznawania); 2) automaty przekształcają słowa wejściowe na słowa wyjściowe, tj. realizują odwzorowania automatów (automaty transformatorowe).

AT w ramach metamatematyki n Przedmiot teorii algorytmów i systemów formalnych w ramach metamatematyki – jakie obiekty i działania na nich należy uznać za dokładnie określone, jakie właściwości i możliwości mają kombinacje działań elementarnych, co może, a co nie może być z ich pomocą. n Głównym zastosowaniem teorii algorytmów jest dowód niemożności algorytmicznego (tj. dokładnego i jednoznacznego) rozwiązania pewnych problemów matematycznych.

Algorytm n Algorytm jest receptą, która jednoznacznie określa proces transformacji danych początkowych do wymaganego rezultatu n Sam proces transformacji składa się z elementarnych dyskretnych kroków, których zastosowanie skończoną liczbę razy prowadzi do wyniku

Podstawowe typy algorytmów n Teoria algorytmów jest metateorią badającą różne (jakościowe i ilościowe) właściwości algorytmów. n Do badania właściwości jakościowych zdefiniowano 3 główne typy algorytmów: 1) Funkcje rekurencyjne 2) Maszyna Turinga 3) Kanoniczne systemy postów i normalne algorytmy Markowa.

Najprostsze funkcje rekurencyjne n S 1(x) = x+1 - funkcja zależy od jednej zmiennej x i jest równa x+1. n On(x 1…xn) =0 - funkcja zależna od n zmiennych i zawsze równa 0. n Imn(x 1…xn) = xm - funkcja zależna od n zmiennych i zawsze równa wartości zmiennej xm

Rekurencja pierwotna n Funkcja f(x 1…xn+1) jest otrzymywana przez algorytm pierwotnej rekurencji z funkcji g(x 1…xn) i h(x 1…xn+2) if f(x 1, …xn, 0) = g (x 1, …xn) (1) f(x 1, …xn, y+1) = h(z), gdzie z=f(x 1, …xn, y) (2) Funkcja f nazywa się pierwotną rekurencyjną , jeśli można ją uzyskać z najprostszych funkcji S 1, On, Imn przez skończoną liczbę operacji superpozycji i pierwotnej rekurencji.

Przykład n Aby udowodnić, że funkcja jest pierwotną funkcją rekurencyjną: 1) Zgodnie z równaniami (1) i (2), wyraźnie zdefiniuj funkcje g() i h(). 2) Pokaż, że g() i h() są najprostszymi funkcjami S 1, On, Imn lub prymitywnymi funkcjami rekurencyjnymi sprawdzonymi wcześniej. Ćwiczenie 26: Udowodnij, że funkcja f(x, y) = x+y jest pierwotną rekurencyjną Teza Churcha: Klasa algorytmicznie obliczalnych funkcji numerycznych pokrywa się z klasą wszystkich funkcji rekurencyjnych.

Maszyna Turinga n Maszyna Turinga zawiera: n 1) Pamięć zewnętrzna - taśmę n komórek. Każda i-ta komórka jest w stanie ai. Alfabet stanów jest ustawiony. Taśma może być nieskończona w obu kierunkach. Puste stany są pomijane. n 2) Pamięć wewnętrzna urządzenia - urządzenie jest aktualnie w stanie qi. Podano alfabet stanu wewnętrznego. Stan początkowy q 1, końcowy q 0 lub qz. n 3) Wskaźnik - wskazuje bieżącą komórkę i porusza się po taśmie. n 4) Urządzenie sterujące - odczytuje charakter komórki wskazywanej przez wskaźnik. Zgodnie z programem zmienia stan komórki i przesuwa wskaźnik.

Stan i program MT n Stan maszyny Turinga nazywany jest słowem n ​​n n n a 1…ak-1 qi ak…ar , utworzonym przez wstawienie symbolu stanu wewnętrznego przed monitorowaną komórką. Program maszyny Turinga to zbiór poleceń, które mogą być wykonywane przez maszynę qi aj qi' aj' D, gdzie qi jest stanem wewnętrznym maszyny aj jest stanem monitorowanej komórki qi' jest nowym stanem maszyny aj' to nowy znak zapisywany do monitorowanej komórki D = ( L, R, E) - znaki symbolizujące przesunięcie wskaźnika o jedną komórkę odpowiednio w lewo, w prawo i brak przesunięcia.

Przykład MT Zadanie 27: Znajdź stan końcowy maszyny Turinga Alfabet początkowy: A = (0, 1) Alfabet stanu wewnętrznego: Q = (q 0, q 1, q 2) Program: ( 1) q 10 q 20 R, 2) q 20 q 01 E, 3) q 11 R, 4) q 21 R ) Słowo początkowe: q 111

Przykład MT Control 28 Znajdź końcowy stan maszyny Turinga Alfabet początkowy: A \u003d (0, 1, ) Alfabet stanu wewnętrznego: Q \u003d (q 0, q 1, q 2, q 3) Program: ( 1 ) q 1 q 00 R, 2) q 11 q 20 R, 3) q 21 R, 4) q 2 q 31 L, 5) q 30 q 00 R, 6) q 31 L) A) Słowo początkowe: q 111 1 B) Słowo początkowe: q 11 111

Teza Turinga Teza Turinga: dla każdego algorytmu A można zbudować maszynę Turinga, która mając te same dane wyjściowe daje takie same wyniki jak algorytm A. n Jeżeli 1 q 1 2 1 qz 2, to powiemy, że maszyna T przetwarza słowo 1 2 na słowo 1 2 i oznacza je T(1 2) = 1 2. n Zapis T() jest oznaczeniem maszyny T z wartościami początkowymi.

Normalne Algorytmy Markowa n Normalne Algorytmy Markowa (NAM) przekształcają słowa o skończonej długości w siebie poprzez podstawienie. n Alfabet zastępowania zadań NAM u v Zastępowanie końcowe u v n Kontrola 29 Określony jest normalny algorytm Markowa: Alfabet jest alfabetem języka rosyjskiego. Schemat podstawienia (I U, L U, S M, V B, R T, TR, O X, N A) n Słowo początkowe SLON. n Znajdź słowo końcowe.

Szacowanie złożoności algorytmów n Załóżmy, że funkcje f(n) i g(n) mierzą wydajność dwóch algorytmów, są one zwykle nazywane funkcjami złożoności czasowej. Powiemy, że rząd wzrostu funkcji f(n) nie jest większy niż rząd g(n), jeśli istnieje dodatnia stała C taka, że ​​| f(n) |

Skuteczność algorytmów A B C D E n 3 n 2 2 n 2+4 n n 3 2 n 1 1 ms 3 ms 6 ms 2 ms 10 10 ms 300 ms 240 ms 1024 s 100 ms 30 s 20,4 ms 0,28 h 4*1017 wieków 0,56 h 11,6 dni 10176 wieków 1000 ms 0,83 h 1 ms

Teoria algorytmów n Teoria algorytmów - klasyfikuje problemy według złożoności. W tym przypadku klasyfikowane są tylko zadania rozpoznawania. n Zadanie rozpoznawania to zadanie, które odpowiada na pytanie: czy dane wejściowe mają jakąś właściwość. W naszym przypadku: danymi wejściowymi jest graf, właściwość - czy graf jest hamiltonianem?

Klasy P i NP n Klasa złożoności P: istnieje algorytm A, który rozwiązuje problem w czasie wielomianowym. n Klasa złożoności NP - istnieje algorytm A sprawdzający proponowane rozwiązanie w czasie wielomianowym. n Problem cyklu hamiltonowskiego polega na ustaleniu, czy dany graf G ma cykl hamiltonowski należy do klasy NP.

Przykłady problemów NP n Problem spełnialności boolowskiej: dowiedz się z danego wzoru logicznego, czy istnieje w nim zbiór zmiennych, który zamienia go w 1. n Problem kliki: dowiedz się z danego grafu, czy istnieją kliki (pełne podgrafy) o podanym rozmiarze. n Problem istnienia cyklu Hamiltona w grafie. n Istnienie całkowitoliczbowego rozwiązania układu nierówności liniowych.

Możliwość rozwiązywania problemów NP przez wyliczenie n Początkowo rozwiązanie nie jest znane. Dlatego ważne okazuje się, że każdy problem związany z klasą NP można rozwiązać w czasie wykładniczym przez wyliczenie wszystkich możliwych kombinacji n, co ma miejsce w algorytmie znajdowania cyklu Hamiltona

Relacja między Р i NP n Każde zadanie z P należy do NP. n Tak więc klasa NP obejmuje klasę P. Obecnie nie wiadomo, czy klasy P i NP są takie same, ale większość ekspertów uważa, że ​​tak nie jest.

Stosunek P i NP n Jeżeli okaże się, że P = NP 1) zadania NP zostaną rozwiązane w rozsądnym czasie. 2) Istnieje wiele problemów, które celowo wykorzystują problemy o złożoności wykładniczej (tj. przy założeniu, że problemu nie da się rozwiązać). Na przykład w kryptografii znajduje się sekcja dotycząca szyfrowania klucza publicznego, której odszyfrowanie jest prawie niemożliwe. Jeśli nagle P = NP, to wiele tajemnic przestanie być takimi.

Problemy NP-zupełne n Najbardziej przekonującym powodem, by sądzić, że P ≠ NP jest istnienie problemów NP-zupełnych. n Nieformalnie!!!, Problem Q redukuje się do Problemu Q′, jeśli Problem Q można rozwiązać w czasie wielomianowym dla dowolnego wejścia, zakładając, że rozwiązanie Problemu Q′ dla jakiegoś innego wejścia jest znane. Na przykład problem rozwiązania równania liniowego sprowadza się do problemu rozwiązania równania kwadratowego.

Problemy NP-zupełne n Problem NP-zupełny to problem z klasy NP, do którego można zredukować każdy inny problem z klasy NP. n Zagadnienia NP-zupełne tworzą podzbiór „najtrudniejszych” problemów w klasie NP. Jeżeli dla dowolnego problemu NP-zupełnego zostanie znaleziony algorytm rozwiązania wielomianowego, to każdy inny problem z klasy NP można rozwiązać w czasie wielomianowym. n Wszystkie wymienione problemy NP są NP-zupełne. W tym problem cyklu Hamiltona.


Baranow Wiktor Pawłowicz Dyskretna matematyka. Sekcja 6. Automaty stanowejęzyki formalne.

Wykład 31 Zadanie syntezy. Podstawowe samochody i ty

Wykład 30 DEFINICJA I SPOSOBY WYZNACZANIA AUTOMATU SKOŃCZONEGO.

PROBLEM SYNTEZY. AUTOMATY ELEMENTARNE

Plan wykładu:

1. Definicja automatu skończonego.

2. Metody definiowania automatu skończonego.

  1. Problem syntezy automatów.
  2. Maszyny żywiołów.
  3. Problem zupełności podstawy automatu.
  4. Kanoniczna metoda syntezy automatów.
  1. Definicja maszyny stanowej

SFE nie uwzględniają faktu, że rzeczywiste urządzenia działają w czasie. W porównaniu z SFE automat skończony jest dokładniejszym modelem przetwornika dyskretnego. b programista informacji. Jednocześnie koncepcja automatu skończonego, jak każdego modelu, jest I ale z kilkoma upraszczającymi założeniami.

Po pierwsze zakłada się, że wejście i wyjście automatu może znajdować się tylko w jednym ze skończonej liczby różnych stanów w dowolnym momencie. Jeśli prawdziwy b Jeżeli przetwornik ma ciągły sygnał wejściowy, to aby opisać go automatem skończonym, konieczne jest skwantyzowanie tego sygnału. W formalnej definicji automatu skończony zbiór stanów wejściowych i wyjściowych automatu nazywa się coo t odpowiedzialny za wejście i alfabet wyjściowyi poszczególne stany litery tych alf i wit.

Po drugie, zakłada się, że czas zmienia się dyskretnie. Stany wejścia i wyjścia odpowiadają dyskretnej sekwencji czasowej. b Ponieważ moment czasu jest jednoznacznie określony przez jego indeks, to dla uproszczenia przyjmiemy, że czas przyjmuje wartości 1, 2, ..., ... Interwał czasowy jest nazywany takt.

Działanie maszyny przedstawiono w następujący sposób.

Wejście automatu odbiera sygnały z alfabetu wejściowego, co prowadzi do pojawienia się sygnałów na wyjściu z alfabetu wejściowego. W a Zależność sekwencji wyjściowej od sekwencji wejściowej zależy od wewnętrznej struktury automatu. Zauważ, że w przeciwieństwie do SFE, które nie mają pamięci, automat pre d jest urządzeniem z pamięcią, czyli wyjście automatu jest określane nie tylko b do wejścia, ale także do fabuły. Historia rachunkowości I zależy od zależności sygnału wyjściowego nie tylko od wejścia, ale także od aktualnego stanu, który oznaczamy.

Podajmy formalną definicję automatu.

maszyna stanowawymienić pięć obiektów

, (1)

gdzie

alfabet wejściowy; – jeden z możliwych stanów wejścia;

to zbiór skończony o nazwiealfabet wyjściowy; element ty z tego zestawu określasz możliwe stany wyjściowe;

to zbiór skończony o nazwiealfabet stanów wewnętrznych ja nii;

– funkcja przejściamaszyna: ; ta funkcja przypisuje stan do każdej pary „stan wejścia”;

– funkcja wyjścia maszyna: ; ta funkcja wiąże każdą parę stanów wejściowych z wartością wyjściową.

Prawo funkcjonowania automatu: automat zmienia swoje stany zgodnie z t funkcja i generuje sygnały wyjściowe zgodnie z funkcją do akcji:

  1. Sposoby definiowania maszyny stanowej

1. Metoda przypisania tabelarycznego. Ponieważ dla funkcji i zakresu mi wartości i wartości należą do skończonego zbioru, następnie określa się je za pomocą tabel.

Przykład 1 Automat definiujemy następująco: , .Zdefiniuj funkcję za pomocąstoły do ​​skoków,i funkcja z tabele wyjściowe.

Tabela 1. Tabela skoków Tabela 2. Tabela wyjść

Wejście

Stan

Wejście

Stan

Jeżeli znana jest kolejność sygnałów na wejściu automatu, to tablice mi ruchy i wyjścia jednoznacznie określają sekwencję wyjściową.

2 . Graficzny sposób ustawienia. używany diagram przejścia-wyjścia.Jest to ukierunkowany multigraf, w którym każdy wewnętrzny t wierzchołek odpowiada wczesnemu stanowi automatu. Przejścia automatu ze stanu do stanu są przedstawione strzałkami, na każdym z nich zapisany jest symbol wejściowy, w s wywołanie tego przejścia i symbol wyjściowy wygenerowany przez automat.

| | |

Rys.1 Schemat przejść-wyjść

Przykład 2 Wymagane jest zbudowanie automatu, który będzie działał w następujący sposób a zom: w każdym cyklu na wejściu automatu odbierane są kolejne cyfry binarne wyrazów oraz w pomidor tworzy odpowiednią cyfrę binarną ich sumy. Dla dwojga h mamy terminy wierszy: , .

Automat znajduje się w stanie 1, jeżeli podczas dodawania poprzednich cyfr oraz nosi przeniesienie, a w stanie 0 w przeciwnym razie. Schemat przejścia-wyjścia i zana na ryc. 2.

00|0 11|1 01|0

01|1 10|0

10|1 00|1 11|1

Ryż. 2

  1. Problem syntezy automatów

Analogicznie do problemu syntezy SFE można postawić problem syntezy dla automatu a towarzysz Istnieje nieograniczony zestaw podstawowych automatów. Wymagane jest złożenie automatu o określonym działaniu. W tym przypadku zderza się problem syntezy t z pewnymi problemami.

Załóżmy, że musisz połączyć wyjście automatu z wejściem automatu. Jest to możliwe pod warunkiem, że inaczej o maszyna roju nie zrozumie sygnałów pochodzących od pierwszego. Prowadzi to do zamieszania oraz sytuacje, w których niektóre połączenia nie są możliwe.

Aby pokonać tę przeszkodę, wprowadzono koncepcję automatu strukturalnego, w którym: o wszystkie alfabety (stany wejściowe, wyjściowe i wewnętrzne) są kodowane słowami binarnymi.

Niech będzie skończonym zbiorem elementów i będzie zbiorem mi zbiór binarnych słów o długości, gdzie. Dowolne mapowanie iniektywne zostanie nazwanekodowanie zestawu w słowach binarnych.

Zakodujmy alfabety dla dowolnego automatu:

Oznaczmy odpowiednio zakodowane wejście, wyjście i stan automatu w chwili czasu. Następnie prawo działania zostanie przedstawione w postaci

(2)

Automat uzyskany po zakodowaniu nazywa się strukturalny . Zakładamy, że automat strukturalny ma wejścia binarne, wyjścia binarne, a stan wewnętrzny automatu jest określony binarnym słowem o długości. Na ryc. 3 pokazane abstrakcyjny automat i odpowiadający mu automat strukturalny.

… …

Ryż. 3

Przejście do automatu strukturalnego daje dwie ważne korzyści dla syntezy. e stva.

1 . Kompatybilność wejść i wyjść, ponieważ binarne i n tworzenie. Nie podamy ogólnej definicji obwodu z automatów strukturalnych - jest podobny do SFE.

2 . Zapiszmy relacje (2) we „współrzędnych”:

(3)

Z (3) wynika, żeprawo funkcjonowania automatu strukturalnego jest podane z oraz Rdzeń funkcji logicznej.

  1. Automaty podstawowe

Wyróżniamy najprostsze automaty strukturalne i nadajemy im nazwy.

Zauważ najpierw, że element funkcjonalny, który ma tylko jeden stan, może być uważany za automat bez pamięci.

Przejdźmy do automatów z dwoma stanami. Niech automat ma jedno wejście binarne i jedno wyjście binarne pokrywające się ze stanem wewnętrznym: :

Ryż. 4.

Aby ustawić automat pokazany na ryc. 4 wystarczy podać tylko tabelę p e przejścia:

Tabela 3

Wejście

Stan

Zamiast gwiazdek musisz wpisać 0 i 1. Można to zrobić na 16 sposobów, jednak nie wszystkie są akceptowalne. Załóżmy na przykład, że w pierwszej kolumnie tabeli 3 oba elementy n jesteś zero. Taki automat w stanie 0 nie wyjdzie już z niego, to znaczy będzie działał jako element funkcjonalny. Analiza podobnych sytuacji pokazuje, że aby otrzymać automat nieredukowalny do automatu bez pamięci, konieczne jest wymaganie o aby upewnić się, że każda kolumna w Tabeli 3 zawiera zarówno zero, jak i jeden. Takie stoły są ego opona.

Tabela 4 Tabela 5

Wejście

Stan

Wejście

Stan

Tabela 6 Tabela 7

Wejście

Stan

Wejście

Stan

Mamy tylko dwa najprostsze automaty, ponieważ 7 otrzymujemy z 4, a 6 z 5 przez odwrócenie stanów wewnętrznych.

Automat podany w tabeli 4 nazywa się opóźnienie lub -trigger :

to znaczy, że automat ten opóźnia sygnał o jeden cykl.

Automat określony w tabeli 5 nazywa sięwyzwalacz z wejściem licznika lub -trigger . Stan automatu zmienia się na przeciwny, jeśli na wejściu jest 1, i pozostaje niezmieniony, jeśli na wejściu jest 0:

Niech w początkowym czasie- wyzwalacz jest w stanie 0. Jeśli w n mi w którym momencie?- wyzwalacz jest w stanie 0, co oznacza, że ​​na wejściu automatu odebrano parzystą liczbę jedynek. Jeśli w stanie 1, to nieparzyste. Więc arr i zom, - wyzwalacz zlicza liczbę jednostek na wejściu, ale ponieważ ma tylko dwa stany I niya, potem liczy do dwóch.

Gdy wyzwalacze są fizycznie zaimplementowane, używane są dwa wyjścia: bezpośredni i odwrócony (rys. 5). Jeśli je zamienimy, to- wyzwalacz, otrzymujesz automat określony w tabeli 7, a z- wyzwalacz - automat określony w tabeli 6.

Ryż. 5.

  1. Problem kompletności podstawy automatu

Zbiór automatów strukturalnych nazywamy kompletnym (lub automatem b a zisom), jeśli można z nich zbudować dowolny z góry określony automat konstrukcyjny.

Wysiłki matematyków, aby uzyskać analogię z twierdzeniem Posta dla automatów, nie są zwiększone. n napisany sukces. W 1964 r. M.I. Krótko udowodnił nieistnienie algorytmu do określania mi kompletność systemu. W tym przypadku interesujące są warianty twierdzenia o zupełności z dodatkowymi założeniami dotyczącymi systemu. Rozważmy najpopularniejsze z nich.

Twierdzenie. system automatyczny,zawierający pełny zestaw PV i -wyzwalacz (lub -trigger) jest zakończony.

Dowód. Rozważmy dowolny automat podany przez relację mi (2) i opisz jego schemat wskazanych automatów, zwanychstruktura kanoniczna(Rys. 6) .

Schemat składa się z dwóch części.

Ryż. 6.

Lewa połowa nazywana jest częścią pamięci. Składa się z wyzwalaczy, których zbiór stanów tworzy stan automatu: jeśli w chwili czasu

, …,

oznacza to, że automat jest w stanie.

Prawa połowa nazywana jest częścią kombinowaną i reprezentuje SFE. Wejścia tego obwodu to:

  1. słowo binarne - sygnał wejściowy automatu;
  2. słowo binarne to aktualny stan wewnętrzny automatu.

Wyjścia:

  1. słowo binarne - sygnał wyjściowy automatu, który jest zaimplementowany t według wzorów (3);
  2. słowo binarne, które wchodzi na wejścia wyzwalaczy w pamięci a aktualna część i steruje pamięcią maszyny.

Pokażmy, że sygnały sterujące pamięcią są funkcjami boolowskimi tych samych zmiennych co wyjście automatu, co oznacza, że ​​mogą być zaimplementowane całkowicie z i rdzeń WF.

W każdym momencie sygnały sterujące pamięcią muszą tłumaczyć a w pomidor od stanu do stanu. Aby to zrobić, musisz zmienić stan każdego wyzwalacza

, .

Wyzwalacze lub wyzwalacze używane w schemacie kanonicznym mają następujące cechy: mi następna właściwość: dla dowolnej pary stanów występuje sygnał wejściowy, mi jazdy maszyną od stanu do stanu. Oznaczmy ten sygnał przez . Dla -trigger, ponieważ stan, w którym ustawiony jest -trigger jest równy sygnałowi wejściowemu. Dla -trigger: kiedy musisz wpisać n o daj 0, aby utrzymać stan niezmieniony; na -1, aby przerzucić spust.

Tak, lub w formie wektorowej

Wyraźmy z prawa funkcjonowania automatu (2). Następnie

Twierdzenie zostało udowodnione.

  1. Kanoniczna metoda syntezy automatów

Rozważmy tę metodę na konkretnym przykładzie.

Przykład. Na przenośniku, wzdłuż którego poruszają się i zainstalowane części dwóch typów w maszyna do lnu, której zadaniem jest sortowanie części w taki sposób, aby po przejściu mi przechodząc obok maszyny, utworzyli grupy. Niewłaściwa część maszyny ja kiwa głową z linii montażowej. Wymagane jest zbudowanie obwodu takiego automatu za pomocą wyzwalacza oraz elementów „AND”, „OR”, „NOT”.

Synteza automatu podzielona jest na następujące etapy.

1 . Budowa abstrakcyjnego automatu.

Alfabet wejściowy to . Alfabet wyjściowy to , gdzie C - kolizja części, P to jej przepustka. Stany wewnętrzne automatu odzwierciedlają jego pamięć o tym, jaką część grupy już utworzył: . W miarę tworzenia grupy automat przechodzi cyklicznie przez te stany bez zmiany stanu, gdy nadejdzie nieodpowiednia część. Schemat przejścia-wyjścia pokazano na ryc. 7.

| | |

Ryż. 7.

2 . Kodowanie alfabetyczne.

Jedna z możliwych opcji kodowania jest podana poniżej. mi dmuchanie stołów.

Wejście Stan wyjścia

3 . Budowa kanonicznej struktury automatu.

Strukturę kanoniczną opracowywanego automatu przedstawiono na ryc. osiem.

Ryż. osiem.

Znajdźmy zależności wyników SFE od zmiennych, najpierw w formie tabelarycznej (Tabela 8), według k o które później zbudujemy formuły

, .

Tabela 8

Te funkcje nazywają sięczęściowo zdefiniowane, ponieważ nie są zdefiniowane w. Aby przedstawić te funkcje za pomocą formuł, są one rozszerzane w taki sposób, aby uzyskać prostszą formę formuł.

4 . Reprezentacja funkcji wyjścia automatu i funkcji zarządzania pamięcią r muły.

Wykorzystując metody minimalizacji funkcji logicznych budujemy, jeśli to możliwe, ek o reprezentacja nominalna funkcji, wzory w bazie:

5 . Implementacja SFE i ostateczny schemat automatu (rys. 9).

Ryż. dziewięć.

SFE

SFE

NIE

LUB

Schematy kombinacyjne, chociaż pozwalają na realizację dowolnych naprawiony zależności między sygnałami wejściowymi i wyjściowymi nie mogą zmienić charakteru ich zachowania (tj. kolejności przetwarzania danych) - każda taka zmiana wymaga zmiany struktury obwodu, czyli w rzeczywistości przejścia do innego obwodu. Możliwe jest rozwiązanie problemu restrukturyzacji pracy bez zmiany struktury schematu, jeśli wprowadzimy do niego elementy pamięci, co pozwoliłoby na ustalenie i zapisanie stanów pośrednich urządzenia – w tym przypadku sygnał wyjściowy będzie zależał nie tylko od sygnału wejściowego, ale również od stanu układu. Jeśli liczba takich elementów jest skończona, to, jak wspomniano powyżej, urządzenie dyskretne zostanie nazwane maszyna końcowa.

maszyna stanowazwany systemem Y, Q> , gdzie X i Y są skończonymi alfabetami wejściowymi i wyjściowymi, Q jest skończonym zbiorem stanów wewnętrznych, Y (x, q) - funkcja przejścia i Q (x,q) - funkcja wyjściowa.

Jak wspomniano wcześniej, Y (x,q) określa kolejność transformacji symboli wejściowych i stanu automatu w poprzednim cyklu w stan w następnym, a Q (x,q) - przekształcenie symboli wejściowych i stanu automatu w bieżącym cyklu na symbol wyjściowy. Jeśli q 0 jest stanem początkowym automatu, a i- numer miary, wówczas jego działanie jest opisane przez system:

Te wskaźniki nazywają się układy równań kanonicznych automat skończony. Możesz ich używać od q 0 , sekwencyjnie znajdź wszystkie kolejne stany automatu i symbole wyjściowe.

Istnieją dwa rodzaje maszyn - Inicjał oraz niepierwotne. W Automaty początkowe mają ustalony stan początkowy (tzn. zawsze zaczynają się od tego samego stanu) q0). W automatach nieinicjatywnych każdy ze zbioru Q; wybór ten determinuje dalsze zachowanie automatu.

Reprezentacja określonego automatu skończonego sprowadza się właściwie do opisu funkcji automatu, które go definiują. Z systemu (9.3) wynika, że ​​dla skończonej liczby możliwych stanów wewnętrznych liczba możliwych wartości funkcji automatu również okazuje się skończona. Można je opisywać na różne sposoby, z których najczęstszym jest: tabelaryczny i z pomocą schematy.

W sposób tabelaryczny funkcje automatu są podane przez dwie skończone tablice, odpowiednio nazwane macierz przejścia oraz macierz wyjściowa. W tych tabelach wiersze oznaczone są literami alfabetu wejściowego, a kolumny literami alfabetu wewnętrznego (symbole kodujące stan wewnętrzny automatu). W macierzy przejść na przecięciu rzędu (xk) i kolumna (qr) umieszczane są wartości funkcji Y ( q r, xk), a w macierzy wyjść - wartości funkcji Q (q r , x k).

Baranow Wiktor Pawłowicz Dyskretna matematyka. Sekcja 6. Automaty skończone i języki formalne.

Wykład 31 Zadanie syntezy. Automaty podstawowe

Wykład 30

PROBLEM SYNTEZY. AUTOMATY ELEMENTARNE

Plan wykładu:

1. Definicja automatu skończonego.

2. Metody definiowania automatu skończonego.

  1. Problem syntezy automatów.
  2. Maszyny żywiołów.
  3. Problem zupełności podstawy automatu.
  4. Kanoniczna metoda syntezy automatów.
  1. Definicja maszyny stanowej

SFE nie uwzględniają faktu, że rzeczywiste urządzenia działają w czasie. W porównaniu z SFE automat skończony jest dokładniejszym modelem konwertera informacji dyskretnych. Jednocześnie koncepcja automatu skończonego, jak każdy model, wiąże się z szeregiem założeń upraszczających.

Po pierwsze zakłada się, że wejście i wyjście automatu może znajdować się tylko w jednym ze skończonej liczby różnych stanów w dowolnym momencie. Jeżeli rzeczywisty przetwornik ma ciągły sygnał wejściowy, to aby opisać go automatem skończonym, konieczne jest skwantyzowanie tego sygnału. W formalnej definicji automatu skończony zbiór stanów wejściowych i wyjściowych automatu nazywamy odpowiednio alfabetem wejściowym i wyjściowym, a poszczególne stany nazywamy literami tych alfabetów.

Po drugie, zakłada się, że czas zmienia się dyskretnie. Stany wejściowe i wyjściowe odpowiadają dyskretnej sekwencji czasowej Ponieważ moment czasu jest jednoznacznie określony przez jego indeks, dla uproszczenia przyjmiemy, że czas przyjmuje wartości 1, 2, ..., ... Przedział czasu nazywa się taktem.

Działanie maszyny przedstawiono w następujący sposób.

Wejście automatu odbiera sygnały z alfabetu wejściowego, co prowadzi do pojawienia się sygnałów na wyjściu z alfabetu wejściowego. Zależność sekwencji wyjściowej od sekwencji wejściowej zależy od wewnętrznej struktury automatu. Zauważ, że w przeciwieństwie do SFE, które nie mają pamięci, automat jest urządzeniem z pamięcią, tj. wyjście automatu jest określone nie tylko przez wejście, ale także przez prehistorię. Prehistoria jest uwzględniana przez zależność sygnału wyjściowego nie tylko od wejścia, ale także od aktualnego stanu, który oznaczamy.

Podajmy formalną definicję automatu.

Maszyna stanów to zbiór pięciu obiektów

jest skończonym zbiorem zwanym alfabetem wejściowym; – jeden z możliwych stanów wejścia;

jest skończonym zbiorem zwanym alfabetem wyjściowym; elementy tego zestawu definiują możliwe stany wyjściowe;

jest zbiorem skończonym zwanym alfabetem stanów wewnętrznych;

– funkcja przejścia automatu: ; ta funkcja przypisuje stan do każdej pary „stan wejścia”;

– funkcja wyjść maszyny: ; ta funkcja wiąże każdą parę stanów wejściowych z wartością wyjściową.

Prawo funkcjonowania automatu: automat zmienia swoje stany zgodnie z funkcją i generuje sygnały wyjściowe zgodnie z funkcją:

  1. Sposoby definiowania maszyny stanowej

1. Tabelaryczny sposób ustawienia. Ponieważ dla funkcji zarówno zakres, jak i wartości należą do skończonego zbioru, określa się je za pomocą tabel.

Przykład 1. Definiujemy automat następująco: , .Funkcję definiujemy za pomocą tablicy przejść, a funkcję - za pomocą tablicy wyjściowej.

Tabela 1. Tabela skoków Tabela 2. Tabela wyjść

Stan

Stan

Jeżeli znana jest kolejność sygnałów na wejściu automatu, to kolejność wyjściowa jest jednoznacznie określona przez tablice przejść i wyjść.

2. Graficzny sposób ustawienia. Wykorzystywany jest diagram przejścia-wyjścia. Jest to multigraf skierowany, w którym każdemu wewnętrznemu stanowi automatu odpowiada wierzchołek. Przejścia automatu ze stanu do stanu są przedstawione strzałkami, na których zapisany jest symbol wejściowy wywołujący to przejście oraz symbol wyjściowy generowany przez automat.

Rys.1 Schemat przejść-wyjść

Przykład 2. Wymagane jest zbudowanie automatu, który działałby w następujący sposób: w każdym cyklu na wejście automatu odbierane są kolejne binarne cyfry wyrazów, automat generuje odpowiednią cyfrę binarną ich sumy. Dla terminów dwucyfrowych mamy: , .

Automat znajduje się w stanie 1, jeśli podczas dodawania poprzednich cyfr nastąpi przeniesienie, aw stanie 0 w przeciwnym razie. Schemat przejścia-wyjścia pokazano na ryc. 2.

  1. Problem syntezy automatów

Przez analogię do problemu syntezy SFE można postawić problem syntezy dla automatów. Istnieje nieograniczony zestaw podstawowych automatów. Wymagane jest złożenie automatu o określonym działaniu. Jednocześnie zadanie syntezy napotyka na pewne problemy.

Załóżmy, że musisz połączyć wyjście automatu z wejściem automatu. Jest to możliwe pod warunkiem, że w przeciwnym razie drugi automat nie zrozumie sygnałów pochodzących od pierwszego. Prowadzi to do mylącej sytuacji, w której niektóre połączenia nie są możliwe.

Aby pokonać tę przeszkodę, wprowadzono koncepcję automatu strukturalnego, w którym wszystkie alfabety (stany wejściowe, wyjściowe i wewnętrzne) są zakodowane w słowach binarnych.

Niech będzie skończonym zbiorem elementów i będzie zbiorem binarnych słów o długości gdzie. Dowolne mapowanie iniektywne będzie nazywane kodowaniem zbioru za pomocą słów binarnych.

Zakodujmy alfabety dla dowolnego automatu:

Oznaczmy odpowiednio zakodowane wejście, wyjście i stan automatu w chwili czasu. Następnie prawo działania zostanie przedstawione w postaci

Automat otrzymany po zakodowaniu nazywamy automatem strukturalnym. Zakładamy, że automat strukturalny ma wejścia binarne, wyjścia binarne, a stan wewnętrzny automatu jest określony binarnym słowem o długości. Na ryc. Rysunek 3 przedstawia automat abstrakcyjny i odpowiadający mu automat strukturalny.

Przejście do automatu strukturalnego daje dwie ważne korzyści dla syntezy.

1. Kompatybilność wejść i wyjść, ponieważ przez nie przesyłane są informacje binarne. Nie podamy ogólnej definicji obwodu z automatów strukturalnych - jest podobny do SFE.

2. Zapiszmy relacje (2) we „współrzędnych”:

Z (3) wynika, że ​​prawo funkcjonowania automatu strukturalnego dane jest przez układ funkcji boolowskich.

  1. Automaty podstawowe

Wyróżniamy najprostsze automaty strukturalne i nadajemy im nazwy.

Zauważ najpierw, że element funkcjonalny, który ma tylko jeden stan, może być uważany za automat bez pamięci.

Przejdźmy do automatów z dwoma stanami. Niech automat ma jedno wejście binarne i jedno wyjście binarne pokrywające się ze stanem wewnętrznym: :

Aby ustawić automat pokazany na ryc. 4 wystarczy ustawić tylko tabelę przejść:

Tabela 3

Stan

Zamiast gwiazdek musisz wpisać 0 i 1. Można to zrobić na 16 sposobów, jednak nie wszystkie są akceptowalne. Załóżmy na przykład, że w pierwszej kolumnie Tabeli 3 oba elementy są zerami. Taki automat w stanie 0 nie wyjdzie już z niego, to znaczy będzie działał jako element funkcjonalny. Analiza podobnych sytuacji pokazuje, że aby otrzymać automat nieredukowalny do automatu bez pamięci, konieczne jest wymaganie, aby w każdej kolumnie tabeli 3 występowało zero i jedynka. Są tylko cztery takie stoły.

Tabela 4 Tabela 5

Stan

Stan

Tabela 6 Tabela 7

Stan

Stan

Mamy tylko dwa najprostsze automaty, ponieważ 7 otrzymujemy z 4, a 6 z 5 przez odwrócenie stanów wewnętrznych.

Automat podany w tabeli 4 nazywa się opóźnieniem lub wyzwalaczem:

to znaczy, że automat ten opóźnia sygnał o jeden cykl.

Automat określony w tabeli 5 nazywany jest wyzwalaczem z wejściem zliczającym lub -wyzwalaczem. Stan automatu zmienia się na przeciwny, jeśli na wejściu jest 1, i pozostaje niezmieniony, jeśli na wejściu jest 0:

Niech w początkowym momencie -wyzwalacz będzie w stanie 0. Jeśli w pewnym momencie -wyzwalacz będzie w stanie 0, oznacza to, że na wejściu automatu odebrano parzystą liczbę jedynek. Jeśli w stanie 1, to nieparzyste. Zatem -trigger zlicza liczbę jednostek na wejściu, ale ponieważ ma tylko dwa stany, liczy do dwóch.

W fizycznej realizacji wyzwalaczy wykorzystywane są dwa wyjścia: bezpośrednie i odwrotne (rys. 5). Jeśli je zamienimy, to z -triggera dostaniemy automat określony w tabeli 7, a z -triggera automat określony w tabeli 6.

  1. Problem kompletności podstawy automatu

Zbiór automatów strukturalnych nazywamy kompletem (lub podstawą automatu), jeśli można z nich skonstruować dowolny automat strukturalny.

Wysiłki matematyków zmierzające do uzyskania analogii do twierdzenia Posta o automatach nie powiodły się. W 1964 r. M.I. Krótko udowodniono nieistnienie algorytmu do określania kompletności systemu. W tym przypadku interesujące są warianty twierdzenia o zupełności z dodatkowymi założeniami dotyczącymi systemu. Rozważmy najpopularniejsze z nich.

Twierdzenie. System automatów zawierający kompletny zestaw ES i -trigger (lub -trigger) jest kompletny.

Dowód. Rozważmy dowolny automat dany przez relacje (2) i opiszmy jego schemat wskazanych automatów, zwany strukturą kanoniczną (rys. 6).

Schemat składa się z dwóch części.

Lewa połowa nazywana jest częścią pamięci. Składa się z wyzwalaczy, których zbiór stanów tworzy stan automatu: jeśli w chwili czasu

oznacza to, że automat jest w stanie.

Prawa połowa nazywana jest częścią kombinowaną i reprezentuje SFE. Wejścia tego obwodu to:

  1. słowo binarne - sygnał wejściowy automatu;
  2. słowo binarne to aktualny stan wewnętrzny automatu.
  1. słowo binarne - sygnał wyjściowy automatu, realizowany zgodnie ze wzorami (3);
  2. słowo binarne, które wchodzi na wejścia wyzwalaczy w części pamięci i steruje pamięcią automatu.

Pokażmy, że sygnały sterujące pamięcią są funkcjami boolowskimi tych samych zmiennych co wyjście automatu, co oznacza, że ​​mogą być zaimplementowane przez kompletny system FE.

W każdym momencie sygnały sterujące pamięcią muszą przenosić automat ze stanu do stanu. Aby to zrobić, musisz zmienić stan każdego wyzwalacza

-triggers lub -triggers użyte w schemacie kanonicznym mają następującą właściwość: dla dowolnej pary stanów istnieje sygnał wejściowy, który przenosi automat ze stanu do stanu. Oznaczmy ten sygnał przez . Dla -trigger, ponieważ stan, w którym ustawiony jest -trigger jest równy sygnałowi wejściowemu. Dla -trigger: kiedy na wejściu musi być podane 0, aby stan się nie zmienił; na -1, aby przerzucić spust.

Tak, lub w formie wektorowej

Wyraźmy z prawa funkcjonowania automatu (2). Następnie

Twierdzenie zostało udowodnione.

  1. Kanoniczna metoda syntezy automatów

Rozważmy tę metodę na konkretnym przykładzie.

Przykład. Na przenośniku, po którym poruszają się części dwóch typów oraz zainstalowany jest automat, którego zadaniem jest sortowanie części w taki sposób, aby po przejściu obok maszyny tworzyły grupy. Maszyna spycha nieodpowiednią część z przenośnika. Wymagane jest zbudowanie obwodu takiego automatu za pomocą wyzwalacza oraz elementów „AND”, „OR”, „NOT”.

Synteza automatu podzielona jest na następujące etapy.

1. Budowa abstrakcyjnego automatu.

Alfabet wejściowy to . Alfabet wyjściowy to , gdzie C to kolizja części, P to jej pominięcie. Stany wewnętrzne automatu odzwierciedlają jego pamięć o tym, jaką część grupy już utworzył: . W miarę tworzenia grupy automat przechodzi cyklicznie przez te stany bez zmiany stanu, gdy nadejdzie nieodpowiednia część. Schemat przejścia-wyjścia pokazano na ryc. 7.

2. Kodowanie alfabetów.

Jedna z możliwych opcji kodowania jest pokazana w poniższych tabelach.

Wejście Stan wyjścia

3. Budowa kanonicznej struktury automatu.

Strukturę kanoniczną opracowywanego automatu przedstawiono na ryc. osiem.

Znajdźmy zależności wyników SFE od zmiennych, najpierw w formie tabelarycznej (Tabela 8), według której będziemy dalej konstruować wzory

Tabela 8

Funkcje te są nazywane częściowo zdefiniowanymi, ponieważ nie są zdefiniowane w. Aby przedstawić te funkcje za pomocą formuł, są one rozszerzane w taki sposób, aby uzyskać prostszą formę formuł.

4. Reprezentacja funkcji wyjścia automatu i funkcji sterowania pamięcią za pomocą wzorów.

Wykorzystując metody minimalizacji funkcji Boole'a, budujemy ekonomiczną reprezentację funkcji, jeśli to możliwe, za pomocą wzorów w bazie:

5. Implementacja SFE i ostateczny schemat automatu (rys. 9).

DEFINICJA I SPOSOBY WYZNACZANIA AUTOMATU SKOŃCZONEGO. PROBLEM SYNTEZY. AUTOMATY ELEMENTARNE

Teoria automatów to sekcja matematyki dyskretnej, która bada modele dyskretnych konwerterów informacji. Przetworniki takie to zarówno urządzenia rzeczywiste (komputery, organizmy żywe), jak i urządzenia urojone (teorie aksjomatyczne, maszyny matematyczne). W istocie maszynę skończoną można opisać jako urządzenie M , który posiada kanały wejściowe i wyjściowe, natomiast w każdym z dyskretnych momentów czasowych, zwanych momentami zegarowymi, znajduje się w jednym ze stanów końcowych.

Na kanale wejściowym w dowolnym momencie t =1, 2, ... do urządzenia M przychodzą sygnały wejściowe (z pewnego skończonego zestawu sygnałów). Prawo zmiany stanu na następną chwilę czasu jest ustawiane w zależności od sygnału wejściowego i stanu urządzenia w chwili obecnej. Sygnał wyjściowy zależy od stanu i sygnału wejściowego w chwili obecnej (rys. 1).

Maszyna stanów jest modelem matematycznym rzeczywistych urządzeń do przetwarzania informacji dyskretnych.

maszyna stanowa zwany systemem A= (X , Q , Y , , ), gdzie X , Q , Y są arbitralnymi niepustymi zbiorami skończonymi, oraz oraz - funkcje, w tym:

    pęczek X ={a 1 , ..., a m ) jest nazywany alfabet wejściowy , a jego elementami są sygnały wejściowe , ich sekwencje są w powiedzonka ;

    pęczek Q ={q 1 , ..., q n ) jest nazywany wiele stanów automat i jego elementy - stany ;

    pęczek Y ={b 1 , ..., b p ) jest nazywany alfabet wyjściowy , jego elementy to sygnały wyjściowe , ich sekwencje to słowa wyjścia ;

    funkcjonować : X Q Q nazywa funkcja przejścia ;

    funkcjonować :X Q Y nazywa funkcja wyjściowa .

Zatem, (x , q )Q , (x , q )Y dla x X , q Q .

Wyimaginowane urządzenie jest powiązane z maszyną stanów, która działa w następujący sposób. Może być w stanie z zestawu Q , odbieraj sygnały z zestawu X i wydawaj sygnały z zestawu Y .

2. Metody definiowania automatu skończonego

Istnieje kilka równoważnych sposobów definiowania abstrakcyjnych automatów, z których trzy to: tabelaryczny , geometryczny oraz funkcjonalny .

2.1 Przyporządkowanie stołu do maszyny

Z definicji automatu wynika, że ​​zawsze może być zdefiniowany przez tablicę z dwoma wejściami zawierającymi t linie i P słupy, gdzie na przecięciu słupa q i linie a wartości funkcji są warte (a i , q j ), (a i , q j ).

q

a

q 1

q j

q n

a 1

(a 1 , q 1), (a 1 , q 1)

(a 1 , q j ), (a 1 , q j )

(a 1 , q n ), (a 1 , q n )

a i

(a i , q 1), (a i , q 1)

(a i , q j ), (a i , q j )

(a i , q n ), (a i , q n )

a m

(a m , q 1), (a m , q 1)

(a m , q j ), (a m , q j )

(a m , q n ), (a m , q n )

2.2. Definiowanie automatu za pomocą diagramu Moore'a

Innym sposobem określenia automatu skończonego jest graficzna, czyli użycie grafu. Automat jest reprezentowany jako oznaczony graf ukierunkowany G(Q , D ) z wieloma wierzchołkami Q i wiele łuków D ={(q j , (a i , q j ))| q j Q , a i X ), podczas gdy łuk ( q j , (a i , q j )) jest oznaczony parą ( a i , (a i , q j )). Tak więc przy tej metodzie stany automatu są przedstawiane za pomocą kółek, w które wpisuje się symbole stanów q j (j = 1, …, n ). Z każdego kręgu jest przeprowadzany t strzałki (kierowane krawędzie) jeden do jednego odpowiadające znakom alfabetu wejściowego X ={a 1 , ..., a m ). Strzałka odpowiadająca literze a i X i opuszczam krąg q j Q , para ( a i , (a i , q j )), a ta strzałka prowadzi do okręgu odpowiadającego (a i , q j ).

Powstały rysunek nazywa się wykres automatu lub, Schemat Moore'a . Dla niezbyt skomplikowanych automatów ta metoda jest bardziej ilustracyjna niż tabelaryczny.