WYKORZYSTANIE LOGIKI SEKWENTÓW GENTZENA DO SYMBOLICZNEJ ANALIZY SIECI PETRIEGO

Podobne dokumenty
WYKORZYSTANIE LOGIKI SEKWENTÓW GENTZENA DO PROJEKTOWANIA KOMBINACYJNYCH UKŁADÓW CYFROWYCH

Paradygmaty dowodzenia

WERYFIKACJA UKŁADÓW STEROWANIA BINARNEGO

Definicja sieci. Sieć Petriego jest czwórką C = ( P, T, I, O ), gdzie: P = { p 1, p 2,, p n } T = { t 1, t 2,, t m }

Symboliczna analiza układów sterowania binarnego z wykorzystaniem wybranych metod analizy sieci Petriego

Uniwersytet Zielonogórski

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Drzewa Semantyczne w KRZ

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ

SZTUCZNA INTELIGENCJA

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

SYNTEZA AUTOMATÓW SKOŃCZONYCH Z WYKORZYSTANIEM METOD KODOWANIA WIELOKROTNEGO

Metody dowodzenia twierdzeń i automatyzacja rozumowań Tabele syntetyczne: definicje i twierdzenia

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

RACHUNEK ZDAŃ 7. Dla każdej tautologii w formie implikacji, której poprzednik również jest tautologią, następnik także jest tautologią.

Logiczna reprezentacja wiedzy i metoda logiczno-algebraiczna

PRZEWODNIK PO PRZEDMIOCIE

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

Schematy Piramid Logicznych

Arytmetyka liczb binarnych

Metoda Tablic Semantycznych

ANALIZA WPŁYWU WYBRANYCH PARAMETRÓW SYGNAŁU WYMUSZAJĄCEGO NA CZAS ODPOWIEDZI OBIEKTU

Sterowniki Programowalne (SP)

Logika intuicjonistyczna

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

Np. Olsztyn leży nad Łyną - zdanie prawdziwe, wartość logiczna 1 4 jest większe od 5 - zdanie fałszywe, wartość logiczna 0

Wykład z Technologii Informacyjnych. Piotr Mika

PROJEKTOWANIE UKŁADÓW MIKROPROGRAMOWANYCH Z WYKORZYSTANIEM WBUDOWANYCH BLOKÓW PAMIĘCI W MATRYCACH PROGRAMOWALNYCH

Wykład 6. Reguły inferencyjne systemu aksjomatycznego Klasycznego Rachunku Zdań

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

5. OKREŚLANIE WARTOŚCI LOGICZNEJ ZDAŃ ZŁOŻONYCH

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.

Najkrótsza droga Maksymalny przepływ Najtańszy przepływ Analiza czynności (zdarzeń)

Rachunek zdań i predykatów

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

TEORETYCZNE PODSTAWY INFORMATYKI

9 10 = U1. Przykład dla liczby dziesiętnej ( 9): negacja 1001= =10110 U1. Podsumowując: w zapisie dziesiętnym

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

Definicje. Algorytm to:

Spacery losowe generowanie realizacji procesu losowego

Technika cyfrowa Synteza układów kombinacyjnych

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Zadanie 1. Suma silni (11 pkt)

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

MODELOWANIE SIECI PETRIEGO Z WYKORZYSTANIEM RELACYJNEJ BAZY DANYCH

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Programowanie deklaratywne

PROJEKT I OPTYMALIZACJA STRUKTURY LOGICZNEJ DYDAKTYCZNEGO SYSTEMU MIKROPROCESOROWEGO DLA LABORATORIUM PROJEKTOWANIA ZINTEGROWANEGO

Implementacja filtru Canny ego

Harmonogramowanie przedsięwzięć

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

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

Logika Matematyczna (2,3)

Kryteria oceniania z matematyki zakres podstawowy Klasa I

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

MATEMATYKA DYSKRETNA, PODSTAWY LOGIKI I TEORII MNOGOŚCI

ĆWICZENIE 2. DEF. Mówimy, że formuła A wynika logicznie z formuł wartościowanie w, takie że w A. A,, A w KRZ, jeżeli nie istnieje

Maciej Piotr Jankowski

Architektura komputerów Wykład 2

