Automatové modely. Stefan Ratschan. Fakulta informačních technologíı. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Podobne dokumenty
Logika V. RNDr. Kateřina Trlifajová PhD. Katedra teoretické informatiky Fakulta informačních technologíı BI-MLO, ZS 2011/12

Komplexní analýza. Martin Bohata. Katedra matematiky FEL ČVUT v Praze Martin Bohata Komplexní analýza Mocninné řady 1 / 18

Edita Pelantová, katedra matematiky / 16

Definice Řekneme, že PDA M = (Q,Σ,Γ,δ,q 0,Z 0,F) je. 1. pro všechna q Q a Z Γ platí: kdykoliv δ(q,ε,z), pak δ(q,a,z) = pro všechna a Σ;

Linea rnı (ne)za vislost

Stavový popis Stabilita spojitých systémů (K611MSAP) Katedra aplikované matematiky Fakulta dopravní ČVUT. čtvrtek 20. dubna 2006

Kristýna Kuncová. Matematika B2 18/19

Úvodní informace. 18. února 2019

Aproximace funkcí 1,00 0,841 1,10 0,864 1,20 0,885. Body proložíme lomenou čarou.

Numerické metody 8. května FJFI ČVUT v Praze

Inverzní Z-transformace

podle přednášky doc. Eduarda Fuchse 16. prosince 2010

Funkce zadané implicitně. 4. března 2019

MATEMATIKA 3. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

Matematika III Stechiometrie stručný

Formálne jazyky Automaty. Formálne jazyky. 1 Automaty. IB110 Podzim

Elementární funkce. Edita Pelantová. únor FJFI, ČVUT v Praze. katedra matematiky, FJFI, ČVUT v Praze

CA CZ, s.r.o. May 21, Radek Mařík Testování řídicích struktur May 21, / 45

TGH01 - Algoritmizace

Kristýna Kuncová. Matematika B2

ČVUT FEL, K October 1, Radek Mařík Ověřování modelů II October 1, / 39

Internet a zdroje. (Zdroje na Internetu) Mgr. Petr Jakubec. Katedra fyzikální chemie Univerzita Palackého v Olomouci Tř. 17.

Expresivní deskripční logiky

Komplexní analýza. Martin Bohata. Katedra matematiky FEL ČVUT v Praze Martin Bohata Komplexní analýza Úvod 1 / 32

1 Soustava lineárních rovnic

(1) Derivace. Kristýna Kuncová. Matematika B2 17/18. Kristýna Kuncová (1) Derivace 1 / 35

Matematika (KMI/PMATE)

Design of Experiment (DOE) Petr Misák. Brno 2016

Matematika 2, vzorová písemka 1

Odpřednesenou látku naleznete v kapitolách skript Abstraktní a konkrétní lineární algebra.

Petr Křemen FEL ČVUT. Petr Křemen (FEL ČVUT) Vysvětlování modelovacích chyb 133 / 156

1 Definice. A B A B vlastní podmnožina. 4. Relace R mezi množinami A a B libovolná R A B. Je-li A = B relace na A

Zobecněné metriky Různé poznámky 12. METRIZACE. Miroslav Hušek, Pavel Pyrih KMA MFF UK. 12. Poznámky

Anna Kratochvílová Anna Kratochvílová (FJFI ČVUT) PDR ve zpracování obrazu / 17

Teorie plasticity. Varianty teorie plasticity. Pružnoplastická matice tuhosti materiálu

Operace s funkcemi [MA1-18:P2.1] funkční hodnota... y = f(x) (x argument)

Euklidovský prostor. Funkce dvou proměnných: základní pojmy, limita a spojitost.

Necht je funkce f spojitá v intervalu a, b a má derivaci v (a, b). Pak existuje bod ξ (a, b) tak, že f(b) f(a) b a. Geometricky

Určitý (Riemannův) integrál a aplikace. Nevlastní integrál. 19. prosince 2018

Laplaceova transformace

Pojem množiny nedefinujeme, pouze připomínáme, že množina je. Nejprve shrneme pojmy a fakta, které znáte ze střední školy.

(a). Pak f. (a) pro i j a 2 f

Reprezentace dat. BI-PA1 Programování a Algoritmizace I. Ladislav Vagner

NÁVOD K POUŽITÍ KEZELÉSI KÉZIKÖNYV INSTRUKCJA OBSŁUGI NÁVOD NA POUŽÍVANIE. Česky. Magyar. Polski. Slovensky

