Barvené Petriho sítě. Barvené Petriho sítě p.1/34

Rozměr: px
Začít zobrazení ze stránky:

Download "Barvené Petriho sítě. Barvené Petriho sítě p.1/34"

Transkript

1 Barvené Petriho sítě Barvené Petriho sítě p.1/34

2 Úvod do CPN Barvené Petriho sítě (Coloured Petri Nets CPNs): Kurt Jensen, Aarhus Uviversity, Dánsko, Monografie: K. Jensen: Coloured Petri Nets. Monographs in Theoretical Computer Science, Springer-Verlag, Tří díly: základní koncepty, analýza a průmyslové případové studie. Řada úvodních článků, příkladů,... dostupná na. Eistují i alternativní koncepty CPN, všechny ale více méně v podobném duchu. Někdy se též hovoří o tzv. High-Level Petri Nets. CPN jsou motivovány snahou odstranit některé nevýhody klasických (P/T) Petriho sítí: Petriho sítě, poskytující primitiva pro popis synchronizace paralelních procesů, jsou rozšířeny o eplicitní popis datových typů a datových manipulací. Barvené Petriho sítě p.2/34

3 Nástroje: Design/CPN, CPN Tools (oba Aarhus University), dále např. ESpect,... (viz ). CPN byly aplikovány v řadě průmyslových případových studií: komunikační protokoly a sítě, software (části SW Nokia, bankovní transakce, distribuované algoritmy,...), hardware, řídící systémy, vojenské systémy,... Podobně jako u P/T Petriho sítí eistují různá rozšíření CPN o fyzický čas. CPN jsou základem pro další rozšíření: hierarchické CPN či různé objektově-orientované Petriho sítě (PNtalk, Renew,...). Barvené Petriho sítě p.3/34

4 Petriho sítě s individuálními značkami Individual Token Nets with Constant Arrow Labels: A B C D E A B C D E A B A+B C+D+E AAA 2 A+B BB 2 C+3 D +2 E D EE A+B C+D+E C D E A B 2 A+B 2 C+3 D +2 E CC DDDD EEEE Barvené Petriho sítě p.4/34

5 Další jednoduchý příklad změna ročních období: Spring Summer Spring Winter Spring Summer Autumn season Winter Autumn Barvené Petriho sítě p.5/34

6 Individual Token Nets with Variable Arrow Labels: AB BC C y y y = B y = C A C y y y B C C binding (navázání) A y (,y) C a ac B T b bc TYPEOF(A) = { a, b } TYPEOF(B) = { c, d } TYPEOF(C) = { a, b } {c, d } = { (a,c), (a,d), (b,c), (b,d) } c d ad bd colour sets colours Barvené Petriho sítě p.6/34

7 Neformální zavedení CPN, Uvažujme příklad popisu systému přidělování prostředků (zdrojů). Systém je tvořen: 2 třídami procesů procesy, resp., 3 typy zdrojů,,, stavy procesů,,...,,,...,, počátečním stavem. Vlastní činnost systému lze popsat P/T Petriho sítí takto: Barvené Petriho sítě p.7/34

8 V CPN můžeme sloučit popis chování podobných procesů který průchod alokačním cyklem daný proces provádí. a. Budeme registrovat, Model ve tvaru CPN zahrnuje dvě složky: 1. grafickou část graf Petriho sítě a 2. popisy inskripci. Inskripce, vyjádřená inskripčním jazykem, obsahuje: deklaraci množin barev (coloured sets), tj. datových typů, specifikaci množin barev míst, popis hran, strážní podmínky přechodů, počáteční značení, (jména míst a přechodů). Náš systém sdílení zdrojů pak můžeme modelovat např. tak, jak je ukázáno na následujícím slajdu... Barvené Petriho sítě p.8/34

9 Barvené Petriho sítě p.9/34

10 Každý hranový výraz se vyhodnotí na multimnožinu značek: konstruktor multimnožiny: n 1 c 1 + n 2 c n m c m, n 1,n 2,..., n m jsou konstanty, proměnné nebo funkce, které se vyhodnotí na kladná přirozená čísla, c 1,c 2,..., c m jsou konstanty, proměnné nebo funkce, které se vyhodnotí na barvy, příklady: varianta jednoduchého popisu změn ročních období: Spring suc() suc(spring)=summer suc(summer)=autumn suc(autumn)=winter suc(winter)=spring Po zavedení jiného systému barev a hranových výrazů můžeme náš systém sdílení zdrojů modelovat např. také tak, jak je ukázáno na následujícím slajdu... Barvené Petriho sítě p.10/34

11 Barvené Petriho sítě p.11/34

12 A konečně po zavedení ještě jiného systému barev a hranových výrazů můžeme náš systém sdílení zdrojů modelovat také takto: Výše uvedený příklad demonstruje mj. skutečnost, že při použití CPN máme volbu, které rysy systému popsat Petriho sítí a které výpočtem v použitém inskripčním jazyce. Barvené Petriho sítě p.12/34

13 Jiný příklad: databáze je distribuována do n míst (sites); každé místo obsahuje kopii všech dat, o kterou se stará systém správy databáze (DBM): DBM = {d 1,..., d n }, zprávy zasílané mezi DBM: MES = {(s, r) s, r DBM s r}, kde s sender, r receiver, Mes(s) = P r DBM\{s} 1 (s, r). SendMes Mes(s) Sent MES (s,r) RecMes DBM Waiting s E Active Update and Send Messages e e MES Unused MES Mes(s) Mes(s) e Passiv e E e e s Inactive r DBM DBM Receive a Message (s,r) Received (s,r) MES r Performing DBM val n = 4; color DBM = inde d with 1..n declare ms; color PR = product DBM * DBM declare mult; fun diff(,y) = (<>y); color MES = subset PR by diff declare ms; color E = with e; fun Mes(s) = mult PR(1 s,dbm--1 s); var s, r : DBM; s Receive all Acknowledgments s r Send an Acknowledgment r RecAck Mes(s) Acknowledged (s,r) SendAck MES Barvené Petriho sítě p.13/34

