Rekurentní rovnice, strukturální indukce

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

Principy indukce a rekurentní rovnice

Principy indukce a rekursivní algoritmy

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.

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

Výroková logika syntaxe a sémantika

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

Rezoluce ve výrokové logice

Základy elementární teorie čísel

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

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

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

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

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

Diferenciální rovnice 3

Relace a kongruence modulo

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

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

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

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

Soustavy lineárních rovnic

Základy elementární teorie čísel

Časová složitost / Time complexity

Základy logiky a teorie množin

Přijímací zkouška - matematika

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

9.5. Soustavy diferenciálních rovnic

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

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

1 Polynomiální interpolace

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

Převedení okrajové úlohy na sled

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

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

Rezoluce v predikátové logice

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

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

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ší).

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

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

PŘEDNÁŠKA 2 POSLOUPNOSTI

Unbounded Model Checking

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.

ALGORITMY A DATOVÉ STRUKTURY

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

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

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

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

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

Základy matematické analýzy

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

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

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.

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

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

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

Lineární algebra : Metrická geometrie

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

V každém kroku se a + b zmenší o min(a, b), tedy vždy alespoň o 1. Jestliže jsme na začátku dostali 2

Matematika 4 FSV UK, LS Miroslav Zelený

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

Cyklické grupy a grupy permutací

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

Hlubší věty o počítání modulo

Matematická logika. Miroslav Kolařík

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

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

Logický důsledek. Petr Kuchyňka

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

9.4. Rovnice se speciální pravou stranou

Lineární algebra : Polynomy

Výroková logika. Teoretická informatika Tomáš Foltýnek

Rezoluce v predikátové logice

1 Diference a diferenční rovnice

Pomocný text. Polynomy

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

Matematické důkazy Struktura matematiky a typy důkazů

Usuzování za neurčitosti

Diskrétní matematika

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

Algoritmy I, složitost

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

Základy teorie množin

Algoritmizace Dynamické programování. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

Subexponenciální algoritmus pro diskrétní logaritmus

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

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

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

Komplexní analýza. Holomorfní funkce. Martin Bohata. Katedra matematiky FEL ČVUT v Praze

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

Predikátová logika dokončení

Vztah teorie vyčíslitelnosti a teorie složitosti. IB102 Automaty, gramatiky a složitost, /31

Diferenciální rovnice

Limita funkce. FIT ČVUT v Praze. (FIT) Limita funkce 3.týden 1 / 39

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

Aritmetické funkce. Pepa Svoboda

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

19 Hilbertovy prostory

10 Přednáška ze

Transkript:

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 + 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: A7B01MCS 26. září 2011: 2/20

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: A7B01MCS 26. září 2011: 3/20

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: A7B01MCS 26. září 2011: 4/20

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: A7B01MCS 26. září 2011: 5/20

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: A7B01MCS 26. září 2011: 6/20

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: A7B01MCS 26. září 2011: 7/20

Definice (O-notace) Ať 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: A7B01MCS 26. září 2011: 8/20

Věta Ať f, g : N R jsou funkce a ať 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: A7B01MCS 26. září 2011: 9/20

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: A7B01MCS 26. září 2011: 10/20

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 (Binary Search) Vstup: setříděné pole x = x[1],..., x[n], a. Výstup:?a x. Složitost: T (n) = T ( n 2 ) + 2, n sudé. Jiří Velebil: A7B01MCS 26. září 2011: 11/20

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: A7B01MCS 26. září 2011: 12/20

Divide and Conquer, pokrač. Pokud n = b k, platí Věta (Důkaz na cvičení) k 1 T (n) = a k T (1) + a j f ( n b j ) Ať T : N R je rostoucí funkce, která pro všechna n dělitelná přirozeným číslem b 2 splňuje rekurentní rovnici j=0 T (n) = a T ( n b ) + c, kde a 1, c > 0 jsou reálná čísla. Pak platí: T (n) O(n log b a ), když a > 1, T (n) O(log n), když a = 1. Jiří Velebil: A7B01MCS 26. září 2011: 13/20

Věta (Důkaz na cvičení) Ať T : N R je rostoucí funkce, která pro všechna n dělitelná přirozeným číslem b 2 splňuje rekurentní rovnici T (n) = a T ( n b ) + cn, kde a 1, c > 0 jsou reálná čísla. Pak platí: 1 T (n) O(n), když a < b. 2 T (n) O(n log n), když a = b. 3 T (n) O(n log b a ), když a > b. Více, viz Master Theorem, například v knize T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms, MIT Press, 2001 Jiří Velebil: A7B01MCS 26. září 2011: 14/20

Backusova-Naurova forma Například syntaxe formulí 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: A7B01MCS 26. září 2011: 15/20

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: A7B01MCS 26. září 2011: 16/20

Jazyk generovaný gramatikou Abeceda: Σ = At {tt,,, (, )}. Množina F všech formulí 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: A7B01MCS 26. září 2011: 17/20

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: A7B01MCS 26. září 2011: 18/20

Princip strukturální indukce Ať Σ je libovolná konečná abeceda. Ať G je konečná sada odvozovacích pravidel, která induktivně zadává množinu slov L Σ. Ať A je množina všech axiomů z G. Ať D je množina všech deduktivních pravidel z G. Ať 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: A7B01MCS 26. září 2011: 19/20

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: A7B01MCS 26. září 2011: 20/20