JAZYKY A AUTOMATY. e-book

Obsah. Limita posloupnosti a funkce. Petr Hasil. Limita posloupnosti. Pro a R definujeme: Je-li a < 0, pak a =, a ( ) =. vlastní body.

Obsah. Zobrazení na osmistěn. 1 Zobrazení sféry po částech - obecné vlastnosti 2 Zobrazení na pravidelný konvexní mnohostěn

Lineární algebra - iterační metody

Katedra aplikované matematiky FEI VŠB Technická univerzita Ostrava

Stochastické modelování v ekonomii a financích Konzistence odhadu LWS. konzistence OLS odhadu. Předpoklady pro konzistenci LWS

Vlastnosti. Příprava. Czech - 2 -

Numerické metody minimalizace

prof. RNDr. Roman Kotecký DrSc., Dr. Rudolf Blažek, PhD Pravděpodobnost a statistika Katedra teoretické informatiky Fakulta informačních technologií

Minimalizace automatů. Z. Sawa (VŠB-TUO) Teoretická informatika 2. října / 53

6 Dedekindovy řezy (30 bodů)

Periodický pohyb obecného oscilátoru ve dvou dimenzích

Průvodce studiem V této kapitole se budeme zabývat diferenciálním počtem pro funkce více

Výzvy, které před matematiku staví

Cauchyova úloha pro obyčejnou diferenciální rovnici

PA152,Implementace databázových systémů 2 / 25

TGH01 - Algoritmizace

Obsah Atributová tabulka Atributové dotazy. GIS1-2. cvičení. ČVUT v Praze, Fakulta stavební, katedra mapování a kartografie

Nekomutativní Gröbnerovy báze

TVL LED NÁVOD K POUŽITÍ NÁVOD NA POUŽITIE

Funkce více proměnných: limita, spojitost, parciální a směrové derivace, diferenciál

Biosignál II. Lékařská fakulta Masarykovy univerzity Brno

Skraplacze wyparne. Odpaøovací kondenzátory D 127/3-5 PL/CZ

Plyny v dynamickém stavu. Jsou-li ve vakuovém systému různé teploty, nebo tlaky dochází k přenosu energie, nebo k proudění plynu.


Field of study: Computer Science Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

ČVUT FEL, K Radek Mařík Strukturované testování 20. října / 52

Algebra I Cvičení. Podstatná část příkladů je převzata od kolegů, jmenovitě Prof. Kučery, Doc. Poláka a Doc. Kunce, se

Kapitola 4: Soustavy diferenciálních rovnic 1. řádu

kontaktní modely (Winklerův, Pasternakův)

Quick sort, spojové struktury

IB109 Návrh a implementace paralelních systémů

Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/YDATA: Přednáška I. 5. říjen, / 37

