Algoritmická matematika 3 Mgr. Petr Osička, Ph.D. ZS Základní pojmy
|
|
- Otakar Esterka
- před 8 lety
- Počet zobrazení:
Transkript
1 Algoritmická matematika 3 KMI/ALM3 Mgr. Petr Osička, Ph.D. ZS Pojmy problém a algoritmus Základní pojmy V této kapitole zavedeme dva základní pojmy potřebné pro kurz, problém a algoritmus. Slovo problém má v běžném jazyce široký význam. Naznačuje, že se nacházíme v neuspokojivé situaci (např. před nevyluštěnou křížovkou) a chceme ji, ať už je naše motivace jakákoliv, změnit, vyřešit problém (např. vyluštit křížovku). V kurzu se budeme zabývat specifickým významem slova. Omezíme se na problémy, které lze přesně specifikovat. To znamená, že můžeme přesně a objektivně říci, v čem problém spočívá a co je jeho řešením. Navíc, seskupíme konkrétní problémy stejného typu do skupin, kterým pak říkáme algoritmický problém. Konkrétním problémům pak říkáme instance algoritmického problému. Vyluštit křížovku z New York Times z 3. března 1986 je instancí algoritmického problému, který bychom mohli nazvat Vyluštit křížovku. Tedy, abychom přesně specifikovali algoritmický problém, musíme určit všechny jeho instance, a pro každou z instancí řešení, které je správné. Přirozeně, nutnost přesné specifikace vstupů i výstupu je motivována hlavně tím, že chceme řešit pomocí počítače, který není schopen interpretovat vágní formulace. Bez přesné formulace správného řešení, zase nemůžeme ověřit zda je řešení spočtené počítačem správné a to ani mechanicky, ani formálně. V následujícím se budeme držet zvyklostí z oblasti zabývajících se algoritmy, a z teoretické informatiky, zejména z teorie složitosti. Potřebujeme následující definice. Definice 1. Abeceda Σ je konečná neprázdná množina. Prvkům Σ říkáme symboly. Slovo (řetězec) nad abecedou Σ je uspořádaná sekvence znaků z Σ. Délka slova x Σ je délka této sekvence. Množinu všech slov nad abecedou Σ označujeme jako Σ. Jazyk L nad Σ je libovolná podmnožina Σ. Příklad 1. Mějme Σ Bool = {0, 1}. Sekvence 0001, 1110, 00 jsou slovy nad touto abecedou, sekvence 12, #43k nejsou. Σ je pak množina {0, 1, 00, 01, 10, 11, 000,... }. Slova nad vhodně zvolenou abecedou použijeme pro reprezentaci instancí problému i pro reprezentaci správných řešení. Ačkoliv se tento přístup může zdát trochu nepřirozený, přináší řadu výhod. Poskytuje základ jednotného a přesného aparátu pro uvažování. Také do jisté míry koresponduje s realitou data v počítači jsou sekvence jedniček a nul, tedy slova nad Σ Bool. Poskytují také základ pro výpočet složitosti, velikost instancí pak můžeme měřit pomocí délky slov, které je reprezentují. Je důležité si uvědomit, že reprezentace instancí různými způsoby může vést k zásadně odlišným složitostem některých algoritmů (příkladem budiž nedávno objevený algoritmus pro testování prvočíselnosti). Analogickou situaci znáte z programování, volba vhodných datových struktur může mít zásadní vliv na rychlost běhu programu. Definice následují. Definice 2. Nechť Σ je abeceda. Pak algoritmický problém definujeme jako dvojici L, R, kde L Σ je množina instancí daného problému, a R Σ Σ je relace popisující vztah mezi instancemi a správnými řešeními. Tedy pokud x, y R, pak y je správným řešením x. Během kurzu se nebudeme zabývat technickými podrobnostmi kódování instancí problémů, ani vstupů. Nicméně, můžeme tak učinit jenom předpokladem, že kódování bude zvoleno správně, i když jej neuvedeme. Chtěl bych upozornit, že tak činíme pouze proto, abychom se nemuseli zabývat technickými detaily, které zbytečně komplikují výklad. Při popisu konkrétních algoritmických problémů tedy nebudeme uvádět instance a řešení problému pomocí slov nad příslušnými abecedami, ale jako konkrétní objekty (čísla, grafy apod). Příklad 2. Pro ukázku si problém testování prvočíselnosti uvedeme ve verzích bez kódování pomocí řetězců i s jeho kódováním. (a) Bez použití řetězců můžeme problém zavést následovně. Množina instancí je dána {n n N, n 1}, správné řešení je ANO, pokud je n prvočíslo, jinak NE. (b) Zavedeme-li kódování nad Σ Bool takové, že zakódováním n je slovo skládající se z n znaků 1, kódováním ANO je slovo 1 a kódováním NE je slovo 0, pak je problém popsán pomocí dvojice L, R takové, že:
2 KMI/ALM3: Základní pojmy 2 L = {1 n n N, n 1}, kde a n je slovo složené z n znaků a, navíc 1 n, 1 R, pokud je n prvočíslo, 1 n, 0 R, pokud n není prvočíslo. V literatuře jsou studovány dva běžně se vyskytující typy problémů, rozhodovací problémy a optimalizační problémy. U obou skupin můžeme vyjádřit vztah mezi instancemi a správnými řešeními jiným způsobem, než přesným popisem R. Definice 3. Problém L, R je rozhodovacím problémem, pokud je množina všech možných výsledků dvouprvková, tj {y (x, y) R pro x L} = 2. Jeden z prvků této množiny pak označujeme jako rozhodnutí ANO, druhý z prvků jako rozhodnutí NE. Rozhodovací problém je problémem zjištění, jestli daná instance má požadovanou vlastnost. Pokud ji má, očekáváme odpověď ANO, pokud ji nemá, očekáváme odpověď NE. Protože R je v tomto případě jednoduché, můžeme problém reprezentovat pomocí jazyka. Slova, která kódují instance, pro které je odpověď ANO, do jazyka patří, slova, která kódují instance, pro které je odpověď NE, do jazyka nepatří. Příklad 3. (a) Problém testování prvočíselnosti je rozhodovací problém. (b) Typickým rozhodovacím problémem je problém splnitelnosti formulí výrokové logiky v konjunktivní normální formě (CNF). Připomeňme si, že formule je v CNF, pokud je konjunkcí klausulí. Klausule je disjunkcí literálů, z nichž každý je buď výrokovou proměnnou nebo její negací. Formule (x y) (y z) je v CNF, kdežto formule (x y) (x y) není v CNF. Každou formuli výrokové logiky lze převést do CNF. Řekneme, že formule φ je splnitelná, pokud existuje ohodnocení výrokových proměnných takové, že φ je pravdivá. Například formule (x y) je splnitelná, protože pro ohodnocení x = 1, y = 1 je pravdivá. Oproti tomu formule (x x) splnitelná není, protože není pravdivá pro žádné ohodnocení proměnných. Problém splnitelnosti formulí výrokové logiky, který označujeme jako SAT, je problémem určení toho, zda je formule splnitelná. Problém je tedy určen jazykem {zakódování φ φ je splnitelná formule v CNF}. Definice 4. Nechť Σ je abeceda. Optimalizační problém je čtveřice L, sol, cost, goal, kde L Σ je množina instancí daného problému, sol : L P(Σ ) je zobrazení přiřazující instanci problému množinu vhodných řešení; cost : L P(Σ ) Q je zobrazení přiřazující každé instanci a vhodnému řešení této instance jeho cenu; goal je buď minimum (pak mluvíme o minimalizačním problému) nebo maximum (pak mluvíme o maximalizačním problému). Řekneme, že y Σ je optimálním řešením instance x L, pokud cost(x, y) = goal{cost(y, x) x sol(x)}. Optimalizační problém je problémem výběru řešení s nejlepší cenou z množiny vhodných řešení dané instance. Vhodná řešení obdržíme pomocí zobrazení sol, cenu každého z nich určuje cost. Nakonec goal nám říká, jestli chceme najít to s největší nebo s nejmenší cenou. Příklad 4. (a) Úloha batohu (KNAPSACK), jejíž definice následuje, je optimalizačním. problémem. Neformálně můžeme popsat KNAPSACK například následovně. Zloděj se vloupal do banky a chce si odnést zlatý písek. Má k dispozici batoh, který má omezený objem. Zlatý písek je v bance uskladněn v pytlících, které mohou mít různý objem. Každý z pytlíku může zloděj buď přesypat celý do batohu, nebo jej nesmí vůbec otevírat. Samozřejmě, cílem zloděje je odnést si v batohu co největší objem zlatého písku. Formálně je úloha batohu určena následovně: Úloha batohu Instance: {(b, w 1,..., w n ) b, w 1,..., w n N} Přípustná řešení: sol(b, w 1,..., w n ) = {C {1,..., n} i C w i b} Cena řešení: cost(c, (b, w 1,..., w n )) = i C w i Cíl: maximum Čísla w i odpovídají objemům jednotlivých pytlů s pískem, b je kapacita batohu. Pro instanci I = (b, w 1,..., w 5 ), kde b = 29, w 1 = 3, w 2 = 6, w 3 = 8, w 4 = 7, w 5 = 12, existuje jediné optimální řešení C = {1, 2, 3, 5} s cenou cost(c, I) = 29. Lze snadno ověřit, že všechna ostatní přípustná řešení mají menší cenu. (b) Problém třídění, kterým jste se zabývali v ALM1, lze také formulovat jako optimalizační problém. Pro sekvenci prvků a = a 1,..., a n a jejich uspořádání je počet inverzí definován jako Inv(a) = {(a i, a j ) i <
3 KMI/ALM3: Základní pojmy 3 j, a i a j }, tedy jako počet dvojic prvků, které jsou nejsou uspořádány ve správném pořadí. Pak je problém třídění definován následovně: Problém třídění Instance: Přípustná řešení: Cena řešení: Cíl: a = a 1,..., a n, uspořádání sol(a) = množina všech permutací prvků a 1,..., a n pro x sol(a) je cost(a, x) = Inv(x) minimum Tento kurz je hlavně o algoritmech. Překvapivě si ale neřekneme přesnou formální definici. Její vysvětlení totiž vyžaduje poměrně velký prostor, navíc neexistuje pouze v jedné formě. Existující definice se od sebe více či méně výrazně liší (lze ale dokázat určitou formu jejich ekvivalence). V následujícím si tedy popíšeme algoritmus neformálně. Algoritmus je konečná procedura zapsaná ve vhodném symbolickém jazyce ve tvaru jednoznačných instrukcí (instrukce je chápána jako elementární krok, ne jako instrukce procesoru na počítači, i když instrukce procesoru je také elementárním krokem). Instrukce jsou prováděny za sebou v jednoznačném pořadí (tj. v každém kroku víme, která instrukce je následující) a k jejich provedení není potřeba žádná inteligence, intuice, lze je provádět strojově. Po skončení procedury dostaneme výsledek. Na algoritmus se můžeme podívat i z jiného úhlu: Algoritmus je konečná množina pravidel, pomocí kterých se dynamicky mění stav systému. Stav systému si lze představit jako množinu proměnných nebo kus paměti. Každá z instrukcí pak mění hodnotu jedné proměnné (nebo jedné paměťové buňky) v závislosti na tom, v jakém stavu se systém právě nachází. Existuje také pravidlo, které určí, že vývoj systému je u konce. Tento pohled na algoritmus je užitečný, protože zdůrazňuje vlastnosti, které nejsou z prvního pohledu patrné: Algoritmus potřebuje ke své činnosti prostor (paměť) a jednou instrukcí může změnit pouze limitovanou část daného prostoru. Algoritmus danému vstupu (instanci nějakého problému) přiřazuje výstup. Z vnějšku jej lze tedy chápat jako zobrazení. Formálně zapíšeme fakt, že algoritmus A pro vstup x vrátí y jako A(x) = y. Řekneme, že A řeší problém L, R pokud (x, A(x)) R pro každé x L, tedy pokud pro každou instanci problému vrací A správné řešení. U optimalizačních problémů, pro které neznáme efektivní algoritmus pro nalezení optimálního řešení, se často spokojíme s algoritmem, který místo optimální řešení vrací řešení mu blízké, ale současně pracuje efektivně. Takový algoritmus nazýváme aproximačním algoritmem. 2 Úvod do časové složitosti Algoritmus potřebuje ke svému běhu dva základní zdroje, prostor a čas. V této kapitole se budeme zabývat časovou složitostí, tedy zkoumáním toho, kolik času běh algoritmu zabere. Časová složitost (dále jen složitost) algoritmu A je funkce T ime A : N N přiřazující velikosti vstupní instance počet instrukcí, které musí algoritmus A během výpočtu provést. Protože obecně nemusí algoritmus pro dvě různé stejně velké instance provést stejné množství instrukcí, potřebujeme počty instrukcí pro instance stejné velikosti nějakým způsobem agregovat. Existuje celá řada přístupů, nejčastější jsou následující dva. Definice 5. Označme si t A (x) počet instrukcí, které algoritmus A provede pro instanci x L. Časová složitost v nejhorším případě je definovaná T ime A (n) = max{t A (x) x L, x = n}. Složitost v průměrném případě je pak x L, x =n T ime A (n) = t A(x). {x x = n} Složitost v nejhorším případě je typicky snazší nalézt. Důvodem je skutečnost, že nalézt t A (x) pro všechny instance potřebné délky je obtížné (obtížné může být i pouhé nalezení těchto instancí), kdežto nejhorší případ
4 KMI/ALM3: Základní pojmy 4 se hledá snáze. Složitost v průměrném případě lze většinou odhadnout s použitím pravděpodobnostních metod (které jsou ale mimo rozsah tohoto kurzu). Jedním z využití složitosti (mimo zřejmé využití k porovnání algoritmů) je rozdělení problémů na prakticky řešitelné a na praktický neřešitelné. Jak ovšem přiřadit složitost k problému? Definice 6. Nechť U je algoritmický problém. O(g(n)) je horním omezením složitosti problému U, pokud existuje algoritmus A řešící U takový, že T ime A (n) O(g(n)). ω(f(n)) je dolním omezením složitosti problému U, pokud pro každý algoritmus B řešící U platí, že T ime B (n) ω(f(n)) V předchozí definici se vyskytuje asymptotická notace, kterou se zabývá následující kapitola. Čtenáři, kterému je tato notace neznámá, doporučuji, aby si následující kapitolu prošel před pokračováním ve čtení té současné. Za horní omezení složitosti problému bereme složitost nejlepšího známého algoritmu. Nalézt dolní omezení složitosti je oproti tomu mnohem komplikovanější. Musíme totiž vyloučit existenci algoritmu s lepší složitostí než dolní hranicí. To je netriviální a pro naprostou většinu problémů je taková hranice neznámá (vyloučíme-li například hranici danou tím, že algoritmus musí přečíst celý vstup). Příkladem problému, pro který je tato hranice známá je například třídění porovnáváním, které má dolní omezení složitosti O(n log n). Problémy rozdělujeme na prakticky řešitelné a prakticky neřešitelné pomocí jejich horního omezení složitosti. Rozdělení je následující problém považujeme za praktický řešitelný, pokud pro je jeho horní omezení složitost O(p(n)), kde p(n) je polynom. Tedy, problém je praktický řešitelný, pokud pro něj existuje algoritmus s nejhůře polynomickou složitostí. ostatní problémy považujeme za prakticky neřešitelné. Zamysleme se nyní nad důvody, proč zvolit za hranici praktické řešitelnosti zrovna polynomickou složitost. Důvodů je hned několik, uvedeme dva. Polynom je největší funkce, která neroste rychle. U tohoto důvodu předpokládáme, že stupeň polynomu nebude extrémně velký (např. 100). U většiny známých algoritmů s polynomickou složitostí, není stupeň polynomu vyšší než 10 (možná i méně). Druhým důvodem je to, že polynomy jsou uzavřené vzhledem k násobení (vynásobením dvou polynomů dostaneme zase polynom). Pokud uvnitř algoritmu A spouštíme nejvíce polynomický počet krát algoritmus B s nejhůře polynomickou složitostí, má tento algoritmus také nejhůře polynomickou složitost (přitom samozřejmě předpokládáme, že pokud bychom považovali složitost algoritmu B při analýze A za konstantu, bude složitost A nejhůře polynomická). V podstatě tedy můžeme efektivní algoritmy skládat do sebe (analogicky volání funkcí při programování) a získaný algoritmus bude také efektivní. Poznámka 1. V teorii složitosti označujeme množinu problémů, které jsou prakticky řešitelné, jako třídu P. Další významonu třídou problémů je NP. Do této třídy patří problémy, pro které existuje algoritmus, který ověří efektivně (tj. v polynomickém čase) správnost řešení. To znamená, že pokud máme řešení, umíme v polynomickém čase spočítat, jestli je toto řešení správné. Dobrý příkladem je luštění křížovky. Pokud by existoval polynomický algoritmus pro luštění křížovky, pak by tento problém patřil do P. Pokud by existoval polynomický algoritmus, který zkontroluje, zdali je křížovka vyplněna správně, patří luštění křížovky do NP. Je snadné dokázat, že P NP. Stále však nevíme, platí-li inkluze v druhém směru (pokud ano, jsou obě třídy shodné). Za vyřešení tohoto otevřeného problému známého jako P vs NP problém je vypsána odměna milion amerických dolarů a úspěšného řešitele čeká nehynoucí sláva. 3 Asymptotická notace Vyjádřit (rozuměj zapsat jako vzoreček) složitost algoritmu je často komplikované a pracné, a navíc to ztěžuje její použití. Proto se při analýze algoritmů a uvažování o složitostech používá jejich zjednodušená reprezentace. Složitost algoritmu vyjadřujeme v tzv. asymptotické notaci. Zjednodušení spočívá v zanedbání částí, které vyjádření komplikují, a v ponechání toho nejdůležitějšího, což je popis hlavního trendu rychlosti růstu složitosti
5 KMI/ALM3: Základní pojmy 5 (jako rychlosti růstu funkce). Asymptotická notace existovala a byla studována ještě předtím, než našla použití v analýze algoritmů. Toto použití navrhl a prosadil především Donald Knuth. Definice 7. O(f(n)) je množina všech funkcí g(n) takových, že existují kladné konstanty c a n 0 takové, že 0 g(n) cf(n) pro všechna n n 0. Ω(f(n)) je množina všech funkcí g(n) takových, že existují kladné konstanty c a n 0 takové, že g(n) cf(n) 0 pro všechna n n 0. Θ(f(n)) je množina všech funkcí g(n) takových, že existují kladní konstanty c 1, c 2 a n 0 takové, že 0 c 1 f(n) g(n) c 2 f(n). Zápis g(n) = O(f(n)) je příkladem toho, čemu Knuth říká jednostranná rovnost (v následujících úvahách lze zaměnit Ω a Θ za O). Rovnítko v ní interpretujeme jinak, než je zvyklé (což je zřejmé, na obou stranách rovnosti nejsou objekty stejného typu). Korektně by měl být vztah zapsán jako g(n) O(f(n)), nicméně použití rovnítka se již zažilo a stalo se de facto standardem. Pokud g(n) = O(f(n)), tak funkce g(n) roste od určitého n nanejvýš tak rychle jako f(n). To, že jde o rychlost růstu a ne o konkrétní hodnoty funkcí, lze vypozorovat z použití konstanty c v definici. Vynásobením c můžeme totiž f(n) posouvat po ose y nahoru a dolů, jak se nám hodí. Obdobná úvaha platí i pro g(n) = Ω(f(n)), s tím rozdílem, že nyní g(n) roste alespoň tak rychle jako f(n). Pokud g(n) = Θ(f(n)), obě funkce rostou stejně rychle. Příklad 5. Čtenář může snadno ověřit následující a) x = O(x 3 ) b) x = Ω(log x) c) x 3 + x = Θ(x 3 ) d) 5 = Ω(1) Pro pochopení významu rovností, ve kterých se asymptotická notace nachází na levé i na pravé straně, si stačí uvědomit, že výraz, ve kterém se tato notace nachází představuje množinu funkcí. Tedy například výraz n 3 + O(n) je množina {n 3 + f(n) f(n) O(n)}. Protože na obou stranách = jsou množiny a jedná se o jednosměrnou rovnost, interpretujeme = jako. Pro aritmetiku s množinami funkcí platí intuitivní pravidla. Uvážíme-li množiny funkcí S a T, pak platí S + T = {g + h g S, h T }, S T = {g h g S, h T }, S T = {g h g S, h T }, S T = {g h g S, h T }. Skládání funkce s množinou funkcí provedeme obdobně, f(o(g(n))) = {f(h(n)) h O(g(n))}. Například log O(n 2 ) je množina logaritmů z funkcí omezených shora kvadrikou. Pokud jsou asymptotické výrazy vnořeny, pak množiny sjednotíme, tedy například Příklad 6. Čtenář může snadno ověřit následující a) c O(f(n)) = O(f(n)) b) O(O(f(n)) = O(f(n)) c) O(f(n)) + O(f(n)) = O(f(n)) d) O(f(n) g(n)) = f(n) O(g(n)) O(g(n) + O(f(n))) = {O(h) h g(n) + O(f(n))}.
6 KMI/ALM3: Základní pojmy 6 Reference [1] Donald Knuth. The Art of Computer Programming, Volume I. Addison-Wesley, 1997 [2] Donald Knuth. Selected papers on analysis of algorithms. Center for the study of language an information, 2000 [3] Cormen et. al. Introduction to algorithms. The MIT press [4] Donald Knuth Concrete mathematics: A foundation for computer science. Addison-Wesley professional, 1994 [5] John Kleinberg, Éva Tardes. Algorithm design. Addison-Wesley, [6] U. Vazirani et. al. Algorithms. McGraw-Hill, [7] Steve Skiena. The algorithm design manual. Springer, [8] Juraj Hromkovič. Algorithmics for hard problems. Springer, [9] Oded Goldreich. Computational complexity: a conceptual perspective. Cambridge university press, 2008.
KMI/ALM3 Mgr. Petr Osička, Ph.D. ZS ANO je slovo 1 a kódováním NE je slovo 0, pak je problém popsán pomocí dvojice L, R takové, že:
Algoritmická matematika 3 KMI/ALM3 Mgr. Petr Osička, Ph.D. ZS 2014 Algoritmický problém Přednáška 1 Definice 1. Abeceda Σ je konečná neprázdná množina. Prvkům Σ říkáme symboly. Slovo (řetězec) nad abecedou
Dynamické programování
Algoritmická matematika 3 KMI/ALM3 Mgr. Petr Osička, Ph.D ZS 2014 1 Základní princip Dynamické programování Princip dynamického programování je založen na podobné myšlence jako rozděl a panuj. Vstupní
Třídy složitosti P a NP, NP-úplnost
Třídy složitosti P a NP, NP-úplnost Cíle přednášky: 1. Definovat, za jakých okolností můžeme problém považovat za efektivně algoritmicky řešitelný. 2. Charakterizovat určitou skupinu úloh, pro které není
Metoda hrubé sily, backtracking a branch-and-bound
Algoritmická matematika 3 KMI/ALM3 Mgr. Petr Osička, Ph.D. ZS 04 Metoda hrubé sily, backtracking a branch-and-bound Základní princip Metoda hrubé síly se dá popsat jednoduchou větou zkus všechny možnosti.
YZTI - poznámky ke složitosti
YZTI - poznámky ke složitosti LS 2018 Abstrakt Poznámky k přednášce YZTI zabývající se složitostí algoritmických problémů a teorií NP-úplnosti. Složitost algoritmu a problému Zabýváme se už pouze rekurzivními
NP-úplnost problému SAT
Problém SAT je definován následovně: SAT(splnitelnost booleovských formulí) Vstup: Booleovská formule ϕ. Otázka: Je ϕ splnitelná? Příklad: Formule ϕ 1 =x 1 ( x 2 x 3 )jesplnitelná: např.přiohodnocení ν,kde[x
Vztah teorie vyčíslitelnosti a teorie složitosti. IB102 Automaty, gramatiky a složitost, /31
Vztah teorie vyčíslitelnosti a teorie složitosti IB102 Automaty, gramatiky a složitost, 2. 12. 2013 1/31 IB102 Automaty, gramatiky a složitost, 2. 12. 2013 2/31 Časová složitost algoritmu počet kroků výpočtu
KMI/ALM3 Mgr. Petr Osička, Ph.D. Update: 15. listopadu 2016
Algoritmická matematika 3 KMI/ALM3 Mgr. Petr Osička, Ph.D. Update: 15. listopadu 2016 Algoritmický problém Přednáška 1 Definice 1. Abeceda Σ je konečná neprázdná množina. Prvkům Σ říkáme symboly. Slovo
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
Složitost 1.1 Opera ní a pam ová složitost 1.2 Opera ní složitost v pr rném, nejhorším a nejlepším p ípad 1.3 Asymptotická složitost
1 Složitost 1.1 Operační a paměťová složitost Nezávislé určení na konkrétní implementaci Několik typů operací = sčítání T+, logické T L, přiřazení T A(assign), porovnání T C(compare), výpočet adresy pole
1 Linearní prostory nad komplexními čísly
1 Linearní prostory nad komplexními čísly V této přednášce budeme hledat kořeny polynomů, které se dále budou moci vyskytovat jako složky vektorů nebo matic Vzhledem k tomu, že kořeny polynomu (i reálného)
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ý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ýroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2017/2018 1 / 17 Předběžnosti Základní pojmy n-ární relace a funkce
NÁVRH ALGORITMŮ. poznámky pro Algoritmickou matematiku 3. Petr Osička
NÁVRH ALGORITMŮ poznámky pro Algoritmickou matematiku 3 Petr Osička i Text obsahuje poznámky ke kurzu Algoritmická matematika 3. Petr Osička Olomouc, podzim 2017 Obsah 1 Úvod 1 2 Rozděl a panuj 6 3 Dynamické
NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
NP-ÚPLNÉ PROBLÉMY Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 13 Evropský sociální fond Praha & EU: Investujeme do
Množiny, relace, zobrazení
Množiny, relace, zobrazení Množiny Množinou rozumíme každý soubor určitých objektů shrnutých v jeden celek. Zmíněné objekty pak nazýváme prvky dané množiny. Pojem množina je tedy synonymem pojmů typu soubor,
3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI
1 Pravdivost formulí v interpretaci a daném ohodnocení
1 Pravdivost formulí v interpretaci a daném ohodnocení Než uvedeme konkrétní příklady, zopakujme si definici interpretace, ohodnocení a pravdivosti. Necht L je nějaký jazyk. Interpretaci U, jazyka L tvoří
Matematická logika. Rostislav Horčík. horcik
Matematická logika Rostislav Horčík horcik@math.feld.cvut.cz horcik@cs.cas.cz www.cs.cas.cz/ horcik Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 1 / 15 Splnitelnost množin Definice Množina
ALGORITMY A DATOVÉ STRUKTURY
Název tématického celku: Cíl: ALGORITMY A DATOVÉ STRUKTURY Metodický list č. 1 Časová složitost algoritmů Základním cílem tohoto tematického celku je vysvětlení potřebných pojmů a definic nutných k popisu
Úvod do informatiky. Miroslav Kolařík
Úvod do informatiky přednáška první Miroslav Kolařík Zpracováno dle učebního textu prof. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008. Obsah 1 Co a k čemu je logika? 2 Výroky a logické spojky
11 VYPOČITATELNOST A VÝPOČTOVÁ SLOŽITOST
11 VYPOČITATELNOST A VÝPOČTOVÁ SLOŽITOST Na první přednášce jsme si neformálně zavedli pojmy problém a algoritmus pro jeho řešení, které jsme na počítači vykonávali pomocí programů. Jako příklad uveďme
Místo pojmu výroková formule budeme používat zkráceně jen formule. Při jejich zápisu
VÝROKOVÁ LOGIKA Matematická logika se zabývá studiem výroků, jejich vytváření a jejich pravdivostí. Základním kamenem výrokové logiky jsou výroky. Co je výrok nedefinujejme, pouze si řekneme, co si pod
Základní pojmy matematické logiky
KAPITOLA 1 Základní pojmy matematické logiky Matematická logika se zabývá studiem výroků, jejich vytváření a jejich pravdivostí. Základním kamenem výrokové logiky jsou výroky. 1. Výroková logika Co je
Sémantika predikátové logiky
Sémantika predikátové logiky pro analýzu sémantiky potřebujeme nejprve specifikaci jazyka (doména, konstanty, funkční a predikátové symboly) příklad: formální jazyk s jediným binárním predikátovým symbolem
Matematická logika. Miroslav Kolařík
Matematická logika přednáška šestá Miroslav Kolařík Zpracováno dle textu R. Bělohlávka: Matematická logika poznámky k přednáškám, 2004. a dle učebního textu R. Bělohlávka a V. Vychodila: Diskrétní matematika
PQ-stromy a rozpoznávání intervalových grafů v lineárním čase
-stromy a rozpoznávání intervalových grafů v lineárním čase ermutace s předepsanými intervaly Označme [n] množinu {1, 2,..., n}. Mějme permutaci π = π 1, π 2,..., π n množiny [n]. Řekneme, že množina S
Výroková logika - opakování
- opakování ormální zavedení Výroková formule: Máme neprázdnou nejvýše spočetnou množinu A výrokových proměnných. 1. Každá proměnná je výroková formule 2. Když α, β jsou formule, potom ( α), (α β), (α
Formální systém výrokové logiky
Formální systém výrokové logiky 1.Jazyk výrokové logiky Nechť P = {p,q,r, } je neprázdná množina symbolů, které nazýváme prvotní formule. Symboly jazyka L P výrokové logiky jsou : a) prvky množiny P, b)
Přijímací zkouška - matematika
Přijímací zkouška - matematika Jméno a příjmení pište do okénka Číslo přihlášky Číslo zadání 1 Grafy 1 Pro který z následujících problémů není znám žádný algoritmus s polynomiální časovou složitostí? Problém,
Algoritmizace. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010
Jiří Vyskočil, Marko Genyg-Berezovskyj 2010 Úvod stránky předmětu: https://cw.felk.cvut.cz/doku.php/courses/a4b33alg/start cíle předmětu Cílem je schopnost samostatné implementace různých variant základních
V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti
Kapitola 5 Vektorové prostory V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti operací sčítání a násobení
Výroková a predikátová logika - XIII
Výroková a predikátová logika - XIII Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - XIII ZS 2013/2014 1 / 13 Úvod Algoritmická (ne)rozhodnutelnost Které
4. NP-úplné (NPC) a NP-těžké (NPH) problémy
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA 4. NP-úplné (NPC) a NP-těžké (NPH) problémy Karpova redukce
Každé formuli výrokového počtu přiřadíme hodnotu 0, půjde-li o formuli nepravdivou, a hodnotu 1, půjde-li. α neplatí. β je nutná podmínka pro α
1. JAZYK ATEATIKY 1.1 nožiny nožina je souhrn objektů určitých vlastností, které chápeme jako celek. ZNAČENÍ. x A x A θ A = { { a, b a A = B A B 0, 1 2 a, a,..., a n x patří do množiny A x nepatří do množiny
Okruh č.3: Sémantický výklad predikátové logiky
Okruh č.3: Sémantický výklad predikátové logiky Predikátová logika 1.řádu formalizuje úsudky o vlastnostech předmětů a vztazích mezi předměty pevně dané předmětné oblasti (univerza). Nebudeme se zabývat
Kapitola 1. Úvod. 1.1 Značení. 1.2 Výroky - opakování. N... přirozená čísla (1, 2, 3,...). Q... racionální čísla ( p, kde p Z a q N) R...
Kapitola 1 Úvod 1.1 Značení N... přirozená čísla (1, 2, 3,...). Z... celá čísla ( 3, 2, 1, 0, 1, 2,...). Q... racionální čísla ( p, kde p Z a q N) q R... reálná čísla C... komplexní čísla 1.2 Výroky -
Digitální učební materiál
Digitální učební materiál Číslo projektu: CZ.1.07/1.5.00/34.0548 Název školy: Gymnázium, Trutnov, Jiráskovo náměstí 325 Název materiálu: VY_32_INOVACE_146_IVT Autor: Ing. Pavel Bezděk Tematický okruh:
Základy logiky a teorie množin
Pracovní text k přednášce Logika a teorie množin (I/2007) 1 1 Struktura přednášky Matematická logika 2 Výroková logika Základy logiky a teorie množin Petr Pajas pajas@matfyz.cz Predikátová logika 1. řádu
Výroková logika II. Negace. Již víme, že negace je změna pravdivostní hodnoty výroku (0 1; 1 0).
Výroková logika II Negace Již víme, že negace je změna pravdivostní hodnoty výroku (0 1; 1 0). Na konkrétních příkladech si ukážeme, jak se dají výroky negovat. Obecně se výrok dá negovat tak, že před
Pro každé formule α, β, γ, δ platí: Pro každé formule α, β, γ platí: Poznámka: Platí právě tehdy, když je tautologie.
Zpracoval: hypspave@fel.cvut.cz 5. Výroková logika, formule výrokové logiky a jejich pravdivostní ohodnocení, splnitelné formule, tautologie, kontradikce, sémantický důsledek, tautologicky ekvivalentní
Výroková a predikátová logika - XII
Výroková a predikátová logika - XII Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - XII ZS 2015/2016 1 / 15 Algebraické teorie Základní algebraické teorie
Úvod do informatiky. Miroslav Kolařík
Úvod do informatiky přednáška jedenáctá Miroslav Kolařík Zpracováno dle P. Martinek: Základy teoretické informatiky, http://phoenix.inf.upol.cz/esf/ucebni/zti.pdf Obsah 1 Složitost algoritmu 2 Třídy složitostí
10. Složitost a výkon
Jiří Vokřínek, 2016 B6B36ZAL - Přednáška 10 1 Základy algoritmizace 10. Složitost a výkon doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Jiří
Algoritmická matematika 3 Mgr. Petr Osička, Ph.D. ZS 2014. Rozděl a panuj
Algoritmická matematika 3 KMI/ALM3 Mgr. Petr Osička, Ph.D. ZS 2014 1 Základní princip Rozděl a panuj Technika rozděl a panuj je založená na následující myšlence. Z dané vstupní instance I vygenerujeme
Přednáška 3: Limita a spojitost
3 / 1 / 17, 1:38 Přednáška 3: Limita a spojitost Limita funkce Nejdříve je potřeba upřesnit pojmy, které přesněji popisují (topologickou) strukturu množiny reálných čísel, a to zejména pojem okolí 31 Definice
FIT ČVUT MI-LOM Lineární optimalizace a metody. Dualita. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
FIT ČVUT MI-LOM Lineární optimalizace a metody Dualita Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Michal Černý, 2011 FIT ČVUT, MI-LOM, M. Černý, 2011: Dualita 2/5 Dualita Evropský
Matematická analýza 1
Matematická analýza 1 ZS 2019-20 Miroslav Zelený 1. Logika, množiny a základní číselné obory 2. Limita posloupnosti 3. Limita a spojitost funkce 4. Elementární funkce 5. Derivace 6. Taylorův polynom Návod
Matematická logika. Miroslav Kolařík
Matematická logika přednáška třetí Miroslav Kolařík Zpracováno dle textu R. Bělohlávka: Matematická logika poznámky k přednáškám, 2004. a dle učebního textu R. Bělohlávka a V. Vychodila: Diskrétní matematika
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ší
Základy algoritmizace, návrh algoritmu
Základy algoritmizace, návrh algoritmu Algoritmus Předpoklady automatického výpočtu: předem stanovit (rozmyslet) přesný postup během opakovaného provádění postupu již nepřemýšlet a postupovat mechanicky
Binární vyhledávací stromy pokročilé partie
Binární vyhledávací stromy pokročilé partie KMI/ALS lekce Jan Konečný 30.9.204 Literatura Cormen Thomas H., Introduction to Algorithms, 2nd edition MIT Press, 200. ISBN 0-262-5396-8 6, 3, A Knuth Donald
Výroková a predikátová logika - III
Výroková a predikátová logika - III Petr Gregor KTIML MFF UK ZS 2014/2015 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - III ZS 2014/2015 1 / 21 Výroková logika Horn-SAT Horn-SAT Jednotková
Složitost. Teoretická informatika Tomáš Foltýnek
Složitost Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Teoretická informatika 2 Opakování z minulé přednášky Co říká Churchova teze? Jak lze kódovat Turingův stroj? Co je to Univerzální
Příklad z učebnice matematiky pro základní školu:
Příklad z učebnice matematiky pro základní školu: Součet trojnásobku neznámého čísla zvětšeného o dva a dvojnásobku neznámého čísla zmenšeného o pět se rovná čtyřnásobku neznámého čísla zvětšeného o jedna.
INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.
INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.0141 Relace, zobrazení, algebraické struktury Michal Botur Přednáška
Negativní informace. Petr Štěpánek. S použitím materiálu M.Gelfonda a V. Lifschitze. Logické programování 15 1
Negativní informace Petr Štěpánek S použitím materiálu M.Gelfonda a V. Lifschitze 2009 Logické programování 15 1 Negace jako neúspěch Motivace: Tvrzení p (atomická formule) neplatí, jestliže nelze odvodit
Složitost Filip Hlásek
Složitost Filip Hlásek Abstrakt. Příspěvek popisuje dva základní koncepty teoretické informatiky, Turingovy stroje a složitost. Kromě definic důležitých pojmů uvádí také několik souvisejících tvrzení,
8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice
9. Lineární diferenciální rovnice 2. řádu Cíle Diferenciální rovnice, v nichž hledaná funkce vystupuje ve druhé či vyšší derivaci, nazýváme diferenciálními rovnicemi druhého a vyššího řádu. Analogicky
i=1 Přímka a úsečka. Body, které leží na přímce procházející body a a b můžeme zapsat pomocí parametrické rovnice
I. Funkce dvou a více reálných proměnných 1. Úvod Značení: V textu budeme používat označení: N pro množinu všech přirozených čísel; R pro množinu všech reálných čísel; R n pro množinu všech uspořádaných
Limita a spojitost funkce a zobrazení jedné reálné proměnné
Přednáška 4 Limita a spojitost funkce a zobrazení jedné reálné proměnné V několika následujících přednáškách budeme studovat zobrazení jedné reálné proměnné f : X Y, kde X R a Y R k. Protože pro každé
Dynamické programování
Dynamické programování 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í algoritmy (BI-EFA)
Matematická analýza pro informatiky I. Limita funkce
Matematická analýza pro informatiky I. 5. přednáška Limita funkce Jan Tomeček tomecek@inf.upol.cz http://aix-slx.upol.cz/ tomecek/index Univerzita Palackého v Olomouci 18. března 2011 Jan Tomeček, tomecek@inf.upol.cz
Unární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek
Otázka 06 - Y01MLO Zadání Predikátová logika, formule predikátové logiky, sentence, interpretace jazyka predikátové logiky, splnitelné sentence, tautologie, kontradikce, tautologicky ekvivalentní formule.
Výroková a predikátová logika - V
Výroková a predikátová logika - V Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - V ZS 2015/2016 1 / 21 Dokazovací systémy VL Hilbertovský kalkul Hilbertovský
Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují
Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují 1. u + v = v + u, u, v V 2. (u + v) + w = u + (v + w),
3.10 Rezoluční metoda ve výrokové logice
3.10. Rezoluční metoda ve výrokové logice [070405-1102 ] 27 3.10 Rezoluční metoda ve výrokové logice Rezoluční metoda rozhoduje, zda daná množina klausulí je splnitelná nebo je nesplnitelná. Tím je také
Ú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
ÚVODNÍ ZNALOSTI. datové struktury. správnost programů. analýza algoritmů
ÚVODNÍ ZNALOSTI datové struktury správnost programů analýza algoritmů Datové struktury základní, primitivní, jednoduché datové typy: int, char,... hodnoty: celá čísla, znaky, jednoduché proměnné: int i;
Pravděpodobnost a statistika
Pravděpodobnost a statistika 1 Náhodné pokusy a náhodné jevy Činnostem, jejichž výsledek není jednoznačně určen podmínkami, za kterých probíhají, a které jsou (alespoň teoreticky) neomezeně opakovatelné,
5 Orientované grafy, Toky v sítích
Petr Hliněný, FI MU Brno, 205 / 9 FI: IB000: Toky v sítích 5 Orientované grafy, Toky v sítích Nyní se budeme zabývat typem sít ových úloh, ve kterých není podstatná délka hran a spojení, nýbž jejich propustnost
Rekurentní rovnice, strukturální indukce
Rekurentní rovnice, strukturální indukce Jiří Velebil: A7B01MCS 26. září 2011: 1/20 Příklad (Parketáž triminy z minulé přednášky) P(n) = počet parket k vyparketování místnosti rozměru n 1 P(1) = 1. 2 P(n
16. Goniometrické rovnice
@198 16. Goniometrické rovnice Definice: Goniometrická rovnice je taková rovnice, ve které proměnná (neznámá) vystupuje pouze v goniometrických funkcích. Řešit goniometrické rovnice znamená nalézt všechny
Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce
Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce Marie Duží marie.duzi@vsb.cz 1 Úvod do teoretické informatiky (logika) Naivní teorie množin Co je to množina? Množina je soubor prvků
fakulty MENDELU v Brně (LDF) s ohledem na disciplíny společného základu http://akademie.ldf.mendelu.cz/cz (reg. č. CZ.1.07/2.2.00/28.
Základy lineárního programování Vyšší matematika, Inženýrská matematika LDF MENDELU Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF) s ohledem
Složitost algoritmů. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava
Složitost algoritmů doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 27. prosince 2015 Jiří Dvorský (VŠB TUO) Složitost algoritmů
Digitální učební materiál
Digitální učební materiál Číslo projektu: CZ.1.07/1.5.00/34.0548 Název školy: Gymnázium, Trutnov, Jiráskovo náměstí 325 Název materiálu: VY_32_INOVACE_148_IVT Autor: Ing. Pavel Bezděk Tematický okruh:
12. Lineární programování
. Lineární programování. Lineární programování Úloha lineárního programování (lineární optimalizace) je jedním ze základních problémů teorie optimalizace. Našim cílem je nalézt maximum (resp. minimum)
Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace
RELACE Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace slouží k vyjádření vztahů mezi prvky nějakých množin. Vztahy mohou být různé povahy. Patří sem vztah býti potomkem,
Částečná korektnost. Petr Štěpánek. S využitím materialu Krysztofa R. Apta
Částečná korektnost Petr Štěpánek S využitím materialu Krysztofa R. Apta 2007 Logické programování 14 1 Částečná korektnost je vlastností programu a znamená, že program vydává korektní výsledky pro dané
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ýroková logika. Teoretická informatika Tomáš Foltýnek
Výroková logika Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Teoretická informatika strana 2 Opakování z minulé přednášky Co je to formalismus a co je jeho cílem? Formulujte Russelův paradox
0.1 Úvod do lineární algebry
Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Lineární rovnice o 2 neznámých Definice 011 Lineární rovnice o dvou neznámých x, y je rovnice, která může být vyjádřena ve tvaru ax + by = c, kde
LDF MENDELU. Simona Fišnarová (MENDELU) Základy lineárního programování VMAT, IMT 1 / 25
Základy lineárního programování Vyšší matematika, Inženýrská matematika LDF MENDELU Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF) s ohledem
12. Globální metody MI-PAA
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI
Substituce. Petr Štěpánek. S využitím materialu Krysztofa R. Apta. Logické programování 2 1
Substituce Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 2 1 Algebra termů Předpokládáme, že je dán jazyk termů. L, definovali jsme množinu jeho Zavedeme některé užitečné
Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008
Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování študenti MFF 15. augusta 2008 1 15 Základy lineárního programování Požadavky Simplexová metoda Věty o dualitě (bez důkazu)
Rekurentní rovnice, strukturální indukce
, strukturální indukce Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 1/19 Backusova-Naurova forma Například syntaxe formuĺı výrokové logiky kde a At. Poznámky 1 Relaxace BNF. ϕ ::= a tt (ϕ
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
Limita funkce. FIT ČVUT v Praze. (FIT) Limita funkce 3.týden 1 / 39
Limita funkce FIT ČVUT v Praze 3.týden (FIT) Limita funkce 3.týden 1 / 39 Definice funkce. Zobrazení (f, D f ), jehož definiční obor D f i obor hodnot H f je podmnožinou množiny reálných čísel, se nazývá
teorie logických spojek chápaných jako pravdivostní funkce
Výroková logika teorie logických spojek chápaných jako pravdivostní funkce zabývá se způsoby tvoření výroků pomocí spojek a vztahy mezi pravdivostí různých výroků používá specifický jazyk složený z výrokových
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 204 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia
Funkce, elementární funkce.
Kapitola 2 Funkce, elementární funkce. V této kapitole si se budeme věnovat studiu základních vlastností funkcí jako je definiční obor, obor hodnot. Připomeneme si pojmy sudá, lichá, rostoucí, klesající.
Dynamické programování
ALG 11 Dynamické programování Úloha batohu neomezená Úloha batohu /1 Úloha batohu / Knapsack problem Máme N předmětů, každý s váhou Vi a cenou Ci (i = 1, 2,..., N) a batoh s kapacitou váhy K. Máme naložit
Algoritmus pro hledání nejkratší cesty orientovaným grafem
1.1 Úvod Algoritmus pro hledání nejkratší cesty orientovaným grafem Naprogramoval jsem v Matlabu funkci, která dokáže určit nejkratší cestu v orientovaném grafu mezi libovolnými dvěma vrcholy. Nastudoval
MIDTERM D. Příjmení a jméno:
MIDTERM D Příjmení a jméno: 1 2 3 4 5 6 7 8 9 10 11 12 1 Doplňte místo otazníku ten ze symbolů, aby platil vztah (log n) / (log n 2 ) =?(1/ n): A) o B) O (a současně nelze použít ani o ani Θ) C) Θ D) Ω
Pravděpodobně skoro správné. PAC učení 1
Pravděpodobně skoro správné (PAC) učení PAC učení 1 Výpočetní teorie strojového učení Věta o ošklivém kačátku. Nechť E je klasifikovaná trénovací množina pro koncept K, který tvoří podmnožinu konečného
Predikátová logika. prvního řádu
Predikátová logika prvního řádu 2 Predikát Predikát je n-ární relace - vyjadřuje vlastnosti objektů a vztahy mezi objekty - z jednoduchého výroku vznikne vypuštěním alespoň jednoho jména objektu (individua)
Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy
Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy Lukáš Havrlant Univerzita Palackého 10. ledna 2014 Primární zdroj Jiří Adámek: Foundations of Coding. Strany 137 160. Na webu ke stažení, heslo: