Rekurentní rovnice, strukturální indukce

Podobné dokumenty
Rekurentní rovnice, strukturální indukce

Principy indukce a rekurentní rovnice

Principy indukce a rekursivní algoritmy

Zpracoval: 7. Matematická indukce a rekurse. Řešení rekurentních (diferenčních) rovnic s konstantními koeficienty.

DMA Přednáška Rekurentní rovnice. takovou, že po dosazení odpovídajících členů do dané rovnice dostáváme pro všechna n n 0 + m pravdivý výrok.

Věta 12.3 : Věta 12.4 (princip superpozice) : [MA1-18:P12.7] rovnice typu y (n) + p n 1 (x)y (n 1) p 1 (x)y + p 0 (x)y = q(x) (6)

Kapitola 11: Lineární diferenciální rovnice 1/15

Výroková logika syntaxe a sémantika

Rezoluce ve výrokové logice

LDF MENDELU. Simona Fišnarová (MENDELU) LDR druhého řádu VMAT, IMT 1 / 22

Diferenciální rovnice 3

Řešení rekurentních rovnic 2. Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce 11

Diferenˇcní rovnice Diferenciální rovnice Matematika IV Matematika IV Program

Sémantika výrokové logiky. Alena Gollová Výroková logika 1/23

Soustavy lineárních rovnic

Řešení rekurentních rovnic 3. Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce 12

Třídy složitosti P a NP, NP-úplnost

9.5. Soustavy diferenciálních rovnic

1 Polynomiální interpolace

Mimo samotné správnosti výsledku vypočteného zapsaným algoritmem je ještě jedno

Obsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie

Matematika 2 LS 2012/13. Prezentace vznikla na základě učebního textu, jehož autorem je doc. RNDr. Mirko Rokyta, CSc. J. Stebel Matematika 2

Složitost algoritmů. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol.

Základy elementární teorie čísel

Algoritmizace složitost rekurzivních algoritmů. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

7.3. Diferenciální rovnice II. řádu

Základy logiky a teorie množin

Časová složitost / Time complexity

Matematika IV 9. týden Vytvořující funkce

Převedení okrajové úlohy na sled

Základy elementární teorie čísel

Věta o dělení polynomů se zbytkem

Nejdřív spočítáme jeden příklad na variaci konstant pro lineární diferenciální rovnici 2. řádu s kostantními koeficienty. y + y = 4 sin t.

Relace a kongruence modulo

Antonín Sadil Elementární metody řešení diferenčních rovnic

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...

MKI Funkce f(z) má singularitu v bodě 0. a) Stanovte oblast, ve které konverguje hlavní část Laurentova rozvoje funkce f(z) v bodě 0.

Soustavy lineárních diferenciálních rovnic I. řádu s konstantními koeficienty

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

Podobnost matic. Definice 8.6. Dány matice A, B M n (C). Jestliže existuje regulární matice P M n (C) tak,

Přijímací zkouška - matematika

Matematika 4 FSV UK, LS Miroslav Zelený

4. OBYČEJNÉ DIFERENCIÁLNÍ ROVNICE

Algoritmizace. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice

1 Diference a diferenční rovnice

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

HL Academy - Chata Lopata Emu (Brkos 2012) Řetězové zlomky / 27

Formální jazyky a gramatiky Teorie programovacích jazyků

PŘEDNÁŠKA 2 POSLOUPNOSTI

Unbounded Model Checking

Drsná matematika III 6. přednáška Obyčejné diferenciální rovnice vyšších řádů, Eulerovo přibližné řešení a poznámky o odhadech chyb

Základy matematické analýzy

Diskrétní matematika

k-dimenzionálním prostoru. problém: Zkonstruovat strom, který rozděluje prostor polorovinami

Matematika I A ukázkový test 1 pro 2014/2015

Rezoluce v predikátové logice

Binární vyhledávací stromy pokročilé partie

ALGORITMY A DATOVÉ STRUKTURY