Obecná orientace (obvykle. Makroskopická anizotropie ( velmi mnoho kluzných rovin )

Obsah: CLP Constraint Logic Programming. Úvod do umělé inteligence 6/12 1 / 17

Geometrická nelinearita: úvod

Petr Hasil. c Petr Hasil (MUNI) Nekonečné řady MA III (M3100) 1 / 187

Powyższe reguły to tylko jedna z wersji gry. Istnieje wiele innych wariantów, można też ustalać własne zasady. Miłej zabawy!

(2) Funkce. Kristýna Kuncová. Matematika B2. Kristýna Kuncová (2) Funkce 1 / 25

ENA 5 Załącznik. Instrukcja montażu i obsługi. Flamco.

Matematika pro ekonomiku





DFT. verze:

Matematika 1 Jiˇr ı Fiˇser 24. z aˇr ı 2013 Jiˇr ı Fiˇser (KMA, PˇrF UP Olomouc) KMA MAT1 24. z aˇr ı / 52

ÚVOD DO ARITMETIKY Michal Botur







Kompaktnost v neklasických logikách

Transkrypt:

Automatové modely Stefan Ratschan Katedra číslicového návrhu Fakulta informačních technologíı České vysoké učení technické v Praze Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Stefan Ratschan (FIT ČVUT) MI-MAS 3 1 / 13

Základ: Přechodový systém Příklad: Vlakové dveře (zavřené, otevírající, otevřené, zavírající). Stefan Ratschan (FIT ČVUT) MI-MAS 3 2 / 13

Základ: Přechodový systém Příklad: Vlakové dveře (zavřené, otevírající, otevřené, zavírající). Přechodový systém je trojicí (S, S 0, R), přičemž S je množinou, jejichž prvky budeme nazývat stavy S 0 S (množina počátečních stavů) R S S (přechodová relace) Stefan Ratschan (FIT ČVUT) MI-MAS 3 2 / 13

Základ: Přechodový systém Příklad: Vlakové dveře (zavřené, otevírající, otevřené, zavírající). Přechodový systém je trojicí (S, S 0, R), přičemž S je množinou, jejichž prvky budeme nazývat stavy S 0 S (množina počátečních stavů) R S S (přechodová relace) Cesta přechodového systému (S, S 0, R) je nekonečná posloupnost stavů s 0 s 1 s 2... tak, že s 0 S 0, pro každé i {0, 1,... }, (s i, s i+1 ) R. Cesty tvoří výpočetní stromy (computation trees). Stefan Ratschan (FIT ČVUT) MI-MAS 3 2 / 13

Základ: Přechodový systém Příklad: Vlakové dveře (zavřené, otevírající, otevřené, zavírající). Přechodový systém je trojicí (S, S 0, R), přičemž S je množinou, jejichž prvky budeme nazývat stavy S 0 S (množina počátečních stavů) R S S (přechodová relace) Cesta přechodového systému (S, S 0, R) je nekonečná posloupnost stavů s 0 s 1 s 2... tak, že s 0 S 0, pro každé i {0, 1,... }, (s i, s i+1 ) R. Cesty tvoří výpočetní stromy (computation trees). Stefan Ratschan (FIT ČVUT) MI-MAS 3 2 / 13

Vlastnosti přechodových systémů Přechodový systém je deterministický, pokud pro každé s S, existuje přesně jedno s S tak, že (s, s ) R Stefan Ratschan (FIT ČVUT) MI-MAS 3 3 / 13

Vlastnosti přechodových systémů Přechodový systém je deterministický, pokud pro každé s S, existuje přesně jedno s S tak, že (s, s ) R Poznámka: Tím pádem lze přechodovou relaci chápat jako přechodovou funkci. Stefan Ratschan (FIT ČVUT) MI-MAS 3 3 / 13

Vlastnosti přechodových systémů Přechodový systém je deterministický, pokud pro každé s S, existuje přesně jedno s S tak, že (s, s ) R Poznámka: Tím pádem lze přechodovou relaci chápat jako přechodovou funkci. Nedeterminismus dovolujeme (např. pro modelování vstupů), ale žádáme aby přechodová relace byla totální t.j. pro každé s S, existuje s S tak, že (s, s ) R Stefan Ratschan (FIT ČVUT) MI-MAS 3 3 / 13

Vlastnosti přechodových systémů Přechodový systém je deterministický, pokud pro každé s S, existuje přesně jedno s S tak, že (s, s ) R Poznámka: Tím pádem lze přechodovou relaci chápat jako přechodovou funkci. Nedeterminismus dovolujeme (např. pro modelování vstupů), ale žádáme aby přechodová relace byla totální t.j. pro každé s S, existuje s S tak, že (s, s ) R Proč nemáme žádnou množinu přijímajících stavů? (viz. klasické konečné automaty) Stefan Ratschan (FIT ČVUT) MI-MAS 3 3 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Jak toto modelovat? Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Jak toto modelovat? Nejdřív: komunikace Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Jak toto modelovat? Nejdřív: komunikace, vstup, výstup Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Jak toto modelovat? Nejdřív: komunikace, vstup, výstup Vstupní/výstupní automat (transduktor) je n-ticí (S, S 0, I, O, R), přičemž S je množinou, jejíž prvky budeme nazývat stavy S 0 S (množina počátečních stavů) Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Jak toto modelovat? Nejdřív: komunikace, vstup, výstup Vstupní/výstupní automat (transduktor) je n-ticí (S, S 0, I, O, R), přičemž S je množinou, jejíž prvky budeme nazývat stavy S 0 S (množina počátečních stavů) I je množinou jejíž prvky budeme nazývat vstupy O je množinou jejíž prvky budeme nazývat výstupy Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Jak toto modelovat? Nejdřív: komunikace, vstup, výstup Vstupní/výstupní automat (transduktor) je n-ticí (S, S 0, I, O, R), přičemž S je množinou, jejíž prvky budeme nazývat stavy S 0 S (množina počátečních stavů) I je množinou jejíž prvky budeme nazývat vstupy O je množinou jejíž prvky budeme nazývat výstupy R I S S O (přechodová relace) Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Jak toto modelovat? Nejdřív: komunikace, vstup, výstup Vstupní/výstupní automat (transduktor) je n-ticí (S, S 0, I, O, R), přičemž S je množinou, jejíž prvky budeme nazývat stavy S 0 S (množina počátečních stavů) I je množinou jejíž prvky budeme nazývat vstupy O je množinou jejíž prvky budeme nazývat výstupy R I S S O (přechodová relace) Cesty by měly pro každý krok obsahovat jeden vstup a jeden výstup. Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Modelování souběžných komponent Systémy se obvykle skládají z množství různých komponent. Tyto komponenty se vzájemně ovlivňují. Jak toto modelovat? Nejdřív: komunikace, vstup, výstup Vstupní/výstupní automat (transduktor) je n-ticí (S, S 0, I, O, R), přičemž S je množinou, jejíž prvky budeme nazývat stavy S 0 S (množina počátečních stavů) I je množinou jejíž prvky budeme nazývat vstupy O je množinou jejíž prvky budeme nazývat výstupy R I S S O (přechodová relace) Cesty by měly pro každý krok obsahovat jeden vstup a jeden výstup. Různé ekvivalentní varianty (např: přechody na základě množin, výstupy zvlášt ). Stefan Ratschan (FIT ČVUT) MI-MAS 3 4 / 13

Synchronizovaná paralelní kompozice Kompozice: Operace, která z více (vstupních) automatů sestaví nový (výstupní) automat. Stefan Ratschan (FIT ČVUT) MI-MAS 3 5 / 13

Synchronizovaná paralelní kompozice Kompozice: Operace, která z více (vstupních) automatů sestaví nový (výstupní) automat. Paralelní: vstupní automaty v novém automatu pracují paralelně. Stefan Ratschan (FIT ČVUT) MI-MAS 3 5 / 13

Synchronizovaná paralelní kompozice Kompozice: Operace, která z více (vstupních) automatů sestaví nový (výstupní) automat. Paralelní: vstupní automaty v novém automatu pracují paralelně. Synchronizovaná kompozice: Vstupní automaty vždy dělají jeden krok spolu. Stefan Ratschan (FIT ČVUT) MI-MAS 3 5 / 13

Synchronizovaná paralelní kompozice Kompozice: Operace, která z více (vstupních) automatů sestaví nový (výstupní) automat. Paralelní: vstupní automaty v novém automatu pracují paralelně. Synchronizovaná kompozice: Vstupní automaty vždy dělají jeden krok spolu. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = (S 1 S 2, S 1 0 S 2 0, I 1 I 2, O 1 O 2, R ), Stefan Ratschan (FIT ČVUT) MI-MAS 3 5 / 13

Synchronizovaná paralelní kompozice Kompozice: Operace, která z více (vstupních) automatů sestaví nový (výstupní) automat. Paralelní: vstupní automaty v novém automatu pracují paralelně. Synchronizovaná kompozice: Vstupní automaty vždy dělají jeden krok spolu. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (S 1 S 2, S 1 0 S 2 0, I 1 I 2, O 1 O 2, R ), (i 1 i 2, s 1 s 2, s 1 s 2, o 1 o 2 ) R právě když (i 1, s 1, s 1, o 1 ) R 1 i (i 2, s 2, s 2, o 2 ) R 2 Stefan Ratschan (FIT ČVUT) MI-MAS 3 5 / 13

Synchronizovaná paralelní kompozice Kompozice: Operace, která z více (vstupních) automatů sestaví nový (výstupní) automat. Paralelní: vstupní automaty v novém automatu pracují paralelně. Synchronizovaná kompozice: Vstupní automaty vždy dělají jeden krok spolu. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (S 1 S 2, S 1 0 S 2 0, I 1 I 2, O 1 O 2, R ), (i 1 i 2, s 1 s 2, s 1 s 2, o 1 o 2 ) R právě když Může se zobecnit na více automatů. (i 1, s 1, s 1, o 1 ) R 1 i (i 2, s 2, s 2, o 2 ) R 2 Stefan Ratschan (FIT ČVUT) MI-MAS 3 5 / 13

Nesynchronizovaná paralelní kompozice Příklad: dvojitá výrobní linka, jeden z dvou robotů reaguje, varovný signál. Stefan Ratschan (FIT ČVUT) MI-MAS 3 6 / 13

Nesynchronizovaná paralelní kompozice Příklad: dvojitá výrobní linka, jeden z dvou robotů reaguje, varovný signál. Vstupní automaty můžou dělat nezávislé kroky. (S 1, S0 1, I 1, O 1, R 1 ) (S 2, S0 2, I 2, O 2, R 2 ) = (S 1 S 2, S0 1 S0 2, I 1 I 2, O 1 O 2, R ), Stefan Ratschan (FIT ČVUT) MI-MAS 3 6 / 13

Nesynchronizovaná paralelní kompozice Příklad: dvojitá výrobní linka, jeden z dvou robotů reaguje, varovný signál. Vstupní automaty můžou dělat nezávislé kroky. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i 1 i 2, s 1 s 2, s 1 s 2, o) R právě když (S 1 S 2, S 1 0 S 2 0, I 1 I 2, O 1 O 2, R ), (i 1, s 1, s 1, o) R 1, s 2 = s 2 anebo (i 2, s 2, s 2, o) R 2, s 1 = s 1 Stefan Ratschan (FIT ČVUT) MI-MAS 3 6 / 13

