Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Dr Kamila Barylska 1.  Wykład 1: Obliczalność. Maszyna licznikowa.  Ćwiczenia 1: Programy na maszynę licznikową.  Wykład 2: Maszyna Turinga. Problemy,

Podobne prezentacje


Prezentacja na temat: "Dr Kamila Barylska 1.  Wykład 1: Obliczalność. Maszyna licznikowa.  Ćwiczenia 1: Programy na maszynę licznikową.  Wykład 2: Maszyna Turinga. Problemy,"— Zapis prezentacji:

1 dr Kamila Barylska 1

2  Wykład 1: Obliczalność. Maszyna licznikowa.  Ćwiczenia 1: Programy na maszynę licznikową.  Wykład 2: Maszyna Turinga. Problemy, których nie da się rozwiązać.  Ćwiczenia 2: Programy na maszynę Turinga.  Wykład 3: Liczące sieci Petriego.  Ćwiczenia 3: Konstruowanie sieci liczących. 2

3 Sieć Petriego (w skrócie p/t-sieć) to czwórka S=(P,T,F,M 0 ), gdzie:  P i T - skończone, niepuste i rozłączne zbiory  P - zbiór miejsc  T - zbiór akcji  elementy zbioru P  T - strzałki wejściowe  elementy zbioru T  P - strzałki wyjściowe  funkcja wagowa F: (P  T)  (T  P)  N określa wagi strzałek obu typów  M 0 - wielozbiór nad P (czyli funkcją M 0 : P  N), zwany markowaniem 3

4  miejsca - okręgi  akcje - prostokąty  strzałki jako strzałki ◦ pomijamy strzałki o wadze równej 0 ◦ przy strzałkach o wadze równej 1 nie piszemy liczby wagowej ◦ przy strzałkach o wadze większej niż 1 piszemy liczbę wagową  markingi reprezentujemy przez wstawienie właściwej liczby żetonów (kropek) do odpowiednich miejsc 4 ab 3 42

5  Akcja może się wykonać (czyli jest umożliwiona), jeśli w każdym jej miejscu wejściowym jest „wystarczająco dużo żetonów” (czyli przynajmniej tyle ile wynosi waga na strzałce z danego miejsca do tej akcji).  Wykonanie akcji zmienia bieżący marking: żetony są zabierane z miejsc wejściowych i dodawane do miejsc wyjściowych (zgodnie z wagami na strzałkach). 5 ab 3 42

6  Akcja może się wykonać (czyli jest umożliwiona), jeśli w każdym jej miejscu wejściowym jest „wystarczająco dużo żetonów” (czyli przynajmniej tyle ile wynosi waga na strzałce z danego miejsca do tej akcji).  Wykonanie akcji zmienia bieżący marking: żetony są zabierane z miejsc wejściowych i dodawane do miejsc wyjściowych (zgodnie z wagami na strzałkach). 6 ab 3 42

7  Akcja może się wykonać (czyli jest umożliwiona), jeśli w każdym jej miejscu wejściowym jest „wystarczająco dużo żetonów” (czyli przynajmniej tyle ile wynosi waga na strzałce z danego miejsca do tej akcji).  Wykonanie akcji zmienia bieżący marking: żetony są zabierane z miejsc wejściowych i dodawane do miejsc wyjściowych (zgodnie z wagami na strzałkach). 7 ab 3 42

8  Akcja może się wykonać (czyli jest umożliwiona), jeśli w każdym jej miejscu wejściowym jest „wystarczająco dużo żetonów” (czyli przynajmniej tyle ile wynosi waga na strzałce z danego miejsca do tej akcji).  Wykonanie akcji zmienia bieżący marking: żetony są zabierane z miejsc wejściowych i dodawane do miejsc wyjściowych (zgodnie z wagami na strzałkach). 8 ab 3 42

9  Akcja może się wykonać (czyli jest umożliwiona), jeśli w każdym jej miejscu wejściowym jest „wystarczająco dużo żetonów” (czyli przynajmniej tyle ile wynosi waga na strzałce z danego miejsca do tej akcji).  Wykonanie akcji zmienia bieżący marking: żetony są zabierane z miejsc wejściowych i dodawane do miejsc wyjściowych (zgodnie z wagami na strzałkach). 9 ab 3 42

10 Sieć licząca lub obliczająca - (krótko p/t-obliczak) - sieć z wyróżnionymi podzbiorami miejsc:  argumentowych P s =  p 1,…,p n   roboczych P r i wyróżnionym miejscem wynikowym p f oraz roboczym markowaniem początkowym M r. 10

11 Jak działa sieć licząca n-argumentową funkcję f:N n →N? 1. wstawiamy kolejne argumenty do miejsc p 1,…,p n 2. „uruchamiamy sieć” 3. jeśli uda nam się osiągnąć „pusty marking”, czyli taki, w którym wszystkie miejsca (poza miejscem wynikowym p f ) są puste, to w miejscu wynikowym p f znajduje się liczba żetonów odpowiadająca wynikowi.  Uwaga: Nie może dojść do sytuacji, że osiągamy „pusty marking”, zaś w miejscu wynikowym znajduje się niewłaściwa liczba żetonów. 11

12 12 ab p1p1 p2p2 pfpf x żetonów y żetonów

13 13 ab p1p1 p2p2 pfpf x = 3 y = 2