Matematická analýza pro informatiky I. Limita posloupnosti (I)

pouze u některých typů rovnic a v tomto textu se jím nebudeme až na

INŽENÝRSKÁ MATEMATIKA DIFERENCIÁLNÍ ROVNICE 2

Lineární algebra : Metrická geometrie

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

9.3. Úplná lineární rovnice s konstantními koeficienty

[1] x (y z) = (x y) z... (asociativní zákon), x y = y x... (komutativní zákon).

Diferenciální rovnice

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Predik atov a logika - pˇredn aˇska () Predik atov a logika - pˇredn aˇska / 16

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

DRN: Kořeny funkce numericky

9.4. Rovnice se speciální pravou stranou

Vztah limity k aritmetickým operacím a uspořádání

Základy teorie množin

17. Posloupnosti a řady funkcí

Subexponenciální algoritmus pro diskrétní logaritmus

Okruh Lineární rovnice v Z m Těleso Gaussova eliminace (GEM) Okruh Z m. Jiří Velebil: X01DML 19. listopadu 2007: Okruh Z m 1/20

O řešení diferenční rovnice y(n+2) 1, 25y(n+1)+0, 78125y(n) = x(n + 2) x(n)

Rezoluce v predikátové logice

Polynomy nad Z p Konstrukce faktorových okruhů modulo polynom. Alena Gollová, TIK Počítání modulo polynom 1/30

z nich byla poprvé dokázána v 19. století velikány analytické teorie čísel (Pafnutij Lvovič Čebyšev, Charles-Jean de la Vallée Poussin a další).

1 Mnohočleny a algebraické rovnice

Fakt. Každou soustavu n lineárních ODR řádů n i lze eliminací převést ekvivalentně na jednu lineární ODR

VIII. Primitivní funkce a Riemannův integrál

Matematika 3. Úloha 1. Úloha 2. Úloha 3

Diferenční rovnice. 20. prosince Motivace 1

Matematika 5 FSV UK, ZS Miroslav Zelený

6. Lineární ODR n-tého řádu

postaveny výhradně na syntaktické bázi: jazyk logiky neinterpretujeme, provádíme s ním pouze syntaktické manipulace důkazy

Učební texty k státní bakalářské zkoušce Matematika Diferenciální rovnice. študenti MFF 15. augusta 2008

SPECIÁLNÍCH PRIMITIVNÍCH FUNKCÍ INTEGRACE RACIONÁLNÍCH FUNKCÍ

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem

19 Hilbertovy prostory

Vlastní čísla a vlastní vektory

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

z = a bi. z + v = (a + bi) + (c + di) = (a + c) + (b + d)i. z v = (a + bi) (c + di) = (a c) + (b d)i. z v = (a + bi) (c + di) = (ac bd) + (bc + ad)i.

Predikátová logika. Teoretická informatika Tomáš Foltýnek

Logický důsledek. Petr Kuchyňka

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

2. Složitost, grafové algoritmy (zapsal Martin Koutecký)

Transkript:

, 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 (ϕ ϕ) ( ϕ) 2 Původ notace: John Warner Backus a Peter Naur pro popis syntaxe jazyka Algol 60. Pravidla stejné vyjadřovací schopnosti: hindský gramatik Pāṇini (cca 6. století př.n.l.) pro popis sanskrtu. První formální popis přirozeného jazyka: 3 959 veršů díla Astādhyāyī. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 2/19

Jiné zápisy BNF nebo a tt ϕ 1 ϕ 2 (ϕ 1 ϕ 2 ) ϕ ( ϕ) a (atom) tt (true) ϕ 1 ϕ 2 (ϕ 1 ϕ 2 ) (and) ϕ ( ϕ) (not) Axiomy: (atom), (true). Deduktivní pravidla: (and), (not). Syntaktický strom (Parsing Tree) a (atom) b (atom) (and) (a b) ( (a b)) (not) Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 3/19