14 Formální definice multimnožiny Multimnožina m nad množinou S je funkce m : S N: m(s) značí počet výskytů prvku s v multimnožině m. Multimnožinu m obvykle reprezentujeme formální sumou P s S m(s) s. Symbolem S MS značíme množinu všech multimnožin nad S. Jestliže m(s) 0, pak říkáme, že s patří do m a píšeme s m. Pro multimnožiny je definována: operace sjednocení m 1 + m 2 = P s S (m 1(s) + m 2 (s)) s, skalární multiplikace, predikáty =,,, (např. m 1 m 2 s S : m 1 (s) m 2 (s)), kardinalita m = P s S m(s) a je-li m 1 m 2, pak také rozdíl m 2 m 1. Barvené Petriho sítě p.14/34

15 Formální definice syntae CPN Některé pomocné funkce a pojmy: Vycházíme z dané konečné množiny Σ konečných množin barev (Σ je tedy množina typů značek). Typ proměnné v budeme značit Type(v). Je-li V množina proměnných, pak Type(V ) = {Type(v) v V }. Typ výrazu epr budeme značit T ype(epr). Množinu proměnných výrazu epr budeme značit V ar(epr). Uzavřeným výrazem rozumíme výraz epr bez proměnných, tj. V ar(epr) =. Označme EXP R množinu všech výrazů přípustných ve zvoleném inskripčním jazyce. Označme CEXPR EXPR množinu všech uzavřených výrazů přípustných ve zvoleném inskripčním jazyce. Konečně označme B = {true, false}. Barvené Petriho sítě p.15/34

16 Nehierarchická barvená Petriho sít CPN je n-tice CPN = (Σ, P, T, A, N, C, G,E, I), kde: 1. Σ je konečná množina konečných, neprázdných typů nazývaných množinami barev. 2. P je konečná množina míst. 3. T je konečná množina přechodů taková, že P T =. 4. A je konečná množina hran taková, že A P = A T =. 5. N je uzlová funkce (node function) N : A P T T P. 6. C je funkce barev (colour function) C : P Σ. 7. G je funkce strážních podmínek (guard function) G : T EXPR taková, že t T : Type(G(t)) = B Type(V ar(g(t))) Σ. 8. E je funkce hranových výrazů (arc epression function) E : A EXP R taková, že a A : Type(E(a)) = C(p(a)) MS Type(V ar(e(a))) Σ, přičemž p(a) je místo v N(a). 9. I je inicializační funkce I : P CEXPR taková, že p P : Type(I(p)) = C(p) MS. Barvené Petriho sítě p.16/34

17 Naši první CPN verzi systému alokace sdílených zdrojů můžeme dle definice zapsat takto: Barvené Petriho sítě p.17/34

18 Formální definice sémantiky CPN Navázání množiny proměnných V přiřazuje každému v V prvek b(v) Type(v). Hodnotu získanou vyhodnocením epr při navázání b budeme značit epr b. Necht V ar(t) je množina všech proměnných vyskytujících se ve výrazech na hranách přilehlých k přechodu t, respektive ve stráži t. Navázání přechodu t je funkce b definovaná na V ar(t) tak, že: 1. v V ar(t) : b(v) Type(v). 2. G(t) b. B(t) pak značí množinu všech navázání přechodu t. Barvené Petriho sítě p.18/34

19 Element značení (token element) je dvojice (p, c), kde p P a c C(p). Množinu všech elementů značení značíme T E. Značení je pak multimnožina nad TE. Množinu všech značení značíme M. Počáteční značení M 0 je definováno vyhodnocením inicializační funkce: (p, c) TE : M 0 ((p, c)) = (I(p))(c). Element navázání (binding element) je dvojice (t,b), kde t T a b B(t). 1. Množinu všech elementů navázání značíme BE. 2. Krokem pak rozumíme neprázdnou a konečnou multimnožinu nad BE. 3. Množinu všech kroků značíme Y. Barvené Petriho sítě p.19/34

20 Krok Y Y je proveditelný (enabled) ve značení M M, jestliže platí následující: p P : X (t,b) Y E(p,t) b M(p) Je-li Y proveditelný, pak: Říkáme, že každý (t,b) Y je proveditelný, a také, že t je proveditelný (pro navázání b). Pro (t 1, b 1 ), (t 2, b 2 ) Y, (t 1,b 1 ) (t 2, b 2 ), říkáme, že (t 1, b 1 ), (t 2, b 2 ) jsou současně proveditelné (concurrently enabled). Je-li Y ((t,b)) 2, říkáme, že (t, b) je současně proveditelný sám se sebou. Podobně je-li Y (t) 2, říkáme, že t je současně proveditelný sám se sebou. Je-li Y Y proveditelný v M 1 M, může být proveden a změnit tak značení na M 2 M takové, že: p P : M 2 (p) = (M 1 (p) X E(p,t) b ) + X E(t,p) b ) (t,b) Y (t,b) Y Barvené Petriho sítě p.20/34

21 Hierarchické barvené Petriho sítě Barvené Petriho sítě p.21/34