ALGORYTM PROJEKTOWANIA ROZMYTYCH SYSTEMÓW EKSPERCKICH TYPU MAMDANI ZADEH OCENIAJĄCYCH EFEKTYWNOŚĆ WYKONANIA ZADANIA BOJOWEGO

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Wykład I: Kodowanie liczb w systemach binarnych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

zna metody matematyczne w zakresie niezbędnym do formalnego i ilościowego opisu, zrozumienia i modelowania problemów z różnych

0.1. Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań.

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Wstęp do logiki. Klasyczny Rachunek Zdań II

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

Podstawowe Pojęcia. Semantyczne KRZ

dr inż. Małgorzata Langer Architektura komputerów

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

6. Organizacja dostępu do danych przestrzennych

Inteligencja obliczeniowa

Lista 1 (elementy logiki)

Wstęp do Techniki Cyfrowej... Algebra Boole a

Algorytmy i struktury danych. Wykład 4

Analiza sieci Petriego

Automatyczna klasyfikacja zespołów QRS

ZARZĄDZANIE PROCESAMI I PROJEKTAMI. Zakres projektu. dr inż. ADAM KOLIŃSKI ZARZĄDZANIE PROCESAMI I PROJEKTAMI. Zakres projektu. dr inż.

WYKONANIE APLIKACJI WERYFIKUJĄCEJ PIONOWOŚĆ OBIEKTÓW WYSMUKŁYCH Z WYKORZYSTANIEM JĘZYKA C++ 1. Wstęp

Jest to zasadniczo powtórka ze szkoły średniej, być może z niektórymi rzeczami nowymi.

Wykład 2. Informatyka Stosowana. 8 października 2018, M. A-B. Informatyka Stosowana Wykład 2 8 października 2018, M. A-B 1 / 41

EGZAMIN MATURALNY Z INFORMATYKI. 10 maja 2017 POZIOM ROZSZERZONY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I

Laboratorium podstaw elektroniki

Temat 5. Programowanie w języku Logo

Wykład I. Wprowadzenie do baz danych

Podstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

Logika Matematyczna (10)

Wykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych

Sortowanie. Bartman Jacek Algorytmy i struktury

Relacyjny model baz danych, model związków encji, normalizacje

Analiza sieci Petriego

Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki

INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Wstęp. Jak programować w DNA? Idea oraz przykład. Problem FSAT charakterystyka i rozwiązanie za pomocą DNA. Jak w ogólności rozwiązywać problemy

5. Rozwiązywanie układów równań liniowych

Lista zadań nr 1. Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania algorytmów sterowania procesami

Transkrypt:

II Konferencja Naukowa KNWS'05 "Informatyka- sztuka czy rzemios o" 15-18 czerwca 2005, Z otniki Luba skie WYKORZYSTANIE LOGIKI SEKWENTÓW GENTZENA DO SYMBOLICZNEJ ANALIZY SIECI PETRIEGO Jacek Tkacz Instytut Informatyki i Elektroniki, Uniwersytet Zielonogórski 65-246 Zielona Góra, ul. Podgórna 50 e-mail: J.Tkacz@iie.uz.zgora.pl STRESZCZENIE W referacie przedstawiono koncepcj i sposób analizy sieci Petriego z wykorzystaniem naturalnego wnioskowania Gentzena. Zastosowanie niniejszej metody pozwala na pomini cie kilku kroków w procesie analizy symbolicznej sieci, które opisywane s w literaturze i zast pienie ich jednym bardziej abstrakcyjnym algorytmem. Istotn nowo ci w pracy jest wykorzystanie do tego celu autorskiego, eksperymentalnego systemu automatycznego wnioskowania metod Gentzena. System ten został zaimplementowany w j zyku C i sprawdzony podczas rozwi zywaniu ró norodnych zagadnie o charakterze kombinatorycznym, obejmuj cych przestrze co najmniej kilkunastu zmiennych. 1. WPROWADZENIE W literaturze opisywane są różne metody analizy sieci Petriego, które można podzielić na następujące cztery grupy [8]: metoda grafu znakowań, metody macierzowe, metody symboliczne, techniki redukcji. Charakteryzują się one różną złożonością obliczeniową i efektywnością. Nadają się do badania różnego rodzaju klas sieci. Obecnie, w związku z rozwojem metod analizy symbolicznej, dostępnych jest coraz więcej algorytmów i narzędzi, możliwych do zastosowania w badaniach nad sieciami Petriego. Stosując metodę symboliczną można badać strukturalne własności sieci. Metoda symboliczna bazująca na logice Gentzena [1,7] i symbolicznym przetwarzaniu danych, polega na wyznaczeniu wszystkich blokad i pułapek w sieci z jednoczesnym zlokalizowaniem tych fragmentów, w których występują defekty. 2. SYSTEM GENTZENA W systemie Gentzena zastosowano dziesięć reguł wnioskowania [1] dla następujących spójników logicznych: negacja /, dysjunkcja +, koniunkcja *, implikacja -> 169

