Minimalizacja automatów niezupełnych.

Podobne dokumenty
Wstęp do Techniki Cyfrowej... Teoria automatów

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

Wstęp do Techniki Cyfrowej... Teoria automatów i układy sekwencyjne

B jest globalnym pokryciem zbioru {d} wtedy i tylko wtedy, gdy {d} zależy od B i nie istnieje B T takie, że {d} zależy od B ;

Teoria Informacji - wykład. Kodowanie wiadomości

SWB - Projektowanie synchronicznych układów sekwencyjnych - wykład 5 asz 1. Układy kombinacyjne i sekwencyjne - przypomnienie

zmiana stanu pamięci następuje bezpośrednio (w dowolnej chwili czasu) pod wpływem zmiany stanu wejść,

Suma dwóch grafów. Zespolenie dwóch grafów

b) bc a Rys. 1. Tablice Karnaugha dla funkcji o: a) n=2, b) n=3 i c) n=4 zmiennych.

1 Automaty niedeterministyczne

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Luty 2001 Algorytmy (4) 2000/2001

Podstawy Techniki Cyfrowej Teoria automatów

xx + x = 1, to y = Jeśli x = 0, to y = 0 Przykładowy układ Funkcja przykładowego układu Metody poszukiwania testów Porównanie tabel prawdy

Projekt prostego układu sekwencyjnego Ćwiczenia Audytoryjne Podstawy Automatyki i Automatyzacji

Definicja układu kombinacyjnego była stosunkowo prosta -tabela prawdy. Opis układu sekwencyjnego jest zadaniem bardziej złożonym.

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Olimpiada O Diamentowy Indeks AGH 2017/18. Informatyka Etap III

1. SYNTEZA UKŁADÓW SEKWENCYJNYCH

Metoda Karnaugh. B A BC A

Podstawowe moduły układów cyfrowych układy sekwencyjne cz.2 Projektowanie automatów. Rafał Walkowiak Wersja /2015

Lekcja na Pracowni Podstaw Techniki Komputerowej z wykorzystaniem komputera

INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW

PANGEA KONKURS MATEMATYCZNY

1.Wprowadzenie do projektowania układów sekwencyjnych synchronicznych

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Kody Tunstalla. Kodowanie arytmetyczne

SPÓJNOŚĆ. ,...v k. }, E={v 1. v k. i v k. ,...,v k-1. }. Wierzchołki v 1. v 2. to końce ścieżki.

Inteligencja obliczeniowa

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Kombinatoryka. Jerzy Rutkowski. Teoria. P n = n!. (1) Zadania obowiązkowe

Sortowanie topologiczne skierowanych grafów acyklicznych

Wykład5,str.1. Maszyny ze stosem ... 1,0 λ r. λ,z λ

Technika Cyfrowa 1 wykład 12: sekwencyjne układy przełączające

Ciągi Podzbiory Symbol Newtona Zasada szufladkowa Dirichleta Zasada włączania i wyłączania. Ilość najkrótszych dróg. Kombinatoryka. Magdalena Lemańska

Podstawy techniki cyfrowej. Układy asynchroniczne Opracował: R.Walkowiak Styczeń 2014

Zestaw C-11: Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp i.h)!!! Zad. 1: Zad. 2:

Zestaw A-1: Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.adb i.ads)!!! Zad. 1: 4,3,3 2,2,1 Zad. 2: 3,3,3 Zad.

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

Systemy baz danych. Notatki z wykładu

Matematyczne Podstawy Informatyki

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

Pole wielokąta. Wejście. Wyjście. Przykład

Wykład nr 3 Techniki Mikroprocesorowe. dr inż. Artur Cichowski

PAMIĘĆ RAM. Rysunek 1. Blokowy schemat pamięci

6. Zagadnienie parkowania ciężarówki.

Zestaw 1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.adb)!!! trójki sąsiednich elementów tablicy

Testy nieparametryczne

Algebrą nazywamy strukturę A = (A, {F i : i I }), gdzie A jest zbiorem zwanym uniwersum algebry, zaś F i : A F i