22 Hierarchické strukturování v PN Proč strukturování? Modelování a návrh rozsáhlých systémů jsou nemyslitelné na úrovni jednoho, plochého modelu. Hierarchické strukturování v PN dle Huber, Jensen, Shapiro: substituce přechodů přechod staticky nahrazen podsítí (podobné rozvoji maker), substituce míst místo staticky nahrazeno podsítí, invokace přechodů přechod při provádění dynamicky nahrazen nově vytvořenou kopií příslušné podsítě, která eistuje, dokud se neobjeví značka ve zvlášt specifikovaném výstupním místě dané podsítě (analogie volání funkce), fúze míst několik míst je staticky spojeno do jednoho (nebo jedno místo je při návrhu rozděleno na několik, aby se předešlo přílišnému křížení hran). Barvené Petriho sítě p.22/34

23 Substituce přechodů T Net1 U Net2 Port Port Port P1 P2 P3 T A B C U A B C T1 T2 T1 T2 S Subst Net2 A->P1, B->P2, C->P3 D->P4, E->P5 P6 P6 D E T3 T3 V Port P4 Port P5 D E V Barvené Petriho sítě p.23/34

24 Substituce míst A B C Net1 A B C Port T1 Net2 Port T2 T U V W T U V W P1 P1 X S Subst Net2 T,U,V->T1, W->T2 X,Y->T3 Y P2 T4 P3 P2 T4 P3 D T3 Port X Y D Barvené Petriho sítě p.24/34

25 Invokace přechodů T Net1 U a fresh instance of Net2 Port Port Port P1 P2 P3 Net2 Port Port Port P1 P2 P3 A B C input tokens T1 T2 T1 T2 I Invoc Net2 A->P1, B->P2, C->P3 D->P4, E->P5 P6 P6 D E T3 T3 Eit V output tokens P4 P5 P4 P5 Port Port Port Port Barvené Petriho sítě p.25/34

26 Fúze míst T1 T1 T4 T4 A1 T2 B A2 A T2 B Fus A T3 T5 Fus A T3 T5 Při kombinaci fúze míst se substitucí přechodů či míst (či s invokací přechodů) je možné zavést různé typy fúze: lokální v rámci jedné instance sítě, napříč všemi instancemi dané sítě a napříč všemi instancemi všech sítí. Barvené Petriho sítě p.26/34

27 Příklad hierarchická CPN kruhové sítě Nejvyšší hierarchická úroveň model sítě, jejíž jednotlivé uzly jsou popsány dále podsítěmi: Barvené Petriho sítě p.27/34

28 Podsít modelující jeden uzel sítě (mezi instance sítě a u globální fúzi): a předpokládáme fúzi v rámci Barvené Petriho sítě p.28/34

29 Rozvinutím hierarchie dostaneme tuto CPN (fúze míst ještě není provedena): Barvené Petriho sítě p.29/34

30 Konečně po fúzi míst dostaneme tuto CPN: Barvené Petriho sítě p.30/34

31 Objektově orientované Petriho sítě Barvené Petriho sítě p.31/34

32 Eistují různé koncepty zavedení objektové orientace do Petriho sítí, které v zásadě staví na mechanismech podobných invokaci přechodů. OOPN/PNtalk vyvinutý na FIT ( pracuje s: třídami s dědičností, objektovými sítěmi v každé třídě popisují strukturu stavu jejích instancí a jejich případné aktivní chování, metodami mohou být vyvolány k asynchronní komunikaci s objekty, synchronními porty zvláštní forma přechodů aktivovaná voláním a umožňující synchronní komunikaci s objekty, objekty jako instancemi tříd a s běžícími instancemi metod, pozdní vazbou. ) Barvené Petriho sítě p.32/34

33 OOPN/PNtalk umíst uje výpočty do stráží a akcí přechodů (na rozdíl od dříve popsaného konceptu CPN) a používá inskripčním jazyk inspirovaný Smalltalkem (na rozdíl od SML), jak je vidět v níže uvedeném jednoduchém modelu systému s čítači: a class C1 is_a PN t2 t3 p2 p4 the message pattern the name of the class the superclass of the class o reset:. > 4. o (,y) o p1 o := C2 new o y := o resetwhen: 2, 3 (,#fail) 3 t4 p3 t1 a parameter the message selector C2 is_a PN resetwhen: < y tf #fail ts return a synchronous port a parameter place reset: p y #succ y < 5 an object net y := + 1 t a method net the return place Barvené Petriho sítě p.33/34

34 Ukázka dědičnosti v OOPN/PNtalk: an inhereted method net C3 is_a C2 resetwhen: tf ts < y #succ #fail return a redefined synchronous port 0 y t reset: ~= p y < 5 y := + c c 1 step setstep: s s a new method net s s t return an inhereted place a redefined transition a new place Barvené Petriho sítě p.34/34

Úvod do Petriho sítí. TIN Úvod do Petriho sítí p.1/37

Úvod do Petriho sítí. TIN Úvod do Petriho sítí p.1/37 Úvod do Petriho sítí TIN Úvod do Petriho sítí p.1/37 Petriho sítě Motivace: modely diskrétních systémů modely paralelních systémů modely distribuovaných systémů Využití: návrh syntéza analýza verifikace

Více

Strukturování Petriho Nadpis 2 Nadpis 3

Strukturování Petriho Nadpis 2 Nadpis 3 Strukturování Petriho Nadpissítí 1 Nadpis 2 Nadpis 3 Vladimír JménoJanoušek Příjmení VysokéVysoké učení technické učení technické v Brně,vFakulta Brně, Fakulta informačních informačních technologií technologií

Více

Úvod do Petriho sítí. Ing. Michal Dorda, Ph.D.

Úvod do Petriho sítí. Ing. Michal Dorda, Ph.D. Úvod do Petriho sítí Ing. Michal Dorda, Ph.D. 1 Úvodní poznámky Petriho sítě (Petri Nets, PN) představují matematický nástroj pro modelování a simulaci diskrétních systémů (např. systémů hromadné obsluhy

Více

MODELOVÁNÍ UZAVŘENÝCH OBSLUŽNÝCH LOGISTICKÝCH SYSTÉMŮ PETRIHO SÍTĚMI

MODELOVÁNÍ UZAVŘENÝCH OBSLUŽNÝCH LOGISTICKÝCH SYSTÉMŮ PETRIHO SÍTĚMI MODELOVÁNÍ UZAVŘENÝCH OBSLUŽNÝCH LOGISTICKÝCH SYSTÉMŮ PETRIHO SÍTĚMI MODELLING OF CLOSED LOGISTICS SERVICE SYSTEMS USING PETRI NETS Ing. Michal Dorda, Ph.D. Institut dopravy, Fakulta strojní, VŠB Technická

Více

Fakulta elektrotechniky a informatiky

Fakulta elektrotechniky a informatiky VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta elektrotechniky a informatiky Modelování objektů Petriho sítěmi Disertační práce Autor: Ing Vladimír Janoušek Ústav informatiky a výpočetní techniky FEI VUT v Brně

Více

PODPROGRAMY PROCEDURY A FUNKCE

PODPROGRAMY PROCEDURY A FUNKCE PODPROGRAMY PROCEDURY A FUNKCE Programy bez podprogramů Příklady: a) Napište program, který na obrazovku nakreslí čáru složenou ze znaků pomlčka. program Cara; b) Napište program, který na obrazovku nakreslí