i równoważność <->. Dla każdego spójnika zostały podane dwie reguły jego eliminowania. Jedna z nich dotyczy sytuacji, gdy spójnik logiczny znajduje się po lewej stronie sekwentu, a druga, gdy spójnik umieszczony po prawej stronie sekwentu. Wyboru reguły dokonuje się poprzez lokalizację głównego spójnika względem znaku wynikania logicznego -. Reguły Gentzena operują na logicznych zdaniach warunkowych, złożonych z warunku i skutku. Reguły stosowane są zawsze do spójnika głównego formuły nieelementarnej w redukowanym sekwencie. Proces redukcji powtarzany jest tak długo, aż otrzymane zostaną same sekwenty znormalizowane, to jest sekwenty niezawierające żadnych spójników logicznych. Dodatkowo do systemu Gentzena wprowadzono cztery reguły minimalizacji wyrażeń normalizowanych [1,7]: tautologii, sklejania sekwentów, pochłaniania oraz consensusu. Minimalizacja w tym przypadku, poza zmniejszeniem liczby wyników, ma znaczny wpływ na skrócenie przebiegu normalizacji. Odpowiednio wczesne zlokalizowanie sklejeń i tautologii pozwala na pominiecie analizy zbędnych sekwentów, które nie mają wpływu na wartość logiczną badanego wyrażenia. Nowością w pracach nad algorytmem jest wprowadzenie dodatkowego spójnika XOR <+>, rozszerzającego system Gentzena o kolejne dwie reguły wnioskowania oraz wprowadzenie stałych, zawsze prawdziwej 1 i zawsze fałszywej 0. 3. WYZNACZANIE BLOKAD I PUŁAPEK W SIECI PETRIEGO Struktura topologiczna sieci Petriego może być przedstawiona w postaci różnych wyrażeń logicznych. Jednym ze sposobów przedstawionych w literaturze jest opisanie pewnych własności strukturalnych sieci w postaci formuł Horna [2] i zastosowanie efektywnych algorytmów np. Thelena-Mathonego [8] do analizy tych własności. Możliwe jest zastąpienie algorytmu Thelena-Mathonego [4] naturalnym wnioskowaniem Gentzena. Właściwości systemu Gentzena umożliwiają analizę złożonych wyrażeń opisujących blokady i pułapki, bez konieczności transformacji ich do postaci formuł Horna. a) Wyznaczanie blokad. Na podstawie definicji blokady dla fragmentu sieci przedstawionego na rysunku (rys. 1) otrzymywane jest: jeżeli p 3 S, to p 1 S lub p 2 S oraz (1) jeżeli p 4 S, to p 1 S lub p 2 S (2) 170

Rys. 1. Fragment sieci Przedstawiając p i za pomocą zmiennej logicznej x i zależności (1) i (2) można zapisać w postaci wyrażeń: x 3 ->x 1 +x 2 (3) x 4 ->x 1 +x 2. (4) Stosując własność: a+b->c (a->c) (b->c) (5) otrzymuje się: (x 3 +x 4 )->(x 1 +x 2 ). (6) Po lewej stronie znaku implikacji znajduje się suma wszystkich zmiennych wyjściowych tranzycji t, natomiast po prawej stronie suma wszystkich zmiennych wejściowych: pi t x i -> pj tx j. (7) Dla całej sieci wyrażenie opisujące wszystkie tranzycje przyjmie postać: t T ( pi t x i -> pj tx j ). (8) Wszystkie wektory odpowiadające rozwiązaniom powyższego wyrażenia (8) odpowiadają blokadom w sieci Petriego. a) Wyznaczanie pułapek Na podstawie definicji pułapki dla fragmentu sieci przedstawionego na rysunku (rys. 1) otrzymywane jest: jeżeli p 1 Q, to p 3 Q lub p 4 Q oraz (9) jeżeli p 2 Q, to p 3 Q lub p 4 Q (10) Przedstawiając p i za pomocą zmiennej logicznej x i zależności (9) i (10) można zapisać w postaci wyrażeń: x 1 ->x 3 +x 4 (11) x 2 ->x 3 +x 4. (12) 171