Nesynchronizovaná paralelní kompozice Příklad: dvojitá výrobní linka, jeden z dvou robotů reaguje, varovný signál. Vstupní automaty můžou dělat nezávislé kroky. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i 1 i 2, s 1 s 2, s 1 s 2, o) R právě když Výsledek nutně nedeterministický! (S 1 S 2, S 1 0 S 2 0, I 1 I 2, O 1 O 2, R ), (i 1, s 1, s 1, o) R 1, s 2 = s 2 anebo (i 2, s 2, s 2, o) R 2, s 1 = s 1 Stefan Ratschan (FIT ČVUT) MI-MAS 3 6 / 13

Nesynchronizovaná paralelní kompozice Příklad: dvojitá výrobní linka, jeden z dvou robotů reaguje, varovný signál. Vstupní automaty můžou dělat nezávislé kroky. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i 1 i 2, s 1 s 2, s 1 s 2, o) R právě když (S 1 S 2, S 1 0 S 2 0, I 1 I 2, O 1 O 2, R ), (i 1, s 1, s 1, o) R 1, s 2 = s 2 anebo (i 2, s 2, s 2, o) R 2, s 1 = s 1 Výsledek nutně nedeterministický! R vs. R + nedeterministický výběr! Stefan Ratschan (FIT ČVUT) MI-MAS 3 6 / 13