Jazyk generovaný gramatikou Abeceda: Σ = At {tt,,, (, )}. Množina F všech formuĺı je F Σ. F je induktivně generovaná gramatikou (atom), (true), (and), (not). Pro každé ϕ Σ platí ϕ F iff existuje parsing tree (dané gramatiky ). Z toho plyne další indukční princip! Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 4/19

Příklad Pro každé ϕ F platí: ϕ má stejný počet pravých a levých závorek. Řešení: 1 Tvrzení platí pro závěr každého z axiomů (atom), (true). 2 Pro pravidlo (and): Jestliže tvrzení platí pro každý předpoklad pravidla (and), pak tvrzení platí i pro závěr pravidla (and). 3 Pro pravidlo (not): Jestliže tvrzení platí pro každý předpoklad pravidla (not), pak tvrzení platí i pro závěr pravidla (not). Podle principu strukturální indukce jsme hotovi. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 5/19

Příklad Pro každé ϕ F platí: ϕ má stejný počet pravých a levých závorek. Řešení: 1 Tvrzení platí pro závěr každého z axiomů (atom), (true). 2 Pro pravidlo (and): Jestliže tvrzení platí pro každý předpoklad pravidla (and), pak tvrzení platí i pro závěr pravidla (and). 3 Pro pravidlo (not): Jestliže tvrzení platí pro každý předpoklad pravidla (not), pak tvrzení platí i pro závěr pravidla (not). Podle principu strukturální indukce jsme hotovi. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 5/19

Princip strukturální indukce At Σ je libovolná konečná abeceda. At G je konečná sada odvozovacích pravidel, která induktivně zadává množinu slov L Σ. At A je množina všech axiomů z G. At D je množina všech deduktivních pravidel z G. At V je nějaká vlastnost slov nad abecedou Σ. K tomu, abychom ukázali, že každé slovo v množině L má vlastnost V, stačí ukázat: a 1 Základní krok: Závěr každého axiomu z množiny A má vlastnost V. 2 Indukční krok: Pro každou instanci libovolného deduktivního pravidla v množině D platí: Jestliže všechny předpoklady pravidla mají vlastnost V, potom i závěr tohoto pravidla má vlastnost V. a Tomu se říká: Vlastnost V je invariantní na průchod gramatikou G. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 6/19

Platí: 1 Jestliže platí (silný nebo slabý) princip indukce, platí i princip strukturální indukce. 2 Pro každou neprázdnou abecedu Σ platí: existuje množina M Σ, kterou nelze zadat induktivně. Další poznatky: skripta a sbírka řešených příkladů. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 7/19

Platí: 1 Jestliže platí (silný nebo slabý) princip indukce, platí i princip strukturální indukce. 2 Pro každou neprázdnou abecedu Σ platí: existuje množina M Σ, kterou nelze zadat induktivně. Další poznatky: skripta a sbírka řešených příkladů. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 7/19

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 + 1) = 1 + 4 P(n), n 1. Čili: 1 P(n + 1) 4 P(n) = 1, n 1 (rekurentní rovnice). 2 P(1) = 1 (počáteční podmínka). Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 8/19

Příklad (složitost algoritmu Bubblesort) Označte C(n) počet porovnání v segmentu (pseudo)kódu for i:=1 to n for j:= i+1 to n if A[i] > A[j] then swap(a[i],a[j]) endif endfor endfor Potom platí: n 1 C(n) = (n 1) + (n 2) + + 1 + 0 = k, n 1. Tedy C(1) = 0, C(n + 1) = C(n) + n, n 1. k=0 Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 9/19

Definice Lineární rekurentní rovnice k-tého řádu s konstantními koeficienty je zápis a k X (n + k) + a k 1 X (n + k 1) + + a 0 X (n) = f (n) kde a k 0. Terminologie: Koeficienty: (reálná nebo komplexní) čísla a k, a k 1,..., a 0 Pravá strana: posloupnost f (n) Příslušná homogenní rovnice: a k X (n + k) + a k 1 X (n + k 1) + + a 0 X (n) = 0 Charakteristická rovnice: a k λ k + a k 1 λ k 1 + + a 0 = 0 Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 10/19