14 14 ab p1p1 p2p2 pfpf x = 3 y = 2

15 15 ab x y pfpf x = 3 y = 2 Które akcje są umożliwione?

16 16 ab x y pfpf x = 3 y = 2 Jeśli dwie akcje są umożliwione, wybieramy, którą chcemy wykonać!

17 17 ab x y pfpf x = 3 y = 2

18 18 ab x y pfpf x = 3 y = 2

19 19 ab x y pfpf x = 3 y = 2

20 20 ab x y pfpf x = 3 y = 2

21 21 ab x y pfpf x = 3 y = 2

22 22 ab x y pfpf x = 3 y = 2

23 23 ab x y pfpf x = 3 y = 2

24 24 ab x y pfpf x = 3 y = 2

25 25 ab x y pfpf x = 3 y = 2

26 26 ab x y pfpf x = 3 y = 2

27 27 ab x y pfpf x = 3 y = 2

28 28 ab x y pfpf x = 3 y = 2

29 29 ab x y pfpf x = 3 y = 2

30 30 ab x y pfpf x = 3 y = 2

31 31 ab x y pfpf x = 3 y = 2

32 32 ab x y pfpf x = 3 y = 2

33 33 ab x y pfpf x = 3 y = 2 pusty marking

34 34 ab x y pfpf x = 3 y = 2 pusty marking

35 35 ab x y pfpf x = 3 y = 2 WYNIK: f(2,3)=5 pusty marking

36  P/t sieci liczące mają ograniczoną moc obliczeniową!  Nie jesteśmy w stanie stworzyć sieci liczącej, która prawidłowo oblicza mnożenie. 36 f(x,y)=x  y nie da się policzyć z pomocą p/t-sieci liczącej CO ZROBIĆ? musimy rozszerzyć nasze sieci o dodatkowe łuki

37  Sieci inhibitorowe są rozszerzeniem p/t-sieci.  Powstają przez dodanie krawędzi inhibitorowych prowadzących od miejsc do akcji oraz modyfikację reguł umożliwienia akcji.  W sieci inhibitorowej akcja jest umożliwiona jeśli: ◦ każde miejsce wejściowe połączone z nią zwykłą krawędzią ma „wystarczającą” liczbę żetonów, ◦ każde miejsce wejściowe połączone z nią krawędzią inhibitorową jest puste. 37 ab 324

38  Sieci inhibitorowe są rozszerzeniem p/t-sieci.  Powstają przez dodanie krawędzi inhibitorowych prowadzących od miejsc do akcji oraz modyfikację reguł umożliwienia akcji.  W sieci inhibitorowej akcja jest umożliwiona jeśli: ◦ każde miejsce wejściowe połączone z nią zwykłą krawędzią ma „wystarczającą” liczbę żetonów, ◦ każde miejsce wejściowe połączone z nią krawędzią inhibitorową jest puste. 38 ab 324

39  Sieci inhibitorowe są rozszerzeniem p/t-sieci.  Powstają przez dodanie krawędzi inhibitorowych prowadzących od miejsc do akcji oraz modyfikację reguł umożliwienia akcji.  W sieci inhibitorowej akcja jest umożliwiona jeśli: ◦ każde miejsce wejściowe połączone z nią zwykłą krawędzią ma „wystarczającą” liczbę żetonów, ◦ każde miejsce wejściowe połączone z nią krawędzią inhibitorową jest puste. 39 ab 324

40  Sieci inhibitorowe są rozszerzeniem p/t-sieci.  Powstają przez dodanie krawędzi inhibitorowych prowadzących od miejsc do akcji oraz modyfikację reguł umożliwienia akcji.  W sieci inhibitorowej akcja jest umożliwiona jeśli: ◦ każde miejsce wejściowe połączone z nią zwykłą krawędzią ma „wystarczającą” liczbę żetonów, ◦ każde miejsce wejściowe połączone z nią krawędzią inhibitorową jest puste. 40 ab 324

41  Sieci inhibitorowe są rozszerzeniem p/t-sieci.  Powstają przez dodanie krawędzi inhibitorowych prowadzących od miejsc do akcji oraz modyfikację reguł umożliwienia akcji.  W sieci inhibitorowej akcja jest umożliwiona jeśli: ◦ każde miejsce wejściowe połączone z nią zwykłą krawędzią ma „wystarczającą” liczbę żetonów, ◦ każde miejsce wejściowe połączone z nią krawędzią inhibitorową jest puste. 41 ab 324

42 Inhibitorowe liczące mają moc obliczeniową równą mocy:  maszyn licznikowych  maszyn Turinga. 42 f(x,y)=x  y można policzyć z pomocą inhibitorowej sieci liczącej CO WIĘCEJ: WSZYSTKO CO DA SIĘ POLICZYĆ MOŻNA POLICZYĆ Z UŻYCIEM INHIBITOROWYCH SIECI LICZĄCYCH!!!

43 Zadanie 1 Skonstruować sieć Petriego obliczającą funkcje: 43 Zadanie dodatkowe Skonstruować sieć inhibitorową obliczającą funkcję f(x,y)=x  y.


Pobierz ppt "Dr Kamila Barylska 1.  Wykład 1: Obliczalność. Maszyna licznikowa.  Ćwiczenia 1: Programy na maszynę licznikową.  Wykład 2: Maszyna Turinga. Problemy,"

Podobne prezentacje


Reklamy Google