Více

Informační systémy 2008/2009. Radim Farana. Obsah. Nástroje business modelování. Business modelling, základní nástroje a metody business modelování.

Informační systémy 2008/2009. Radim Farana. Obsah. Nástroje business modelování. Business modelling, základní nástroje a metody business modelování. 3 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Business modelling, základní nástroje a metody business modelování.

Více

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky Vyučovací hodina 1vyučovací hodina: Opakování z minulé hodiny Nová látka Procvičení nové látky Shrnutí 5 min 20 min 15 min 5 min 2vyučovací hodiny: Opakování z minulé hodiny Nová látka Procvičení nové

Více

Programování II. Třídy a objekty (objektová orientovanost) 2018/19

Programování II. Třídy a objekty (objektová orientovanost) 2018/19 Programování II Třídy a objekty (objektová orientovanost) 2018/19 Osnova přednášky Objektový přístup (proč potřebujeme objekty). Třídy, objekty,... Příklad. Proč potřebujeme objekty? Udržovatelnost softwaru

Více

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program Denotační sémantika programovacího jazyka doc. Dr. Ing. Miroslav Beneš katedra informatiky, A-1007 59 732 4213 Obsah přednášky Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup

Více

1 Nejkratší cesta grafem

1 Nejkratší cesta grafem Bakalářské zkoušky (příklady otázek) podzim 2014 1 Nejkratší cesta grafem 1. Uvažujte graf s kladným ohodnocením hran (délka). Definujte formálně problém hledání nejkratší cesty mezi dvěma uzly tohoto

Více

Komunikace. Úrovová architektura protokol. Úrovová architektura protokol (2) Pednášky z distribuovaných systém

Komunikace. Úrovová architektura protokol. Úrovová architektura protokol (2) Pednášky z distribuovaných systém Komunikace Pednášky z distribuovaných systém Úrovová architektura protokol 2-1 Úrovn, rozhraní a protokoly OSI modelu. 6.12.2004 DS - Komunikace 2 Úrovová architektura protokol (2) 2-2 Typická zpráva penášená

Více

Tabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář

Tabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář Vazba (binding) Tabulka symbolů Miroslav Beneš Dušan Kolář vazba = spojení mezi entitou a vlastností okamžik vazby (binding time) při návrhu jazyka při implementaci jazyka během překladu/spojování/zavádění

Více

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Maturitní otázky z předmětu PROGRAMOVÁNÍ Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti

Více

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

Více

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů. Modely datové Existují různé úrovně pohledu na data. Nejvyšší úroveň je úroveň, která zachycuje pouze vztahy a struktury dat samotných. Konceptuální model - E-R model. Další úrovní je logická úroveň Databázové

Více

Programovací jazyk Pascal

Programovací jazyk Pascal Programovací jazyk Pascal Syntaktická pravidla (syntaxe jazyka) přesná pravidla pro zápis příkazů Sémantická pravidla (sémantika jazyka) pravidla, která každému příkazu přiřadí přesný význam Všechny konstrukce

Více

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D. Algoritmizace diskrétních simulačních modelů Ing. Michal Dorda, Ph.D. 1 Úvodní poznámky Při programování simulačních modelů lze hlavní dílčí problémy shrnout do následujících bodů: 1) Zachycení statických

Více

ACTA UNIVERSITATIS AGRICULTURAE ET SILVICULTURAE MENDELIANAE BRUNENSIS SBORNÍK MENDELOVY ZEMĚDĚLSKÉ A LESNICKÉ UNIVERZITY V BRNĚ

ACTA UNIVERSITATIS AGRICULTURAE ET SILVICULTURAE MENDELIANAE BRUNENSIS SBORNÍK MENDELOVY ZEMĚDĚLSKÉ A LESNICKÉ UNIVERZITY V BRNĚ ACTA UNIVERSITATIS AGRICULTURAE ET SILVICULTURAE MENDELIANAE BRUNENSIS SBORNÍK MENDELOVY ZEMĚDĚLSKÉ A LESNICKÉ UNIVERZITY V BRNĚ Ročník LIV 1 Číslo 3, 006 Předpoklady Petriho sítí k modelování logistických

Více

Unifikovaný modelovací jazyk UML

Unifikovaný modelovací jazyk UML Unifikovaný modelovací jazyk UML Karel Richta katedra počíta tačů FEL ČVUT Praha richta@fel fel.cvut.czcz Motto: Komunikačním m prostředkem informační komunity se postupem času stala angličtina. Chcete-li

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Algoritmus Daniela Szturcová Tento

Více

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) imní semestr 2/2 Jiří Douša, katedra číslicového návrhu (K83), České vysoké učení technické v Prae,

Více

Model Checking pro Timed Automata. Jiří Vyskočil 2011

Model Checking pro Timed Automata. Jiří Vyskočil 2011 Model Checking pro Timed Automata Jiří Vyskočil 2011 Časově kritické systémy korektnost fungování vestavěným a distribuovaných systémů závisí na: správném výsledku výpočtu správném načasování prováděných

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

Automaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů

Automaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 2/29 Hodnocení předmětu BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 4/29 Automaty a gramatiky(bi-aag) 1. Základní pojmy Jan Holub Katedra teoretické

Více

Paralelní programování

Paralelní programování Paralelní programování přednášky Jan Outrata únor duben 2011 Jan Outrata (KI UP) Paralelní programování únor duben 2011 1 / 11 Literatura Ben-Ari M.: Principles of concurrent and distributed programming.

Více

1. Webové služby. K čemu slouží? 2. RPC Web Service. 3. SOA Web Service. 4. RESTful Web services

1. Webové služby. K čemu slouží? 2. RPC Web Service. 3. SOA Web Service. 4. RESTful Web services 13. Webové služby. K čemu slouží? Popis a vyhledávání služeb. Co je a k čemu slouží orchestrace a choreografie služeb. Technologie pro implementaci služeb 1. Webové služby. K čemu slouží? Definice WS -

Více

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je 28 [181105-1236 ] 2.7 Další uzávěrové vlastnosti třídy regulárních jazyků Z předchozích přednášek víme, že třída regulárních jazyků je uzavřena na sjednocení, průnik, doplněk, zřetězení, Kleeneho operaci

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Algoritmus Daniela Szturcová Tento

Více

Úvod do programovacích jazyků (Java)

Úvod do programovacích jazyků (Java) Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích

Více

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U P R O G R A M O V É V Y B A V E N Í Studijní obor: 18-20-M/01 Informační technologie Školní

Více

Softwarové komponenty a Internet

Softwarové komponenty a Internet Softwarové komponenty a Internet Doc. Dr. Ing. Miroslav Beneš Katedra informatiky FEI VŠB-TU Ostrava Miroslav.Benes@vsb.cz Obsah přednášky Motivace Vývoj přístupů k tvorbě programů Definice komponenty

Více

6 Objektově-orientovaný vývoj programového vybavení

6 Objektově-orientovaný vývoj programového vybavení 6 Objektově-orientovaný vývoj programového vybavení 6.1 Co značí objektově-orientovaný - organizace SW jako kolekce diskrétních objektů, které zahrnují jak data tak chování objekt: OMG: Objekt je věc (thing).

Více

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka Metody tvorby ontologií a sémantický web Martin Malčík, Rostislav Miarka Obsah Reprezentace znalostí Ontologie a sémantický web Tvorba ontologií Hierarchie znalostí (D.R.Tobin) Data jakékoliv znakové řetězce

Více

Program a životní cyklus programu

Program a životní cyklus programu Program a životní cyklus programu Program algoritmus zapsaný formálně, srozumitelně pro počítač program se skládá z elementárních kroků Elementární kroky mohou být: instrukce operačního kódu počítače příkazy

Více

Zpracování deklarací a přidělování paměti

Zpracování deklarací a přidělování paměti Zpracování deklarací a přidělování paměti Účel deklarací -pojmenování objektů -umístění objektů v paměti Tabulka symbolů -uchovává informace o objektech -umožňuje kontextové kontroly -umožňuje operace

Více

Úvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008.

Úvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008. Úvod do informatiky přednáška čtvrtá Miroslav Kolařík Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008. Obsah 1 Pojem relace 2 Vztahy a operace s (binárními) relacemi

Více

GRAFY A GRAFOVÉ ALGORITMY

GRAFY A GRAFOVÉ ALGORITMY KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO GRAFY A GRAFOVÉ ALGORITMY ARNOŠT VEČERKA VÝVOJ TOHOTO UČEBNÍHO TEXTU JE SPOLUFINANCOVÁN EVROPSKÝM SOCIÁLNÍM FONDEM A STÁTNÍM ROZPOČTEM ČESKÉ

Více

Manuál programu HPSim

Manuál programu HPSim Manuál programu HPSim Základní informace o programu HPSim Program si můžete zdarma stáhnou z domovské stránky tohoto programu na adrese: http://www.winpesim.de. Tento software je volně šiřitelný pro potřeby

Více

Dynamicky vázané metody. Pozdní vazba, virtuální metody

Dynamicky vázané metody. Pozdní vazba, virtuální metody Dynamicky vázané metody Pozdní vazba, virtuální metody Motivace... class TBod protected: float x,y; public: int vrat_pocet_bodu() return 1; ; od třídy TBod odvodíme: class TUsecka: public TBod protected:

Více

Objektové programování

Objektové programování Objektové programování - přináší nové možnosti a styl programování - vytváří nový datový typ, který umí vše co standardní datové typy + to co ho naučíme - překladač se k tomuto typu chová stejně jako k