Kompletní řešení homogenní rovnice 1 Vyřešíme charakteristickou rovnici a k λ k + a k 1 λ k 1 + + a 0 = 0. Kořeny: λ 1 (násobnost k 1 ),..., λ r (násobnost k r ). 2 Kořen λ 1 násobnosti k 1 1 přidá k 1 různých posloupností do fundamentálního systému: λ n 1, n λ n 1, n 2 λ n 1,..., n k 1 1 λ n 1 (analogicky přispějí kořeny λ 2,..., λ r ). 3 Fundamentální systém má celkově k různých posloupností, protože k 1 + k 2 + + k r = k. 4 Kompletní řešení homogenní rovnice je lineární kombinace fundamentálního systému. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 11/19

Kompletní řešení homogenní rovnice 1 Vyřešíme charakteristickou rovnici a k λ k + a k 1 λ k 1 + + a 0 = 0. Kořeny: λ 1 (násobnost k 1 ),..., λ r (násobnost k r ). 2 Kořen λ 1 násobnosti k 1 1 přidá k 1 různých posloupností do fundamentálního systému: λ n 1, n λ n 1, n 2 λ n 1,..., n k 1 1 λ n 1 (analogicky přispějí kořeny λ 2,..., λ r ). 3 Fundamentální systém má celkově k různých posloupností, protože k 1 + k 2 + + k r = k. 4 Kompletní řešení homogenní rovnice je lineární kombinace fundamentálního systému. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 11/19

Kompletní řešení homogenní rovnice 1 Vyřešíme charakteristickou rovnici a k λ k + a k 1 λ k 1 + + a 0 = 0. Kořeny: λ 1 (násobnost k 1 ),..., λ r (násobnost k r ). 2 Kořen λ 1 násobnosti k 1 1 přidá k 1 různých posloupností do fundamentálního systému: λ n 1, n λ n 1, n 2 λ n 1,..., n k 1 1 λ n 1 (analogicky přispějí kořeny λ 2,..., λ r ). 3 Fundamentální systém má celkově k různých posloupností, protože k 1 + k 2 + + k r = k. 4 Kompletní řešení homogenní rovnice je lineární kombinace fundamentálního systému. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 11/19

Kompletní řešení homogenní rovnice 1 Vyřešíme charakteristickou rovnici a k λ k + a k 1 λ k 1 + + a 0 = 0. Kořeny: λ 1 (násobnost k 1 ),..., λ r (násobnost k r ). 2 Kořen λ 1 násobnosti k 1 1 přidá k 1 různých posloupností do fundamentálního systému: λ n 1, n λ n 1, n 2 λ n 1,..., n k 1 1 λ n 1 (analogicky přispějí kořeny λ 2,..., λ r ). 3 Fundamentální systém má celkově k různých posloupností, protože k 1 + k 2 + + k r = k. 4 Kompletní řešení homogenní rovnice je lineární kombinace fundamentálního systému. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 11/19

Kompletní řešení homogenní rovnice 1 Vyřešíme charakteristickou rovnici a k λ k + a k 1 λ k 1 + + a 0 = 0. Kořeny: λ 1 (násobnost k 1 ),..., λ r (násobnost k r ). 2 Kořen λ 1 násobnosti k 1 1 přidá k 1 různých posloupností do fundamentálního systému: λ n 1, n λ n 1, n 2 λ n 1,..., n k 1 1 λ n 1 (analogicky přispějí kořeny λ 2,..., λ r ). 3 Fundamentální systém má celkově k různých posloupností, protože k 1 + k 2 + + k r = k. 4 Kompletní řešení homogenní rovnice je lineární kombinace fundamentálního systému. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 11/19