Nesynchronizovaná paralelní kompozice Příklad: dvojitá výrobní linka, jeden z dvou robotů reaguje, varovný signál. Vstupní automaty můžou dělat nezávislé kroky. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i 1 i 2, s 1 s 2, s 1 s 2, o) R právě když (S 1 S 2, S 1 0 S 2 0, I 1 I 2, O 1 O 2, R ), (i 1, s 1, s 1, o) R 1, s 2 = s 2 anebo (i 2, s 2, s 2, o) R 2, s 1 = s 1 Výsledek nutně nedeterministický! R vs. R + nedeterministický výběr! Různé varianty, např. s možností současné (ne)reakce obou vstupních automatů + symbol nic Stefan Ratschan (FIT ČVUT) MI-MAS 3 6 / 13

Kaskádní kompozice Určité chování komponent může vyvolat reakce jiných komponent. Stefan Ratschan (FIT ČVUT) MI-MAS 3 7 / 13

Kaskádní kompozice Určité chování komponent může vyvolat reakce jiných komponent. Výstup prvního automatu = vstup druhého automatu. Stefan Ratschan (FIT ČVUT) MI-MAS 3 7 / 13

Kaskádní kompozice Určité chování komponent může vyvolat reakce jiných komponent. Výstup prvního automatu = vstup druhého automatu. (S 1, S0 1, I 1, O 1, R 1 ) (S 2, S0 2, I 2, O 2, R 2 ) = (S 1 S 2, S0 1 S0 1, I 1, O 2, R ), Stefan Ratschan (FIT ČVUT) MI-MAS 3 7 / 13

Kaskádní kompozice Určité chování komponent může vyvolat reakce jiných komponent. Výstup prvního automatu = vstup druhého automatu. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i, s 1 s 2, s 1 s 2, o) R právě když existuje x I 2 tak, že (S 1 S 2, S 1 0 S 1 0, I 1, O 2, R ), Stefan Ratschan (FIT ČVUT) MI-MAS 3 7 / 13

