Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska.

Podobne prezentacje


Prezentacja na temat: "Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska."— Zapis prezentacji:

1 Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące
dr Kamila Barylska

2 Wykład 1: Obliczalność. Maszyna licznikowa.
Plan zajęć 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.

3 Sieci Petriego – formalna definicja
Sieć Petriego (w skrócie p/t-sieć) to czwórka S=(P,T,F,M0), 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 M0 - wielozbiór nad P (czyli funkcją M0: P N), zwany markowaniem

4 Sieci Petriego – interpretacja graficzna
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 a b 3 4 2

5 Sieci Petriego – działanie
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). a b 3 4 2

6 Sieci Petriego – działanie
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). a b 3 4 2

7 Sieci Petriego – działanie
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). a b 3 4 2

8 Sieci Petriego – działanie
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). a b 3 4 2

9 Sieci Petriego – działanie
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). a b 3 4 2

10 Sieci liczące – formalna definicja
Sieć licząca lub obliczająca - (krótko p/t-obliczak) - sieć z wyróżnionymi podzbiorami miejsc: argumentowych Ps = p1,…,pn roboczych Pr i wyróżnionym miejscem wynikowym pf oraz roboczym markowaniem początkowym Mr.

11 Sieci liczące – działanie
Jak działa sieć licząca n-argumentową funkcję f:Nn→N? wstawiamy kolejne argumenty do miejsc p1,…,pn „uruchamiamy sieć” jeśli uda nam się osiągnąć „pusty marking”, czyli taki, w którym wszystkie miejsca (poza miejscem wynikowym pf) są puste, to w miejscu wynikowym pf 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.

12 Sieci liczące – przykład – f(x,y)=x+y
y żetonów x żetonów a b pf

13 Sieci liczące – przykład – f(x,y)=x+y
b p1 p2 pf

14 Sieci liczące – przykład – f(x,y)=x+y
b pf

15 Sieci liczące – przykład – f(x,y)=x+y
b Które akcje są umożliwione? pf

16 Sieci liczące – przykład – f(x,y)=x+y
b Jeśli dwie akcje są umożliwione, wybieramy, którą chcemy wykonać! pf

17 Sieci liczące – przykład – f(x,y)=x+y
b pf

18 Sieci liczące – przykład – f(x,y)=x+y
b pf

19 Sieci liczące – przykład – f(x,y)=x+y
b pf

20 Sieci liczące – przykład – f(x,y)=x+y
b pf

21 Sieci liczące – przykład – f(x,y)=x+y
b pf

22 Sieci liczące – przykład – f(x,y)=x+y
b pf

23 Sieci liczące – przykład – f(x,y)=x+y
b pf

24 Sieci liczące – przykład – f(x,y)=x+y
b pf

25 Sieci liczące – przykład – f(x,y)=x+y
b pf

26 Sieci liczące – przykład – f(x,y)=x+y
b pf

27 Sieci liczące – przykład – f(x,y)=x+y
b pf

28 Sieci liczące – przykład – f(x,y)=x+y
b pf

29 Sieci liczące – przykład – f(x,y)=x+y
b pf

30 Sieci liczące – przykład – f(x,y)=x+y
b pf

31 Sieci liczące – przykład – f(x,y)=x+y
b pf

32 Sieci liczące – przykład – f(x,y)=x+y
b pf

33 Sieci liczące – przykład – f(x,y)=x+y
b pusty marking pf

34 Sieci liczące – przykład – f(x,y)=x+y
b pusty marking pf

35 Sieci liczące – przykład – f(x,y)=x+y
b pusty marking WYNIK: f(2,3)=5 pf

36 Sieci liczące – ograniczenia
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. 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 a b Sieci inhibitorowe 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. a b 3 2 4

38 a b Sieci inhibitorowe 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. 4 2 3 a b

39 a b Sieci inhibitorowe 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. 4 2 3 a b

40 a b Sieci inhibitorowe 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. 4 2 3 a b

41 a b Sieci inhibitorowe 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. 4 2 3 a b

42 Inhibitorowe sieci liczące
Inhibitorowe liczące mają moc obliczeniową równą mocy: maszyn licznikowych maszyn Turinga. 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:
Zadania Zadanie 1 Skonstruować sieć Petriego obliczającą funkcje: f(x,y,z) = x f(x) = x 3 f(x,y,z) = 0  f(x) = x 3    f(x,y,z) = x+z f(x,y,z) = 5x+4y+3  f(x) = x k f(x) = x 2 f(x) = x 2   f(x,y) = xy Zadanie dodatkowe Skonstruować sieć inhibitorową obliczającą funkcję f(x,y)=xy.


Pobierz ppt "Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska."

Podobne prezentacje


Reklamy Google