Odhad partikulárního řešení pro pravou stranu A n P(n), kde A je číslo a P(n) je polynom 1 d je násobnost A jako kořene charakteristické rovnice. (Násobnost 0 znamená: A není kořen). 2 Odhad partikulárního řešení: n d A n p(n), kde p(n) je polynom stejného stupně jako P(n). 3 Koeficienty polynomu p(n) získáme z požadavku, že n d A n p(n) má řešit danou nehomogenní rovnici. Pro složitější pravou stranu lze použít princip superposice. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 12/19

Odhad partikulárního řešení pro pravou stranu A n P(n), kde A je číslo a P(n) je polynom 1 d je násobnost A jako kořene charakteristické rovnice. (Násobnost 0 znamená: A není kořen). 2 Odhad partikulárního řešení: n d A n p(n), kde p(n) je polynom stejného stupně jako P(n). 3 Koeficienty polynomu p(n) získáme z požadavku, že n d A n p(n) má řešit danou nehomogenní rovnici. Pro složitější pravou stranu lze použít princip superposice. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 12/19

Odhad partikulárního řešení pro pravou stranu A n P(n), kde A je číslo a P(n) je polynom 1 d je násobnost A jako kořene charakteristické rovnice. (Násobnost 0 znamená: A není kořen). 2 Odhad partikulárního řešení: n d A n p(n), kde p(n) je polynom stejného stupně jako P(n). 3 Koeficienty polynomu p(n) získáme z požadavku, že n d A n p(n) má řešit danou nehomogenní rovnici. Pro složitější pravou stranu lze použít princip superposice. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 12/19

Odhad partikulárního řešení pro pravou stranu A n P(n), kde A je číslo a P(n) je polynom 1 d je násobnost A jako kořene charakteristické rovnice. (Násobnost 0 znamená: A není kořen). 2 Odhad partikulárního řešení: n d A n p(n), kde p(n) je polynom stejného stupně jako P(n). 3 Koeficienty polynomu p(n) získáme z požadavku, že n d A n p(n) má řešit danou nehomogenní rovnici. Pro složitější pravou stranu lze použít princip superposice. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 12/19

Odhad partikulárního řešení pro pravou stranu A n P(n), kde A je číslo a P(n) je polynom 1 d je násobnost A jako kořene charakteristické rovnice. (Násobnost 0 znamená: A není kořen). 2 Odhad partikulárního řešení: n d A n p(n), kde p(n) je polynom stejného stupně jako P(n). 3 Koeficienty polynomu p(n) získáme z požadavku, že n d A n p(n) má řešit danou nehomogenní rovnici. Pro složitější pravou stranu lze použít princip superposice. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 12/19

Kompletní řešení nehomogenní rovnice 1 Sečteme kompletní řešení homogenní rovnice a partikulární řešení. 2 Jsou-li zadány počáteční podmínky: nakonec určíme koeficienty lineární kombinace fundamentálního systému. Shrnuto: 1 Silná analogie s lineárními diferenciálními rovnicemi. 2 Diferenční a sumační počet, viz např. J. Kaucký, Kombinatorické identity, Veda, Bratislava, 1975 W. G. Kelley a A. C. Peterson, Difference Equations: An Introduction with Applications, Academic Press Inc., New York, 1991 Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 13/19

Kompletní řešení nehomogenní rovnice 1 Sečteme kompletní řešení homogenní rovnice a partikulární řešení. 2 Jsou-li zadány počáteční podmínky: nakonec určíme koeficienty lineární kombinace fundamentálního systému. Shrnuto: 1 Silná analogie s lineárními diferenciálními rovnicemi. 2 Diferenční a sumační počet, viz např. J. Kaucký, Kombinatorické identity, Veda, Bratislava, 1975 W. G. Kelley a A. C. Peterson, Difference Equations: An Introduction with Applications, Academic Press Inc., New York, 1991 Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 13/19