Kaskádní kompozice Určité chování komponent může vyvolat reakce jiných komponent. Výstup prvního automatu = vstup druhého automatu. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i, s 1 s 2, s 1 s 2, o) R právě když existuje x I 2 tak, že (i, s 1, s 1, x) R 1 i (x, s 2, s 2, o) R 2. (S 1 S 2, S 1 0 S 1 0, I 1, O 2, R ), Stefan Ratschan (FIT ČVUT) MI-MAS 3 7 / 13

Kaskádní kompozice Určité chování komponent může vyvolat reakce jiných komponent. Výstup prvního automatu = vstup druhého automatu. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i, s 1 s 2, s 1 s 2, o) R právě když existuje x I 2 tak, že (i, s 1, s 1, x) R 1 i (x, s 2, s 2, o) R 2. Podmínka: (S 1 S 2, S 1 0 S 1 0, I 1, O 2, R ), Stefan Ratschan (FIT ČVUT) MI-MAS 3 7 / 13

Kaskádní kompozice Určité chování komponent může vyvolat reakce jiných komponent. Výstup prvního automatu = vstup druhého automatu. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i, s 1 s 2, s 1 s 2, o) R právě když existuje x I 2 tak, že (i, s 1, s 1, x) R 1 i (x, s 2, s 2, o) R 2. Podmínka: I 2 O 1 (S 1 S 2, S 1 0 S 1 0, I 1, O 2, R ), Stefan Ratschan (FIT ČVUT) MI-MAS 3 7 / 13

Kaskádní kompozice Určité chování komponent může vyvolat reakce jiných komponent. Výstup prvního automatu = vstup druhého automatu. (S 1, S 1 0, I 1, O 1, R 1 ) (S 2, S 2 0, I 2, O 2, R 2 ) = přičemž (i, s 1 s 2, s 1 s 2, o) R právě když existuje x I 2 tak, že (i, s 1, s 1, x) R 1 i (x, s 2, s 2, o) R 2. Podmínka: I 2 O 1 A 1 A 2 A 2 A 1! (S 1 S 2, S 1 0 S 1 0, I 1, O 2, R ), Stefan Ratschan (FIT ČVUT) MI-MAS 3 7 / 13

Obecná kompozice Libovolné připojení vstupů a výstupů. Obvykle na základě grafické notace (pozor: notace přechodů automatů!) Stefan Ratschan (FIT ČVUT) MI-MAS 3 8 / 13

Obecná kompozice Libovolné připojení vstupů a výstupů. Obvykle na základě grafické notace (pozor: notace přechodů automatů!) Paralelní kompozice: Více vstupů a výstupů (místo Kartézského součinu) Stefan Ratschan (FIT ČVUT) MI-MAS 3 8 / 13

Obecná kompozice Libovolné připojení vstupů a výstupů. Obvykle na základě grafické notace (pozor: notace přechodů automatů!) Paralelní kompozice: Více vstupů a výstupů (místo Kartézského součinu) Další prvek: Rozvaděč Stefan Ratschan (FIT ČVUT) MI-MAS 3 8 / 13

Obecná kompozice Libovolné připojení vstupů a výstupů. Obvykle na základě grafické notace (pozor: notace přechodů automatů!) Paralelní kompozice: Více vstupů a výstupů (místo Kartézského součinu) Další prvek: Rozvaděč Lze formálně definovat, ale nebudeme. Stefan Ratschan (FIT ČVUT) MI-MAS 3 8 / 13

Obecná kompozice Libovolné připojení vstupů a výstupů. Obvykle na základě grafické notace (pozor: notace přechodů automatů!) Paralelní kompozice: Více vstupů a výstupů (místo Kartézského součinu) Další prvek: Rozvaděč Lze formálně definovat, ale nebudeme. Pozor: smyčky! Stefan Ratschan (FIT ČVUT) MI-MAS 3 8 / 13

Obecná kompozice Libovolné připojení vstupů a výstupů. Obvykle na základě grafické notace (pozor: notace přechodů automatů!) Paralelní kompozice: Více vstupů a výstupů (místo Kartézského součinu) Další prvek: Rozvaděč Lze formálně definovat, ale nebudeme. Pozor: smyčky! Tady: Nejdřív stav, potom tok informací Stefan Ratschan (FIT ČVUT) MI-MAS 3 8 / 13

Obecná kompozice Libovolné připojení vstupů a výstupů. Obvykle na základě grafické notace (pozor: notace přechodů automatů!) Paralelní kompozice: Více vstupů a výstupů (místo Kartézského součinu) Další prvek: Rozvaděč Lze formálně definovat, ale nebudeme. Pozor: smyčky! Tady: Nejdřív stav, potom tok informací Alternativní modely (data-flow): Nejdřív tok informací, potom stav. Stefan Ratschan (FIT ČVUT) MI-MAS 3 8 / 13

