Wprowadzenie Logiki temporalne Przykłady użycia Bibliografia. Logiki temporalne. Andrzej Oszer. Seminarium Protokoły Komunikacyjne

Podobne dokumenty
Logika Temporalna i Automaty Czasowe

Logika Temporalna i Automaty Czasowe

Weryfikacja modelowa. Protokoły komunikacyjne 2006/2007. Paweł Kaczan

Logika Temporalna i Automaty Czasowe

Logika Temporalna i Automaty Czasowe

Programy współbieżne

Logika 2 Logiki temporalne

procesów Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Logika Temporalna i Automaty Czasowe

Modelowanie i Analiza Systemów Informatycznych

MODELOWANIE I WERYFIKACJA PROTOKOŁU SCTP Z WYKORZYSTANIEM AUTOMATÓW CZASOWYCH ZE ZMIENNYMI

Logika Temporalna i Automaty Czasowe

Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki. Katedra Automatyki. Rozprawa doktorska

Logika Temporalna i Automaty Czasowe

Elementy logiki matematycznej

Logika Stosowana. Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta. Marcin Szczuka. Instytut Informatyki UW

Logika Temporalna i Automaty Czasowe

Monte Carlo w model checkingu

Zasady krytycznego myślenia (1)

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

Praca dyplomowa magisterska

LOGIKA I TEORIA ZBIORÓW

Rozstrzygalność logiki modalnej

Matematyka ETId Elementy logiki

O RODZAJACH LOGIK TEMPORALNYCH

Adam Meissner.

Internet Semantyczny i Logika I

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

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

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

1. Wstęp do logiki. Matematyka jest nauką dedukcyjną. Nowe pojęcia definiujemy za pomocą pojęć pierwotnych lub pojęć uprzednio wprowadzonych.

Klasyczny rachunek predykatów

Kultura logicznego myślenia

Systemy zdarzeniowe - opis przedmiotu

Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu.

Logika Stosowana. Wykład 2 - Logika modalna Część 1. Marcin Szczuka. Instytut Matematyki UW. Wykład monograficzny, semestr letni 2016/2017

Automatyczne planowanie oparte na sprawdzaniu spełnialności

Testowanie i walidacja oprogramowania

Praktyczne metody weryfikacji

Reprezentacja wiedzy ontologie, logiki deskrypcyjne

I. Podstawowe pojęcia i oznaczenia logiczne i mnogościowe. Elementy teorii liczb rzeczywistych.

Semantyka rachunku predykatów pierwszego rzędu. Dziedzina interpretacji. Stałe, zmienne, funkcje. Logika obliczeniowa.

Praktyczne metody weryfikacji. Wykład 9: Weryfikacja ograniczona.. p.1/40

Rachunek predykatów. Formuły rachunku predykatów. Plan wykładu. Relacje i predykaty - przykłady. Relacje i predykaty

SID Wykład 7 Zbiory rozmyte

Prof. dr hab. inż. Jan Magott Wrocław, Katedra Informatyki Technicznej Wydział Elektroniki Politechniki Wrocławskiej

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2014/2015. Drzewa BST c.d., równoważenie drzew, kopce.

4. Funkcje. Przykłady

LOGIKA Dedukcja Naturalna

Przykłady zdań w matematyce. Jeśli a 2 + b 2 = c 2, to trójkąt o bokach długości a, b, c jest prostokątny (a, b, c oznaczają dane liczby dodatnie),

dr ANNA NIEWULIS CENTRUM NAUCZANIA MATEMATYKI i KSZTAŁCENIA na ODLEGŁOŚĆ pokój 310

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

Wprowadzenie do programowania współbieżnego

1 Wprowadzenie do algorytmiki

Semantyka rachunku predykatów

Składnia rachunku predykatów pierwszego rzędu

Testowanie elementów programowalnych w systemie informatycznym

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




Bramki logiczne V MAX V MIN

Rozkłady dwóch zmiennych losowych