Kompletní řešení nehomogenní rovnice 1 Sečteme kompletní řešení homogenní rovnice a partikulární řešení. 2 Jsou-li zadány počáteční podmínky: nakonec určíme koeficienty lineární kombinace fundamentálního systému. Shrnuto: 1 Silná analogie s lineárními diferenciálními rovnicemi. 2 Diferenční a sumační počet, viz např. J. Kaucký, Kombinatorické identity, Veda, Bratislava, 1975 W. G. Kelley a A. C. Peterson, Difference Equations: An Introduction with Applications, Academic Press Inc., New York, 1991 Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 13/19

Kompletní řešení nehomogenní rovnice 1 Sečteme kompletní řešení homogenní rovnice a partikulární řešení. 2 Jsou-li zadány počáteční podmínky: nakonec určíme koeficienty lineární kombinace fundamentálního systému. Shrnuto: 1 Silná analogie s lineárními diferenciálními rovnicemi. 2 Diferenční a sumační počet, viz např. J. Kaucký, Kombinatorické identity, Veda, Bratislava, 1975 W. G. Kelley a A. C. Peterson, Difference Equations: An Introduction with Applications, Academic Press Inc., New York, 1991 Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 13/19

Definice (O-notace) At f, g : N R jsou funkce. Řekneme, že f O(g) (někdy i f (n) O(g(n))) (čteme: f je třídy velké O g), a když existují C a n 0 tak, že platí f (n) C g(n), pro všechna n n 0 a Zavedl Paul Bachmann v roce 1892. Příklady 1 f O(f ) platí vždy. 2 6n 3 127n 2 + πn O(n 3 ). 3 3 n / O(n p ), pro každé p N. 4 n! O(n n ). Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 14/19

Věta At f, g : N R jsou funkce a at limita f (n) lim n + g(n) existuje a je konečná. Pak f O(g). Pozor! Obrácení této věty neplatí. Pro f (n) = sin n, g(n) = 1 platí f O(g), ale lim n + f (n) g(n) neexistuje. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 15/19

Hierarchie (asymptotické) složitosti 1 Polynomiální: například O(n 4 ). Slogan: polynomiálně složité algoritmy jsou rychlé. Příklad: Bubblesort je O(n 2 ). 2 Exponenciální: například O(2 n ). Slogan: exponenciálně složité algoritmy jsou pomalé. Příklad: test prvočíselnosti postupným dělením (Eratosthenovo síto). 3 A řada dalších tříd složitosti... Viz například T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms, MIT Press, 2001 Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 16/19

Strategie Divide and Conquer Problém velikosti n je rozdělen na a podproblémů velikosti n b a při dělení je spotřebován čas f (n). Celkový čas T (n) je pak dán vztahem T (n) = a T ( n ) + f (n), n 1. b Příklad (Merge-Sort) Vstup: pole čísel x = x[1],..., x[n]. Výstup: setříděné pole čísel x. { c pro n = 1 Složitost: T (n) = 2T (n/2) + cn pro n > 1. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 17/19

Rovnice Divide and Conquer T (n) = a T ( n ) + f (n), n 1, b kde a 0, b > 0 jsou přirozená čísla. Pokud n = b k, pak platí T (n) = a T ( n b ) + f (n) = a 2 T ( n b 2 ) + a f (n b ) + f (n) = a 3 T ( n b 3 ) + a2 f ( n b 2 ) + a f (n b ) + f (n). = a k T ( n k 1 b k ) + a j f ( n b j ) j=0 Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 18/19

Divide and Conquer, pokrač. Pokud n = b k, platí Věta k 1 T (n) = a k T (1) + a j f ( n b j ) At T : N R je rostoucí funkce, která pro všechna n dělitelná přirozeným číslem b 2 splňuje rekurentní rovnici { c pro n = 1 T (n) = a T (n/b) + cn pro n > 1., j=0 kde a 1, c > 0 jsou reálná čísla. Pak platí: T (n) O(n log b a ), když a > b, T (n) O(n log n), když a = b. Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 19/19