Stosując własność: a+b->c (a->c) (b->c) (13) otrzymuje się: (x 1 +x 2 )->(x 3 +x 4 ). (14) Po lewej stronie znaku implikacji znajduje się suma wszystkich zmiennych wejściowych tranzycji t, natomiast po prawej stronie suma wszystkich zmiennych wyjściowych: pi t x i -> pj t x j (15) Dla całej sieci wyrażenie opisujące wszystkie tranzycje przyjmie postać: t T ( pi t x i -> pj t x j ). (16) Wszystkie wektory odpowiadające rozwiązaniom powyższego wyrażenia (16) odpowiadają pułapkom w sieci Petriego. Aby poddać normalizacji Gentzena wyrażenia opisujące blokady i pułapki, należy zapisać je w postaci sekwentów: blokady (x 3 +x 4 )->(x 1 +x 2 ) -; (17) pułapki (x 1 +x 2 )->(x 3 +x 4 ) -; (18) Poniższy rysunek (rys. 2) przedstawia graficzne reprezentacje normalizacji sekwentów (17,18) według reguł Gentzena, opisujących blokady i pułapki dla fragmentu sieci (rys. 1). Rys. 2. Normalizacja wyra e wg reguł Gentzena: a) blokady; b) pułapki. Blokady i pułapki występują po lewej stronie znaku wynikania logicznego w znormalizowanych sekwentach: blokady x 1 i x 2, pułapki x 3 i x 4. 172

4. BADANIE YWOTNO CI SIECI Z ZASTOSOWANIEM LOGIKI GENTZENA Algorytm wyznaczania wszystkich blokad i pułapek nadaje się do sprawdzania żywotności sieci Petriego [5,6]. Aby stwierdzić, czy dana sieć jest żywa, należy zbadać zależności między blokadami a pułapkami. Po wyznaczeniu rozwiązań dla normalizowanych sekwentów opisujących blokady i pułapki, należy sprawdzić zgodnie z własnością Commonera [3], czy każda wyznaczona blokada zawiera oznakowaną pułapkę. W przypadku pułapek należy sprawdzić, czy każda wyznaczona pułapka zawiera oznakowaną blokadę. Zastosowanie algorytmu Gentzena automatyzuje proces badania żywotności. Możliwe jest połączenie procesu wyznaczania blokad i pułapek wraz z badaniem zależności pomiędzy nimi. Jako przykład przedstawione zostaną symboliczne procesy badania sieci żywej (rys. 3a) i nieżywej (rys. 3b). Ze względu na dużą liczbę obliczeń, dokumentacja z poszczególnych przebiegów normalizacji została pominięta. Rys. 3. Przykład sieci a) ywej, b) nie ywej z klasy AC Sekwenty opisujące blokady i pułapki dla sieci żywej (rys. 3a), uzyskane według algorytmu opisanego w rozdziale 3, będą miały postać: blokady ((p4->(p1+p2)) * (p5->(p2+p3)) * ((p1 + p2)->p4) * ((p2 + p3)->p5)) -; (19) pułapki: ((p1+p2)->p4) * ((p2+p3)->p5) * (p4->(p1 + p2)) * (p5->(p2 + p3)) -; (20) W wyniku normalizacji sekwentów (19,20) otrzymane zostaną wszystkie wyrażenia opisujące blokady i pułapki w sieci (tab. 1). W zależności od normalizowanego wyrażenia lewa strona każdego sekwentu opisuje blokadę lub pułapkę. 173