Notacja. - operator implikacji, - operator koniunkcji v operator alternatywy - operator równoważności ~ operator negacji Duża litera (np.

Schematy Piramid Logicznych

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

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

Andrzej Wiśniewski Logika II. Materiały do wykładu dla studentów kognitywistyki. Wykład 8. Modalności i intensjonalność

Teoria obliczeń i złożoność obliczeniowa

Protokół teleportacji kwantowej

Wprowadzenie do programowania w języku C

Ziemia obraca się wokół Księżyca, bo posiadając odpowiednią wiedzę można stwierdzić, czy są prawdziwe, czy fałszywe. Zdaniami nie są wypowiedzi:

Wstęp do Programowania potok funkcyjny

Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Elementy cyfrowe i układy logiczne

3. Instrukcje warunkowe

Uwagi wprowadzajace do reguł wnioskowania w systemie tabel analitycznych logiki pierwszego rzędu

Roger Bacon Def. Def. Def Funktory zdaniotwórcze

Metoda Tablic Semantycznych

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

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

Automaty czasowe. Sposoby weryfikacji UPPAAL. Narzędzie do weryfikacji automatów czasowych. Aleksander Zabłocki. 6 maja 2009

Język rachunku predykatów Formuły rachunku predykatów Formuły spełnialne i prawdziwe Dowody założeniowe. 1 Zmienne x, y, z...

Zagadnienia podstawowe dotyczące metod formalnych w informatyce

W pewnym mieście jeden z jej mieszkańców goli wszystkich tych i tylko tych jej mieszkańców, którzy nie golą się

MATEMATYKA DYSKRETNA, PODSTAWY LOGIKI I TEORII MNOGOŚCI

Algorytmy i struktury danych. wykład 2

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

020 Liczby rzeczywiste

5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów.

Funkcje: wielomianowa, wykładnicza, logarytmiczna wykład 3

Wprowadzenie do logiki Zdania, cz. III Język Klasycznego Rachunku Predykatów

4 Klasyczny rachunek zdań

Technika cyfrowa Synteza układów kombinacyjnych

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

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

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

Programowanie Zespołowe

Lista 1 (elementy logiki)

Automatyka Treść wykładów: Literatura. Wstęp. Sygnał analogowy a cyfrowy. Bieżące wiadomości:

Transkrypt:

Seminarium Protokoły Komunikacyjne

Spis treści 1 2 PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie 3 4

rozszerzaja logikę pierwszego rzędu o symbole określajace upływ czasu. Własność modelu wyrażamy za pomoca: atomowych zdarzeń n > 0, sekcja_krytyczna 1, itd. operatorów logicznych,,,,, prawda, fasz operatorów temporalnych X, F, G, U, W, A, G, G, F

rozszerzaja logikę pierwszego rzędu o symbole określajace upływ czasu. Własność modelu wyrażamy za pomoca: atomowych zdarzeń n > 0, sekcja_krytyczna 1, itd. operatorów logicznych,,,,, prawda, fasz operatorów temporalnych X, F, G, U, W, A, G, G, F

rozszerzaja logikę pierwszego rzędu o symbole określajace upływ czasu. Własność modelu wyrażamy za pomoca: atomowych zdarzeń n > 0, sekcja_krytyczna 1, itd. operatorów logicznych,,,,, prawda, fasz operatorów temporalnych X, F, G, U, W, A, G, G, F

rozszerzaja logikę pierwszego rzędu o symbole określajace upływ czasu. Własność modelu wyrażamy za pomoca: atomowych zdarzeń n > 0, sekcja_krytyczna 1, itd. operatorów logicznych,,,,, prawda, fasz operatorów temporalnych X, F, G, U, W, A, G, G, F

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Propositional Linear Temporal Logic Logika PLTL - bez rozgałęzień P,Q P,Q P P P Q Q Nierozróżnialne automaty w PLTL

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Operatory temporalne X następny stan (np. X x > y) F przyszły stan (np. F sekcja_krytyczna) G wszystkie przyszłe stany (np. G (n < 5))

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Operatory temporalne X następny stan (np. X x > y) F przyszły stan (np. F sekcja_krytyczna) G wszystkie przyszłe stany (np. G (n < 5))

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Operatory temporalne X następny stan (np. X x > y) F przyszły stan (np. F sekcja_krytyczna) G wszystkie przyszłe stany (np. G (n < 5))

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Operatory temporalne c.d. U until (np. (n > 0)U (g > 3)) W while not (np. (n > 0)W (g > 3)) (φ 1 Wφ 2 = (φ 1 Uφ 2 ) Gφ 1 ) F nieskończenie wiele przyszłych stanów (np. F (x > 0 y > 0)) ( F = GF) G cały czas od pewnego stanu (np. G koniec) ( G = FG)

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Operatory temporalne c.d. U until (np. (n > 0)U (g > 3)) W while not (np. (n > 0)W (g > 3)) (φ 1 Wφ 2 = (φ 1 Uφ 2 ) Gφ 1 ) F nieskończenie wiele przyszłych stanów (np. F (x > 0 y > 0)) ( F = GF) G cały czas od pewnego stanu (np. G koniec) ( G = FG)

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Operatory temporalne c.d. U until (np. (n > 0)U (g > 3)) W while not (np. (n > 0)W (g > 3)) (φ 1 Wφ 2 = (φ 1 Uφ 2 ) Gφ 1 ) F nieskończenie wiele przyszłych stanów (np. F (x > 0 y > 0)) ( F = GF) G cały czas od pewnego stanu (np. G koniec) ( G = FG)

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Operatory temporalne c.d. U until (np. (n > 0)U (g > 3)) W while not (np. (n > 0)W (g > 3)) (φ 1 Wφ 2 = (φ 1 Uφ 2 ) Gφ 1 ) F nieskończenie wiele przyszłych stanów (np. F (x > 0 y > 0)) ( F = GF) G cały czas od pewnego stanu (np. G koniec) ( G = FG)

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie CTL - Computation Tree Logic Computation Tree Logic - rozróżnianie ścieżek W CTL każdy operator temporalny jest poprzedzony kwantyfikatorem temporalnym. F i G nie można używać w CTL

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Kwantyfikatory temporalne A we wszystkich ścieżkach (np. AF koniec) E istnieje ścieżka (np. EG x > 0 y > 0)

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie Kwantyfikatory temporalne A we wszystkich ścieżkach (np. AF koniec) E istnieje ścieżka (np. EG x > 0 y > 0)

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie CTL* - Computation Tree Logic CTL* to abstrakcyjny nadzbiór logik temporalnych. Możemy używać wszystkich operatorów temporalnych w dowolnej kolejności Implementacje sa ograniczone do konkretnych podzbiorów.

PLTL - Propositional Linear Temporal Logic CTL - Computation Tree Logic CTL* - uogólnienie CTL* - Computation Tree Logic CTL* to abstrakcyjny nadzbiór logik temporalnych. Możemy używać wszystkich operatorów temporalnych w dowolnej kolejności Implementacje sa ograniczone do konkretnych podzbiorów.

Osiagalność Osiagalność oznacza, że pewna sytuacja może zajść w modelu. Osiagalność prosta: może zajść, że n < 0, możemy wejść do sekcji krytycznej Osiagalność warunkowa: możemy wejść do sekcji krytycznej bez przechodzenia przez n = 0

Osiagalność Osiagalność oznacza, że pewna sytuacja może zajść w modelu. Osiagalność prosta: może zajść, że n < 0, możemy wejść do sekcji krytycznej Osiagalność warunkowa: możemy wejść do sekcji krytycznej bez przechodzenia przez n = 0

Osiagalność Osiagalność oznacza, że pewna sytuacja może zajść w modelu. Osiagalność prosta: może zajść, że n < 0, możemy wejść do sekcji krytycznej Osiagalność warunkowa: możemy wejść do sekcji krytycznej bez przechodzenia przez n = 0

Osiagalność w CTL W CTL osiagalność prosta formuły φ to EFφ, czyli istnieje taka ścieżka, że przechodzimy przez stan w którym φ. EF n < 0 może zajść, że n < 0 EF sekcja_krytyczna możemy wejść do sekcji krytycznej Możemy też napisać: AG(EF n > 0) zawsze możemy przejść do stanu z n > 0 Osiagalność warunkowa może być zapisana przy użyciu U: E (n 0) U sekcja_krytyczna możemy wejść do sekcji krytycznej bez przechodzenia przez n = 0

Osiagalność w CTL W CTL osiagalność prosta formuły φ to EFφ, czyli istnieje taka ścieżka, że przechodzimy przez stan w którym φ. EF n < 0 może zajść, że n < 0 EF sekcja_krytyczna możemy wejść do sekcji krytycznej Możemy też napisać: AG(EF n > 0) zawsze możemy przejść do stanu z n > 0 Osiagalność warunkowa może być zapisana przy użyciu U: E (n 0) U sekcja_krytyczna możemy wejść do sekcji krytycznej bez przechodzenia przez n = 0

Osiagalność w CTL W CTL osiagalność prosta formuły φ to EFφ, czyli istnieje taka ścieżka, że przechodzimy przez stan w którym φ. EF n < 0 może zajść, że n < 0 EF sekcja_krytyczna możemy wejść do sekcji krytycznej Możemy też napisać: AG(EF n > 0) zawsze możemy przejść do stanu z n > 0 Osiagalność warunkowa może być zapisana przy użyciu U: E (n 0) U sekcja_krytyczna możemy wejść do sekcji krytycznej bez przechodzenia przez n = 0

Osiagalność w PLTL W PLTL nie da się wyrazić większości własności osiagalności. Możemy tylko wyrazić jej negację.

Własność bezpieczeństwa oznacza, że pewna sytuacja nigdy nie zajdzie.

w CTL AG (sekcja_krytyczna 1 sekcja_krytyczna 2 ) dwa procesy nie będa naraz w sekcji krytycznej AG memory_overflow nie będzie przepełnienia

z warunkami Przykład Samochód nie ruszy bez kierowcy A samochod_rusza W kierowca_w_srodku CTL samochod_ruszaw kierowca_w_srodku PLTL

z warunkami Przykład Samochód nie ruszy bez kierowcy A samochod_rusza W kierowca_w_srodku CTL samochod_ruszaw kierowca_w_srodku PLTL

Własność żywotności oznacza, że pewna sytuacja kiedyś zajdzie

w CTL* Przykład Każde żadanie będzie w końcu spełnione : W CLT: AG(request AF satisfy) W PLTL: G(request F satisfy) Przykład zawsze możemy wrócić do inicjalizacji W CTL: AGEF init

w CTL* Przykład Każde żadanie będzie w końcu spełnione : W CLT: AG(request AF satisfy) W PLTL: G(request F satisfy) Przykład zawsze możemy wrócić do inicjalizacji W CTL: AGEF init

w CTL* Przykład Każde żadanie będzie w końcu spełnione : W CLT: AG(request AF satisfy) W PLTL: G(request F satisfy) Przykład zawsze możemy wrócić do inicjalizacji W CTL: AGEF init

w CTL* Przykład Każde żadanie będzie w końcu spełnione : W CLT: AG(request AF satisfy) W PLTL: G(request F satisfy) Przykład zawsze możemy wrócić do inicjalizacji W CTL: AGEF init

w CTL* Przykład Każde żadanie będzie w końcu spełnione : W CLT: AG(request AF satisfy) W PLTL: G(request F satisfy) Przykład zawsze możemy wrócić do inicjalizacji W CTL: AGEF init

AGEX true zawsze można wykonać kolejny krok

oznacza, że pewna sytuacja zdarza się nieskończenie często Przykład jeżeli żadanie dostępu będzie zgłaszane nieskończenie wiele razy, to dostęp zostanie udzielony nieskończenie wiele razy

oznacza, że pewna sytuacja zdarza się nieskończenie często Przykład jeżeli żadanie dostępu będzie zgłaszane nieskończenie wiele razy, to dostęp zostanie udzielony nieskończenie wiele razy

w CTL* A( F access_requested F access_granted), albo: A( F access_granted G access_requested) Rozszerzenie CTL o F i G - ECTL + i FCTL.

w CTL* A( F access_requested F access_granted), albo: A( F access_granted G access_requested) Rozszerzenie CTL o F i G - ECTL + i FCTL.

w CTL* A( F access_requested F access_granted), albo: A( F access_granted G access_requested) Rozszerzenie CTL o F i G - ECTL + i FCTL.

1. B.Berard, M.Bidoit, A.Finkel, F.Larousssinie, A.Petit, L.Petrucci, Ph. Schnoebelen i P.McKenzie Systems and Software Verification