Minimalizacja form boolowskich

Kody blokowe Wykład 2, 10 III 2011

Zestaw 1-1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp)!!!

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Podstawowe własności grafów. Wykład 3. Własności grafów

Rodzinę F złożoną z podzbiorów zbioru X będziemy nazywali ciałem zbiorów, gdy spełnione są dwa następujące warunki.

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 212

FUNKCJA LINIOWA - WYKRES

Zestaw 1 ZESTAWY A. a 1 a 2 + a 3 ± a n, gdzie skªadnik a n jest odejmowany, gdy n jest liczb parzyst oraz dodawany w przeciwnym.

Sztuczna Inteligencja Projekt

~ A ~ 1. Dany jest trójkąt prostokątny o bokach długości 12, 16 i 20. Zmniejszamy długość każdego boku o 8. Wtedy:

Kody blokowe Wykład 5a;

7. Zagadnienie parkowania ciężarówki.

Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych

II. FUNKCJE WIELU ZMIENNYCH

Algorytm Dijkstry znajdowania najkrótszej ścieżki w grafie

Prawdopodobieństwo. Prawdopodobieństwo. Jacek Kłopotowski. Katedra Matematyki i Ekonomii Matematycznej SGH. 16 października 2018

Matematyka na poziomie GIMNAZJUM wersja β

Metoda List Łańcuchowych

Sławomir Kulesza. Projektowanie automatów asynchronicznych

Matematyka dyskretna. Andrzej Łachwa, UJ, /10

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

2. FUNKCJE. jeden i tylko jeden element y ze zbioru, to takie przyporządkowanie nazwiemy FUNKCJĄ, lub

D. Miszczyńska, M.Miszczyński KBO UŁ 1 GRY KONFLIKTOWE GRY 2-OSOBOWE O SUMIE WYPŁAT ZERO

WSTĘP. Budowa bramki NAND TTL, ch-ka przełączania, schemat wewnętrzny, działanie 2

Języki formalne i automaty Ćwiczenia 7

Równoliczność zbiorów

Koszt literału (literal cost) jest określony liczbą wystąpień literału w wyrażeniu boolowskim realizowanym przez układ.

0 + 0 = 0, = 1, = 1, = 0.

Drzewa. Jeżeli graf G jest lasem, który ma n wierzchołków i k składowych, to G ma n k krawędzi. Własności drzew

Wprowadzenie i pojęcia wstępne.

KURS MATEMATYKA DYSKRETNA

Zbiory liczbowe widziane oczami topologa

Rachunek podziałów i elementy teorii grafów będą stosowane w procedurach redukcji argumentów i dekompozycji funkcji boolowskich.

Program 14. #include <iostream> #include <ctime> using namespace std;

Technika cyfrowa Synteza układów kombinacyjnych (I)

Podstawy teoretyczne na egzamin z MMFiA II.

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA

W. Guzicki Próbna matura, grudzień 2014 r. poziom rozszerzony 1

Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory

Rys. 2. Symbole dodatkowych bramek logicznych i ich tablice stanów.

7. CIĄGI. WYKŁAD 5. Przykłady :

XV WOJEWÓDZKI KONKURS Z MATEMATYKI

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Przykładowe zadania na kółko matematyczne dla uczniów gimnazjum

Strategia "dziel i zwyciężaj"

Hierarchiczna analiza skupień

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Uwaga 1. Zbiory skończone są równoliczne wtedy i tylko wtedy, gdy mają tyle samo elementów.

Algorytmy sztucznej inteligencji

EGZAMIN W KLASIE TRZECIEJ GIMNAZJUM CZĘŚĆ 2. MATEMATYKA

Układy równań liniowych. Ax = b (1)

Transkrypt:

Minimalizacja automatów niezupełnych. Automatem zredukowanym nazywamy automat, który jest zdolny do wykonywania tej samej pracy, którą może wykonać dany automat, przy czym ma on mniejszą liczbę stanów. Automat M min nazywamy automatem minimalnym odpowiadającym automatowi M, jeśli nie istnieje automat zredukowany o mniejszej liczbie stanów. Automat niezupełny to taki, który ma nieokreślone niektóre stany lub/i wyjścia (w tabeli występują kreski - ).Automat niezupełny może mieć kilka automatów minimalnych lub może nie miećżadnego, (czyli sam jest swoim automatem minimalnym). Wyznaczenie automatu minimalnego odbywa się w procesie minimalizacji. Przykład : Stan Stany następne Wyjścia obecny 0 0 0 0 - - - - 7 6 - - 6 - - 0 0 7 6 6.Konstruujemy tablicę trójkątną ułatwiającą porównanie stanów: 6 7. Porównujemy stany wpisując do tabeli x w kratki, które odpowiadają stanom, które nie mogą być połączone gdyż mają różne wyjścia.(np. stan ma na wyjściu 00 a stan -,czyli nie można ich połączyć) X X X X 6 X X X X 7 X X.Wpisujemy V w kratki dla których wyjścia są identyczne, czyli: x jeśli λ(x,p) i λ(x,q) są określone, to λ(x,p) = λ(x,q) ; oraz: a)stany są identyczne b)jeden ze stanów jest nieokreślony, albo para stanównastępnych jest taka sama jak para stanów obecnych

X X X X V V 7 X V X.W pozostałe kratki wpisujemy pary stanów następnych, jeśli porównywane stany mają te same wyjścia (wypisujemy pary stanów, które są warunkiem połączenia porównywanych stanów) X X (,) X (,) (,) X V V (6,7) 7 X (,6) (,6) (,6)(7,6) V X.Sprawdzamy kratki w których wypisane były stany warunkowe. Jeżeli któryś z warunków jest nie spełniony (jego kratka jest oznaczona X-em) to sprawdzane pole również oznaczamy przez X. Jeżeli żaden z warunków nie jest niespełniony to kratkę oznaczamy V. X X (,)V X (,)V (,)V X V V (6,7) X 7 X (,6)X (,6)X (,6)(7,6)X V X Kratki oznaczone V odpowiadają parom należącym do relacji niesprzeczności stanów ~; tzn. że:. Nie istnieje takie słowo dla którego litery wyjściowe końcowe są określone i różne od siebie;. Dla każdego słowa istnieje jeden z przypadków: a) litery wyjściowe końcowe są równe b) jedna z nich jest nieokreślona (lub obie) Zbiórstanów niesprzecznych {Q ~ } to: {Q ~ } ={(,6),(,),(,),(,),(,),(,),(,7)} Następnie wyznaczamy rodzinę wszystkich maksymalnych zbiorów stanów niesprzecznych za pomocą grafu :. Rysujemy graf w którym łączymy stany niesprzeczne;

. Zakreślamy maksymalne zbiory stanów niesprzecznych (tzn. takie stany, które są wszystkie wzajemnie ze sobą połączone), tak aby wszystkie stany zostały zakreślone przynajmniej raz;. Wypisujemy zakreślone zbiory. 6 7 {Q j }={{,6},{,,},{,,},{,7}} Występowanie w zbiorze par {(,),(,)(,)} umożliwia utworzenie trzyelementowego zbioru {,,} który będzie zbiorem maksymalnym. Występowanie w zbiorze par {(,),(,)(,)} umożliwia utworzenie trzyelementowego zbioru {,,} który będzie zbiorem maksymalnym. Zbiory {Q j }mogą nie być rozłączne, czyli mogą mieć wspólne elementy, dlatego liczba tych zbiorówmożebyć większa od liczby stanów. Należy teraz wyznaczyć najmniejszą rodzinę zamkniętą {P j },złożoną ze zbiorów stanów niesprzecznych, pokrywającą zbiór stanów automatu S. Powstaje ona w wyniku wybrania z rodziny{q j } niektórych zbiorów lub ich części. W większości przypadków najdogodniejszym sposobem wyznaczenia rodziny {P j } jest metoda prób ibłędów. Pomocne okazuje się twierdzenie przybliżające liczbę zbiorów w tej rodzinie, czyli n : d n g = min( k, t),gdzie k - liczba zbiorów rodziny Q j ; t liczba stanów pierwotnego automatu; d najmniejsza liczba zbiorów maksymalnych niezbędna do pokrycia stanów pierwotnych. W naszym przypadku: Stanyi6 występują tylko w pierwszym zbiorze, stan tylko w drugim, w trzecim,a 7 w czwartym; stąd k=. n min(,7) znierówności wnioskujemy że rodzina P j ma elementy czyli automat minimalny będzie miał stany.