Tab. 1. Wyznaczone blokady i pułapki dla sieci ywej Sekwenty blokad Sekwenty pułapek Blokady Pułapki p1,p3,p4,p5 -; p4,p5,p1,p3 -; {p1,p3,p4,p5} {p1,p3,p4,p5} p2,p4,p5 -; p4,p5,p2 -; {p2,p4,p5} {p2,p4,p5} p1,p4 -p2,p3,p5; p4,p1 -p5,p2,p3; {p1,p4} {p1,p4} p3,p5 -p1,p2,p4; p5,p3 -p4,p1,p2; {p3,p5} {p3,p5} -p2,p3,p1,p5,p4; -p5,p4,p2,p3,p1; Wszystkie blokady i pułapki wzajemnie się zawierają. Oznacza to, że badana sieć jest żywa. Sekwenty opisujące blokady i pułapki dla sieci nieżywej (rys. 3b) będą miały postać: blokady: ((p4->(p1+p2)) * (p5->(p3+p2)) * ((p1 + p2)->p4) * (p3->p5)) -; (21) pułapki: ((p1+p2)->p4) * ((p3+p2)->p5) * (p4->(p1 + p2)) * (p5->p3) -; (22) W wyniku normalizacji wyrażeń (21,22) otrzymano sekwenty dla blokad i pułapek (tab. 2). Tab. 2. Wyznaczone blokady i pułapki dla sieci nie ywej Sekwenty blokad Sekwenty pułapek Blokady Pułapki p1,p3,p4,p5 -; p4,p5,p1,p3 -; {p1,p3,p4,p5} {p1,p3,p4,p5} p2,p4,p5 -; p4,p5,p2,p3 -; {p2,p4,p5} {p2,p3,p4,p5} p2,p4 -p3; p4,p1 -p5,p3,p2; {p2,p4} {p1,p4} p1,p4 -p3,p5; p5,p3 -p4,p1,p2; {p1,p4} {p3,p5} p3,p5 -p1,p2,p4; -p5,p4,p3,p2,p1; {p3,p5} -p3,p1,p2,p5,p4; W tabeli (tab. 2) zaznaczono blokady, które nie zawierają żadnych pułapek, co oznacza, że badana sieć nie jest żywa. W celu całkowitego zautomatyzowania mechanizmu badania żywotności sieci Petriego w oparciu o system Gentzena, należy zbudować sekwent z wyrażeń opisujących zarówno blokady i pułapki. Ogólny zapis takiego sekwentu będzie wyglądał następująco: - t T ( pi t x i -> pj tx j ) <-> t T ( pi t x i -> pj t x j ); (23) Konstrukcja taka zakłada, że wszystkie blokady zawierają pułapki i jednocześnie wszystkie pułapki zawierają blokady. Wynikiem normalizacji sekwentu (23) będą pułapki lub blokady, 174