Více

Profilová část maturitní zkoušky 2017/2018

Profilová část maturitní zkoušky 2017/2018 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2017/2018 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA

Více

IB111 Programování a algoritmizace. Objektově orientované programování (OOP)

IB111 Programování a algoritmizace. Objektově orientované programování (OOP) IB111 Programování a algoritmizace Objektově orientované programování (OOP) OP a OOP Objekt Kombinuje data a funkce a poskytuje určité rozhraní. OP = objektové programování Vše musí být objekty Např. Smalltalk,

Více

Konzistentnost. Přednášky z distribuovaných systémů

Konzistentnost. Přednášky z distribuovaných systémů Konzistentnost Přednášky z distribuovaných systémů Pro a proti replikaci 1. Zvýšení spolehlivosti. 2. Zvýšení výkonnosti. 3. Nutnost zachování škálovatelnosti systému co do počtu komponent i geografické

Více

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu. Informatika 10. 9. 2013 Jméno a příjmení Rodné číslo 1) Napište algoritmus pro rychlé třídění (quicksort). 2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus

Více

CAL (CAN Application Layer) a CANopen

CAL (CAN Application Layer) a CANopen CAL (CAN Application Layer) a CANopen J. Novák České vysoké učení technické v Praze Fakulta elektrotechnická Katedra měření Průmyslový distribuovaný systém na bázi sběrnice CAN Pressure sensor Stepper

Více

NAIVNÍ TEORIE MNOŽIN, okruh č. 5

NAIVNÍ TEORIE MNOŽIN, okruh č. 5 NAIVNÍ TEORIE MNOŽIN, okruh č. 5 Definování množiny a jejích prvků Množina je souhrn nějakých věcí. Patří-li věc do množiny X, říkáme, že v ní leží, že je jejím prvkem nebo že množina X tuto věc obsahuje.

Více

Programování v C++ 2, 4. cvičení

Programování v C++ 2, 4. cvičení Programování v C++ 2, 4. cvičení statické atributy a metody, konstruktory 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled Přístupová práva

Více

Struktura programu v době běhu

Struktura programu v době běhu Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů

Více

4.2 Syntaxe predikátové logiky

4.2 Syntaxe predikátové logiky 36 [070507-1501 ] 4.2 Syntaxe predikátové logiky V tomto oddíle zavedeme syntaxi predikátové logiky, tj. uvedeme pravidla, podle nichž se tvoří syntakticky správné formule predikátové logiky. Význam a

Více

Výroková a predikátová logika - II

Výroková a predikátová logika - II Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2015/2016 1 / 18 Základní syntax Jazyk Výroková logika je logikou

Více

UML. Unified Modeling Language. Součásti UML

UML. Unified Modeling Language. Součásti UML UML Unified Modeling Language 1995 počátek 1997 verze 1.0 leden dnes verze 2.0 (vývoj stále nedokončen) Standardní notace OMG podpora velkých firem (Microsoft, IBM, Oracle, HP ) popisuje struktury popisuje

Více

Modely Herbrandovské interpretace

Modely Herbrandovské interpretace Modely Herbrandovské interpretace Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 8 1 Uvedli jsme termové interpretace a termové modely pro logické programy a také nejmenší

Více

Modelování procesů (1) Procesní řízení 1

Modelování procesů (1) Procesní řízení 1 Modelování procesů (1) Procesní řízení 1 Vizualizace procesů Znázornění procesu ve formě diagramatického modelu, vede k jeho zpřehlednění a snadnějšímu pochopení. Označuje se jako: procesní mapa, procesní

Více

Jazyk C++ I. Šablony