Obecná kompozice Libovolné připojení vstupů a výstupů. Obvykle na základě grafické notace (pozor: notace přechodů automatů!) Paralelní kompozice: Více vstupů a výstupů (místo Kartézského součinu) Další prvek: Rozvaděč Lze formálně definovat, ale nebudeme. Pozor: smyčky! Tady: Nejdřív stav, potom tok informací Alternativní modely (data-flow): Nejdřív tok informací, potom stav. Stav: Pamět ový prvek Stefan Ratschan (FIT ČVUT) MI-MAS 3 8 / 13

Hierarchické automaty Viz. Wikipedia UML state machine Stefan Ratschan (FIT ČVUT) MI-MAS 3 9 / 13

Hierarchické automaty Viz. Wikipedia UML state machine Stefan Ratschan (FIT ČVUT) MI-MAS 3 9 / 13

Hierarchické automaty Viz. Wikipedia UML state machine Rekurzivní skrývání vs. modelování podrobností (viz. abstrakce). Stefan Ratschan (FIT ČVUT) MI-MAS 3 9 / 13

Hierarchické automaty Viz. Wikipedia UML state machine Rekurzivní skrývání vs. modelování podrobností (viz. abstrakce). Základ pro formalismus Statecharts [Harel, 1987]. Stefan Ratschan (FIT ČVUT) MI-MAS 3 9 / 13

Hierarchické automaty Viz. Wikipedia UML state machine Rekurzivní skrývání vs. modelování podrobností (viz. abstrakce). Základ pro formalismus Statecharts [Harel, 1987]. Různé varianty [von der Beeck, 1994]. Stefan Ratschan (FIT ČVUT) MI-MAS 3 9 / 13

Hierarchické automaty Viz. Wikipedia UML state machine Rekurzivní skrývání vs. modelování podrobností (viz. abstrakce). Základ pro formalismus Statecharts [Harel, 1987]. Různé varianty [von der Beeck, 1994]. Základ pro UML State Machines Stefan Ratschan (FIT ČVUT) MI-MAS 3 9 / 13

Specifikace a Automatická Analýza Splňuje daný automat požadavky? Stefan Ratschan (FIT ČVUT) MI-MAS 3 10 / 13

Specifikace a Automatická Analýza Splňuje daný automat požadavky? Např.: Nikdy nedosáhne stavu výbuch. Stefan Ratschan (FIT ČVUT) MI-MAS 3 10 / 13

Specifikace a Automatická Analýza Splňuje daný automat požadavky? Např.: Nikdy nedosáhne stavu výbuch. Jazyky pro specifikaci vlastností automatů: Temporální Logiky (viz. příští přednáška). Stefan Ratschan (FIT ČVUT) MI-MAS 3 10 / 13

Specifikace a Automatická Analýza Splňuje daný automat požadavky? Např.: Nikdy nedosáhne stavu výbuch. Jazyky pro specifikaci vlastností automatů: Temporální Logiky (viz. příští přednáška). Automatická analýza? Stefan Ratschan (FIT ČVUT) MI-MAS 3 10 / 13

Specifikace a Automatická Analýza Splňuje daný automat požadavky? Např.: Nikdy nedosáhne stavu výbuch. Jazyky pro specifikaci vlastností automatů: Temporální Logiky (viz. příští přednáška). Automatická analýza? Pozorování: až dosud jsme mohli mít nekonečný počet stavů! Stefan Ratschan (FIT ČVUT) MI-MAS 3 10 / 13

Specifikace a Automatická Analýza Splňuje daný automat požadavky? Např.: Nikdy nedosáhne stavu výbuch. Jazyky pro specifikaci vlastností automatů: Temporální Logiky (viz. příští přednáška). Automatická analýza? Pozorování: až dosud jsme mohli mít nekonečný počet stavů! Pro konečné automaty: (víceméně) všechno rozhodnutelné. Stefan Ratschan (FIT ČVUT) MI-MAS 3 10 / 13

Specifikace a Automatická Analýza Splňuje daný automat požadavky? Např.: Nikdy nedosáhne stavu výbuch. Jazyky pro specifikaci vlastností automatů: Temporální Logiky (viz. příští přednáška). Automatická analýza? Pozorování: až dosud jsme mohli mít nekonečný počet stavů! Pro konečné automaty: (víceméně) všechno rozhodnutelné. Pro nekonečný počet stavu je situace složitější. Stefan Ratschan (FIT ČVUT) MI-MAS 3 10 / 13