które się wzajemnie nie zawierają. Jeżeli w procesie normalizacji nie powstanie żaden sekwent, będzie to oznaczało, że badana sieć jest żywa. W wyniku normalizacji sekwentu powstałego według wzoru (23), dla przykładowej sieci z rysunku 3a: -(((p4->(p1+p2)) * (p5->(p2+p3)) * ((p1 + p2)->p4) * ((p2 + p3)->p5))) <->(((p1+p2)->p4) * ((p2+p3)->p5) * (p4->(p1 + p2)) * (p5->(p2 + p3))); (24) nie powstał żaden sekwent, co potwierdza fakt, że badana sieć jest żywa. W przypadku normalizacji sekwentu dla sieci z rysunku 3b: -(((p4->(p1+p2)) * (p5->(p3+p2)) * ((p1 + p2)->p4) * (p3->p5))) <->(((p1+p2)->p4) * ((p3+p2)->p5) * (p4->(p1 + p2)) * (p5->p3)); (25) powstaną sekwenty (26,27) jednoznacznie wskazujące blokady i pułapki, które nie pokrywają się wzajemnie, informując o tym, że badana sieć nie jest żywa. p2,p4 -p3,p5; (26) p2,p4,p5 -p3; (27) Metoda oprócz zbadania żywotności sieci nie pozwala na stwierdzenie, czy dany sekwent wynikowy jest blokadą, czy pułapką. Taka identyfikacja możliwa jest, jeżeli normalizacji poddane zostaną następujące sekwenty: blokady - pułapki: t T ( pi t x i -> pj tx j ) - t T ( pi t x i -> pj t x j ); (28) pułapki - blokady: t T ( pi t x i -> pj t x j ) - t T ( pi t x i -> pj tx j ); (29) W przypadku badania sieci żywej obydwa wyrażenia nie będą miały rozwiązań. W przypadku sieci nieżywej wynikiem normalizacji wyrażenia (blokady - pułapki;) będą pułapki niezawierające blokad, natomiast dla wyrażenia (pułapki - blokady,) wynikiem będą blokady niezawierające pułapek. Może wystąpić sytuacja, kiedy tylko jedno z wyrażeń będzie posiadało rozwiązania, tak jak ma to miejsce w badanym przykładzie, gdzie dla wyrażenia (29) wynikiem będą blokady niezawierające pułapek.. 5. PODSUMOWANIE, WYNIKI EKSPERYMENTÓW. Wszystkie normalizacje wykonywane były przy pomocy eksperymentalnego oprogramowania na komputerze klasy P4 z zegarem 2Ghz. Poniższa tabela (tab. 3) przedstawia czasy normalizacji oraz liczby węzłów drzewa dowodu informujące o liczbie wykonywanych operacji. Należy zwrócić też uwagę, że zastosowany algorytm aplikacji często wykonuje więcej niż jedną operację w jednym węźle drzewa oraz pomija możliwie jak 175

najwcześniej obliczenia, które nie mają wpływu na wartość logiczną badanego wyrażenia. Tabela 3 zawiera wyniki testów implementacji algorytmu Gentzena dla przykładu z rozdziału 4, dotyczącego badania żywotności sieci. Tab. 3. Wyznaczone blokady i pułapki dla sieci nie ywej Rodzaj sekwentu Rodzaj sieci Liczba w złów Czas -blokady<->pułapki; ywa 148 <1s blokady -pułapki; ywa 77 <1s pułapki -blokady; ywa 71 <1s -blokady<->pułapki; nie ywa 153 <1s blokady -pułapki; nie ywa 72 <1s pułapki -blokady; nie ywa 80 <1s Eksperymentalny program wnioskujący wykonywał wszystkie przykładowe normalizacje w czasie mniejszym od 1 sekundy. Liczba węzłów w drzewie dowodu nie przekroczyła liczby 153. W odróżnieniu od kosztownych lub nadmiarowych systemów profesjonalnych, układ wnioskujący Gentzena umożliwia klarowną, w miarę szybką analizę symboliczną sieci Petriego. LITERATURA [1] M. Adamski: Projektowanie układów cyfrowych systematyczną metodą strukturalną, Wydawnictwo Wyższej Szkoły Inżynierskiej w Zielonej Górze, Zielona Góra 1990 [2] K. Barkaoui, M. Minoux: A polynomial-time graph algorithm to decide liveness of some basic classes of bounded Petri nets. Lecture Notes in Computer Science, Berlin 1992:Springer Verlag, Vol.616,ss.62-75 [3] F. Commoner: Deadlocks in Petri Nets. - Wakefield 1972: Applied Data Res. Inc [4] H. J. Mathony: Uniwersal logic design algorithm and its application the synthesisof twolewel switching circuits. IEE Proceedings Letters, Elsevier Science Publishers (North Holland),Vol.29,1990,pp. 195-210 [5] T. Murata: Petri nets:properties, analysis and applications. Proceedings of the IEEE 1989, Vol.77, No4, ss. 541-580 [6] Z. Suraj, M. Szpyrka: Sieci Petriego I PN-Tools. Wydawnictwo Wyższej Szkoły Pedagogicznej, Rzeszów 1999 [7] Z. Pawlak: Automatyczne dowodzenie twierdzeń. Państwowe Zakłady Wydawnictw Szkolnych, Warszawa 1965 [8] A. Węgrzyn: Symboliczna analiza układów sterowania binarnego z wykorzystaniem wybranych metod analizy sterowania binarnego. Rozprawa doktorska, Politechnika Warszawska, Warszawa, 2002 176