Jazyk C++ I. Šablony Jazyk C++ I Šablony AR 2013/2014 Jazyk C++ I Úvod Zatím známe programovací styly: Strukturované programování, Objektově orientované programovaní. AR 2013/2014 Jazyk C++ I 2 Příklady void Print(const int&

Více

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Metody přidělování paměti Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Důležitá hlediska jazykových konstrukcí: Dynamické typy Dynamické

Více

Výroková a predikátová logika - II

Výroková a predikátová logika - II Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2013/2014 1 / 20 Základní syntax Jazyk Výroková logika je logikou

Více

Výroková a predikátová logika - III

Výroková a predikátová logika - III Výroková a predikátová logika - III Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - III ZS 2017/2018 1 / 16 2-SAT 2-SAT Výrok je v k-cnf, je-li v CNF a

Více

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INTELIGENTNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS MODELOVÁNÍ

Více

Definice uživatelského typu. Uživatelem definované typy. Součinové datové typy. Součtové datové typy. FLP - Uživatelem definované typy

Definice uživatelského typu. Uživatelem definované typy. Součinové datové typy. Součtové datové typy. FLP - Uživatelem definované typy Uživatelem definované typy Ing. Lumír Návrat katedra informatiky, A 1018 59 732 3252 Definice uživatelského typu data Color = Red Green Blue Color typový konstruktor Red / Green / Blue datové konstruktory

Více

Regulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto:

Regulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto: IB102 Automaty, gramatiky a složitost, 6. 10. 2014 1/29 Regulární výrazy Definice 2.58. Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto: 1 ε, a a pro každé a

Více

2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování

2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování 1. Teoretické základy modelování na počítačích 1.1 Lambda-kalkul 1.1.1 Formální zápis, beta-redukce, alfa-konverze 1.1.2 Lambda-výraz jako data 1.1.3 Příklad alfa-konverze 1.1.4 Eta-redukce 1.2 Základy

Více

Polymorfismus. Časová náročnost lekce: 3 hodiny Datum ukončení a splnění lekce: 30.března

Polymorfismus. Časová náročnost lekce: 3 hodiny Datum ukončení a splnění lekce: 30.března Polymorfismus Cíle lekce Cílem lekce je vysvětlit význam pojmu polymorfismus jako základní vlastnosti objektově orientovaného programování. Lekce objasňuje vztah časné a pozdní vazby a jejich využití.

Více

Množinu všech slov nad abecedou Σ značíme Σ * Množinu všech neprázdných slov Σ + Jazyk nad abecedou Σ je libovolná množina slov nad Σ

Množinu všech slov nad abecedou Σ značíme Σ * Množinu všech neprázdných slov Σ + Jazyk nad abecedou Σ je libovolná množina slov nad Σ Abecedou se rozumí libovolná konečná množina Σ. Prvky abecedy nazýváme znaky (symboly) Slovo (řetězec) v nad abecedou Σ je libovolná konečná posloupnost znaků této abecedy. Prázdné posloupnosti znaků odpovídá

Více

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7 Pascal Katedra aplikované kybernetiky Ing. Miroslav Vavroušek Verze 7 Proměnné Proměnná uchovává nějakou informaci potřebnou pro práci programu. Má ve svém oboru platnosti unikátní jméno. (Připadne, musí

Více

Jazyk C++, některá rozšíření oproti C

Jazyk C++, některá rozšíření oproti C Karel Müller, Josef Vogel (ČVUT FIT) Jazyk C++, některá rozšíření oproti C BI-PA2, 2011, Přednáška 1 1/22 Jazyk C++, některá rozšíření oproti C Ing. Josef Vogel, CSc Katedra softwarového inženýrství Katedra

Více

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Metody přidělování paměti Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Důležitá hlediska jazykových konstrukcí: Dynamické typy Dynamické

Více

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

Jazyk C++ I. Polymorfismus

Jazyk C++ I. Polymorfismus Jazyk C++ I Polymorfismus AR 2013/2014 Jazyk C++ I Úvod Metody s časnou vazbou jsou překládány jako obyčejné céčkovské funkce. Této metodě je předán jako první implicitní parametr this. Rozdíl mezi obyčejnou

Více

Software602 Form Designer

Software602 Form Designer Software602 Form Designer Javascriptový vyhodnocovací mechanismus výrazů Aktualizováno: 17. 3. 2017 Software602 a.s. Hornokrčská 15 140 00 Praha 4 tel: 222 011 602 web: www.602.cz e-mail: info@602.cz ID

Více

Datové typy a struktury

Datové typy a struktury atové typy a struktury Jednoduché datové typy oolean = logická hodnota (true / false) K uložení stačí 1 bit často celé slovo (1 byte) haracter = znak Pro 8-bitový SII kód stačí 1 byte (256 možností) Pro

Více

IV113 Validace a verifikace. Převod LTL formule na Büchi automat. Jiří Barnat

IV113 Validace a verifikace. Převod LTL formule na Büchi automat. Jiří Barnat IV113 Validace a verifikace Převod LTL formule na Büchi automat Jiří Barnat Připomenutí IV113 úvod do validace a verifikace: LTL BA str. 2/26 Problém Kripkeho struktura M LTL formule ϕ M = ϕ? Řešení pomocí

Více

Název předmětu: Školní rok: Forma studia: Studijní obory: Ročník: Semestr: Typ předmětu: Rozsah a zakončení předmětu:

Název předmětu: Školní rok: Forma studia: Studijní obory: Ročník: Semestr: Typ předmětu: Rozsah a zakončení předmětu: Plán předmětu Název předmětu: Algoritmizace a programování (PAAPK) Školní rok: 2007/2008 Forma studia: Kombinovaná Studijní obory: DP, DI, PSDPI, OŽPD Ročník: I Semestr: II. (letní) Typ předmětu: povinný

Více

3. přednáška. Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti

3. přednáška. Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti 3. přednáška nalezení největšího prvku, druhého nejvyššího prvku, algoritmus shozeného praporku. Algoritmizace

Více

Dolování v objektových datech. Ivana Rudolfová

Dolování v objektových datech. Ivana Rudolfová Dolování v objektových datech Ivana Rudolfová Relační databáze - nevýhody První normální forma neumožňuje vyjádřit vztahy A je podtypem B nebo vytvořit struktury typu pole nebo množiny SQL omezení omezený

Více

Cvičení ze statistiky - 5. Filip Děchtěrenko

Cvičení ze statistiky - 5. Filip Děchtěrenko Cvičení ze statistiky - 5 Filip Děchtěrenko Minule bylo.. Začali jsme pravděpodobnost Klasická a statistická definice pravděpodobnosti Náhodný jev Doplněk, průnik, sjednocení Podmíněná pravděpodobnost

Více

Lekce 04 Řídící struktury

Lekce 04 Řídící struktury Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů Lekce 04 Řídící struktury Tento projekt CZ.1.07/1.3.12/04.0006 je spolufinancován Evropským sociálním

Více

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 KAPITOLA 1 Úvod do programo vání v jazyce C++ 17 Základní pojmy 17 Proměnné a konstanty 18 Typy příkazů 18 IDE integrované vývojové

Více

Diferenciální rovnice a jejich aplikace. (Brkos 2011) Diferenciální rovnice a jejich aplikace 1 / 36

Diferenciální rovnice a jejich aplikace. (Brkos 2011) Diferenciální rovnice a jejich aplikace 1 / 36 Diferenciální rovnice a jejich aplikace Zdeněk Kadeřábek (Brkos 2011) Diferenciální rovnice a jejich aplikace 1 / 36 Obsah 1 Co to je derivace? 2 Diferenciální rovnice 3 Systémy diferenciálních rovnic

Více

1. Dědičnost a polymorfismus

1. Dědičnost a polymorfismus 1. Dědičnost a polymorfismus Cíl látky Cílem této kapitoly je představit klíčové pojmy dědičnosti a polymorfismu. Předtím však je nutné se seznámit se základními pojmy zobecnění neboli generalizace. Komentář

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Vývojové diagramy Daniela Szturcová

Více

Další (neklasické) logiky. Jiří Velebil: AD0B01LGR 2015 Predikátová logika 1/20

Další (neklasické) logiky. Jiří Velebil: AD0B01LGR 2015 Predikátová logika 1/20 Predikátová logika Jiří Velebil: AD0B01LGR 2015 Predikátová logika 1/20 Jazyk predikátové logiky Má dvě sorty: 1 Termy: to jsou objekty, o jejichž vlastnostech chceme hovořit. Mohou být proměnné. 2 Formule:

Více

11 Diagram tříd, asociace, dědičnost, abstraktní třídy

11 Diagram tříd, asociace, dědičnost, abstraktní třídy 11 Diagram tříd, asociace, dědičnost, abstraktní třídy Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost diagramům tříd, asociaci,

Více

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, [161014-1204 ] 11 2.1.35 Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, kde i = 0, 1,..., takto: p 0 q právě tehdy, když bud p, q F nebo p, q F. Dokud i+1 i konstruujeme p

Více

Algoritmy. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 15. dubna / 39

Algoritmy. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 15. dubna / 39 Algoritmy Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 15. dubna 2018 1/ 39 Algoritmy Příklad: Popis algoritmu pomocí pseudokódu: Algoritmus 1: Algoritmus pro nalezení největšího prvku v poli 1 Find-Max(A,n):

Více

Vývoj IS - strukturované paradigma II

Vývoj IS - strukturované paradigma II Milan Mišovič (ČVUT FIT) Pokročilé informační systémy MI-PIS, 2011, Přednáška 05 1/18 Vývoj IS - strukturované paradigma II Prof. RNDr. Milan Mišovič, CSc. Katedra softwarového inženýrství Fakulta informačních

Více

Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W

Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W Osnova přednášky Co to je softwarové inženýrství Softwarový proces Metodika a metoda Evoluce softwarových

Více

typová konverze typová inference

typová konverze typová inference Seminář Java Programování v Javě II Radek Kočí Fakulta informačních technologií VUT Únor 2008 Radek Kočí Seminář Java Programování v Javě (2) 1/ 36 Téma přednášky Rozhraní: použití, dědičnost Hierarchie

Více

Operační výzkum. Síťová analýza. Metoda CPM.

Operační výzkum. Síťová analýza. Metoda CPM. Operační výzkum Síťová analýza. Metoda CPM. Operační program Vzdělávání pro konkurenceschopnost Název projektu: Inovace magisterského studijního programu Fakulty ekonomiky a managementu Registrační číslo

Více

Logické programování

Logické programování 30. října 2012 Osnova Principy logického programování 1 Principy logického programování 2 3 1 Principy logického programování 2 3 Paradigmata programování Strukturované programování Procedurální programování

Více

Řídicí struktury. alg3 1

Řídicí struktury. alg3 1 Řídicí struktury Řídicí struktura je programová konstrukce, která se skládá z dílčích příkazů a předepisuje pro ně způsob provedení Tři druhy řídicích struktur: posloupnost, předepisující postupné provedení

Více

PREPROCESOR POKRAČOVÁNÍ

PREPROCESOR POKRAČOVÁNÍ PREPROCESOR POKRAČOVÁNÍ Chybová hlášení V C# podobně jako v C++ existuje direktiva #error, která způsobí vypsání chybového hlášení překladačem a zastavení překladu. jazyk C# navíc nabízí direktivu #warning,

Více

Základní datové struktury III: Stromy, haldy

Základní datové struktury III: Stromy, haldy Základní datové struktury III: Stromy, haldy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní

Více

LabView jako programovací jazyk II

LabView jako programovací jazyk II LabView jako programovací jazyk II - Popis jednotlivých funkcí palety Function I.část - Expresní funkce, struktury, Ing. Martin Bušek, Ph.D. Paleta Functions Základní prvky pro tvorbu programu blokového

Více

Predikátová logika dokončení

Predikátová logika dokončení Predikátová logika dokončení Jiří Velebil: X01DML 1. října 2010: Predikátová logika dokončení 1/18 Syntaktická analýza Jako ve výrokové logice (syntaktické stromy). Každý list úspěšného stromu je obsazen

Více

Výroková a predikátová logika - VII

Výroková a predikátová logika - VII Výroková a predikátová logika - VII Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VII ZS 2018/2019 1 / 15 Platnost (pravdivost) Platnost ve struktuře

Více

EKO-KOLONIE. Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě 24.

EKO-KOLONIE. Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě 24. EKO-KOLONIE OBHAJOBA DISERTAČNÍ PRÁCE RNDr. Šárka Vavrečková Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě sarka.vavreckova@fpf.slu.cz 24. dubna 2008 Obsah 1 Eko-kolonie

Více

Dynamické datové struktury I.

Dynamické datové struktury I. Dynamické datové struktury I. Seznam. Fronta. Zásobník. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Řídicí struktury jazyka Java Struktura programu Příkazy jazyka Blok příkazů Logické příkazy Ternární logický operátor Verze pro akademický rok 2012/2013 1 Struktura programu

Více

Informační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika

Informační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika 2 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk UML, základní modely, diagramy aktivit, diagramy entit.

Více