Omezení konečných automatů Nemůžeme čítat! (N není konečná množina) Stefan Ratschan (FIT ČVUT) MI-MAS 3 11 / 13

Omezení konečných automatů Nemůžeme čítat! (N není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na čas (R není konečná množina) Stefan Ratschan (FIT ČVUT) MI-MAS 3 11 / 13

Omezení konečných automatů Nemůžeme čítat! (N není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na čas (R není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na fyzikální hodnoty (např. teplota, tlak, rychlost) Stefan Ratschan (FIT ČVUT) MI-MAS 3 11 / 13

Omezení konečných automatů Nemůžeme čítat! (N není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na čas (R není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na fyzikální hodnoty (např. teplota, tlak, rychlost) Jediná možnost: diskretizace, např. teplota T [0, 10], T [10, 20], T [20, ] Stefan Ratschan (FIT ČVUT) MI-MAS 3 11 / 13

Omezení konečných automatů Nemůžeme čítat! (N není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na čas (R není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na fyzikální hodnoty (např. teplota, tlak, rychlost) Jediná možnost: diskretizace, např. teplota T [0, 10], T [10, 20], T [20, ] Často: Konečný, ale obrovský počet stavů (např. čítač s horní mezí). Stefan Ratschan (FIT ČVUT) MI-MAS 3 11 / 13

Omezení konečných automatů Nemůžeme čítat! (N není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na čas (R není konečná množina) Nemůžeme modelovat (libovolně přesné) požadavky na fyzikální hodnoty (např. teplota, tlak, rychlost) Jediná možnost: diskretizace, např. teplota T [0, 10], T [10, 20], T [20, ] Často: Konečný, ale obrovský počet stavů (např. čítač s horní mezí). Další přednášky: účinné zacházení s velkým počtem stavů. Stefan Ratschan (FIT ČVUT) MI-MAS 3 11 / 13

Proměnné Příklad: čítač x {0,..., 2 32 1}, vstupy {+, }, výstupy {ok, přetečení} Stefan Ratschan (FIT ČVUT) MI-MAS 3 12 / 13

Proměnné Příklad: čítač x {0,..., 2 32 1}, vstupy {+, }, výstupy {ok, přetečení} Přechodová relace: {(+, 0, 1, ok), (, 0, 0, přetečení), (+, 1, 2, ok),... }? Stefan Ratschan (FIT ČVUT) MI-MAS 3 12 / 13

Proměnné Příklad: čítač x {0,..., 2 32 1}, vstupy {+, }, výstupy {ok, přetečení} Přechodová relace: {(+, 0, 1, ok), (, 0, 0, přetečení), (+, 1, 2, ok),... }? Pohodlnější: {(+, x, x + 1, ok) x < 2 32 1} {(+, x, x, přetečení) x = 2 32 1} {(, x, x 1, ok) x > 0} {(, x, x, ok) x = 0} Stefan Ratschan (FIT ČVUT) MI-MAS 3 12 / 13

Proměnné Příklad: čítač x {0,..., 2 32 1}, vstupy {+, }, výstupy {ok, přetečení} Přechodová relace: {(+, 0, 1, ok), (, 0, 0, přetečení), (+, 1, 2, ok),... }? Pohodlnější: {(+, x, x + 1, ok) x < 2 32 1} {(+, x, x, přetečení) x = 2 32 1} {(, x, x 1, ok) x > 0} {(, x, x, ok) x = 0} Grafická notace: Podmínky a nové hodnoty píšeme na hrany (guards, updates). Stefan Ratschan (FIT ČVUT) MI-MAS 3 12 / 13

Literatura David Harel. Statecharts: a visual formalism for complex systems. Science of Computer Programming, 8(3):231 274, 1987. Edward A. Lee and Sanjit A. Seshia. Introduction to Embedded Systems, A Cyber-Physical Systems Approach. http://leeseshia.org, 2011. Michael von der Beeck. A comparison of Statecharts variants. In Hans Langmaack, Willem-Paul de Roever, and Jan Vytopil, editors, Formal Techniques in Real-Time and Fault-Tolerant Systems, volume 863 of Lecture Notes in Computer Science, pages 128 148. Springer Berlin / Heidelberg, 1994. Stefan Ratschan (FIT ČVUT) MI-MAS 3 13 / 13