Zaczynamy od rodziny maksymalnych zbibiorówstanó zgodnych: {{,6},{,,},{,,},{,7}} Sprawdzamy czy jest ona rodziną zamkniętą, (czyli że dla każdego zbioru stanów niesprzecznych T i ikażdej litery wejściowej x, istnieje należący do tej rodziny zbiór T j do którego należyzbiórstanównastępnych zbioru T i : δ ( x, T i ) T j ). Wtymcelu: a)sporządzamy pewnego rodzaju tablicę przejść wktórej stany obecne wpisujemy w grupach, takich jakie zbiory były w badanej rodzinie: (,6) (,,) (,,) (,7) 0 b)pod stanami obecnymi wpisujemy odpowiadające im stany następne: Dla {{,6},{,,},{,,},{,7}} (,6) (,,) (,,) (,7) 0 (, -) (-,-,7) (-,-,6) (6,6) (, -) (,,) (,,-) (-, 6) c)sprawdzamy czy powstałe w ten sposób zbiory stanów następnych, dla każdego słowa wejściowego, mają odpowiadający sobie zbiór stanów obecnych (są podzbiorem jakiegoś stanu obecnego),a więc: δ 0,{,6} = {, azbiórtennależydo zbioru {,,}-czyli w porzątku; ( ) } ale już (,{,,} ) {,,} δ = zbiór {,,} nie należy do żadnego zbioru naszej rodziny, gdyż, i występują w niej w osobnych zbiorach: {,,} oraz {,7} Widzimy, że rodzina {{,6},{,,},{,,},{,7}}nie jest rodziną zamkniętą, Rodzina nie jest zamknięta bowiem nie istnieje zbiór{,,}!!! Sprawdzamy inne rodziny elementowe pokrywające stany automatu. Wybieramy przykładowo: {{,6},{},{,,},{,7}}; {{,6},{,},{,,},{7}}; {{,6}.{,},{,},{,7}};. Sprawdzamy czy są one rodzinami zamkniętymi.

Sprawdzamy {{,6},{},{,,},{,7}}; (,6) () (,,) (,7) 0 (, -) (7) (-,-,6) (6,6) (, -) () (,,-) (-, 6) Rodzina nie jest zamknięta, więc musimy więc sprawdzić następną: {{,6},{,},{,,},{7}} w podobny sposób: (,6) (,) (,,) (7) 0 (, -) (-,7) (-,-,6) (6) (, -) (,) (,,-) ( 6) Mamy: δ 0,{,6} = {, } {,, ; ( ) } (,{,6} ) = {, } {,,}, oraz {} {,} ( 0,{,} ) = {,7} {7} (,{,} ) = {,} {,,} ( 0,{,,} ) = {,,6} {,6} (,{,,} ) = {,, } {,} ( 0,{7} ) = {6} {,6} (,{7} ) = {6} {,6} Zatem rodzina {{,6},{,},{,,},{7}} spełnia warunek zamknięcia, więc na jej podstawie wyznaczymy automat minimalny. Poszczególnym jej zbiorom przyporządkowujemy więc nowe nazwy np. a={,6} ; b={,}, c={,,} i d={7}. Konstruujemy automat minimalny: Stan stany następne wyjścia obecny 0 0 a c bvc 0 0 b d c c a b d a a Symbol b v c (b lub c) wystąpił gdyż należyzarównodonowegostanubjakidoc. δ, a = lub Podczas dalszego projektowania należy przyjąć jedną z możliwości: ( ) b δ (, a ) = c. W ten sposób otrzymaliśmy automat minimalny,który pokrywa automat M i ma najmniejszą możliwą liczbę stanów.