Další partie teorie složitosti. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

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

Download "Další partie teorie složitosti. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51"

Transkript

1 Další partie teorie složitosti M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 1/ 51

2 Řešení těžkých problémů Pro mnoho důležitých problémů nejsou známy efektivní algoritmy. Řada těchto problémů je například NP-úplných. Je možné, že pro tyto problémy ani polynomiální algoritmy neexistují amytozatímjenomneumímedokázat. Přesto potřebujeme tyto problémy řešit. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 / 51

3 Řešení těžkých problémů Pokud chceme řešit nějaký problém, tak v ideálním případě chceme použít k jeho řešení algoritmus, který: Bude polynomiální, tj. rychle skončí pro libovolnou vstupní instanci. Bude korektní, tj. pro libovolnou vstupní instanci najde správnou odpověď. Pokud nevíme, jak takový algoritmus najít, musíme trochu slevit ze svých požadavků. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 3/ 51

4 Řešení těžkých problémů Obtížné instance versus typické instance Při studiu složitosti problémů zkoumáme většinou složitost v nejhorším případě. Instance, kvůli kterým je problém těžký, mohou být dost odlišné od typických instancí,prokteréchcemeproblémřešit. Při podrobnějším zkoumání problému můžeme nalézt určitou podmnožinu instancí, pro které je možné problém rychle řešit. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 4/ 51

5 Řešení těžkých problémů Problém batohu Vstup:Číslaa 1,a,...,a m ačíslos. Otázka:Existujepodmnožinamnožinyčísela 1,a,...,a m taková,že součetčíselvtétopodmnožinějes? Poznámka: Jako velikost instance bereme celkový počet bitů v zápisu čísela 1,a,...,a m as. Tento problém je NP-úplný. Neumíme ho v rozumném čase řešit, pokud číslavinstancibudou velká (např.1000-bitová). Pokudjevšakhodnotasmalá(např.do ,tj.asi0bitů),je možné tento problém vyřešit během několika sekund i pro relativně velké hodnotym(např.m=10000). M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 5/ 51

6 Řešení těžkých problémů Problém HORN-SAT Vstup: Booleovská formule ϕ v KNF obsahující pouze Hornovy klauzule. Otázka: Je ϕ splnitelná? Problém HORN-SAT se dá(narozdíl od obecného problému SAT) řešit v polynomiálním čase. Poznámka: Hornova klauzule je klauzule, ve které se nachází nejvýše jeden pozitivní literál. Například( x 1 x x 3 x 4 x 5 )jehornovaklauzule. Všimněte si, že tato klauzule je ekvivalentní formuli (x 1 x x 3 x 4 ) x 5 M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 6/ 51

7 Řešení těžkých problémů Následující problém je rovněž možné řešit v polynomiálním čase: Problém -SAT Vstup: Booleovská formule ϕ v KNF, kde každá klauzule obsahuje nejvýše literály. Otázka: Je ϕ splnitelná? Příklad: (x 1 x ) ( x 1 x ) ( x x 3 ) (x 3 x 4 ) (x x 4 ) M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 7/ 51

8 Řešení těžkých problémů Exponenciální algoritmy I exponenciální algoritmus může být prakticky použitelný, pokud: Instance, pro které problém chceme řešit, jsou poměrně malé. Složitostjesiceexponenciální,alerostepomalejinež n. Algoritmus je co nejoptimálněji naprogramován. Příklad: f(n)=(1.) n pron=100jef(n) f(n)=10 n pron=300jef(n) M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 8/ 51

9 Řešení těžkých problémů Menší požadavky na korektnost Randomizované algoritmy algoritmy, které využívají při výpočtu generátor náhodných čísel. Existuje určitá nenulová pravděpodobnost, že algoritmus vrátí chybný výsledek. Prolibovolněmalé ε >0jsmevšakschopnizaručit,že pravděpodobnost chyby není větší než ε. Aproximační algoritmy používají se pro řešení optimalizačních problémů. U těchto algoritmů není zaručeno, že naleznou optimální řešení, ale je zaručeno, že naleznou řešení, které nebude o moc horší než optimální řešení(např. nanejvýš horší). M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 9/ 51

10 Testování prvočíselnosti Prvočíselnost Vstup: Přirozené číslo p. Otázka: Je p prvočíslo? Pro malá p(např.do10 1 )stačívyzkoušetčíslaoddo p,zda některéznichdělíp. Tento problém má velký význam v kryptografii, kde ho potřebujeme řešit pro čísla, která mají délku několik tisíc bitů. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

11 Testování prvočíselnosti To, zda je možné testovat prvočíselnost v polynomiálním čase, byl dlouho otevřený problém. Vroce00sepodařilonajítpolynomiálníalgoritmussesložitostíO(n 1 ) (N. Saxona, M. Agrawal, N. Kayal). PozdějisehopodařilozlepšitnaO(n 8 ),alepropraktickéúčelyjestále nepoužitelný. VpraxisepoužívajírandomizovanéalgoritmysesložitostíO(n 3 ): Miller-Rabin(1976) Solovay-Strassen(1977) Poznámka: n zde označuje počet bitů čísla p. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

12 Testování prvočíselnosti S problémem testování prvočíselnosti úzce souvisí následující problém. Faktorizace Vstup: Přirozené číslo p. Výstup: Rozklad čísla p na prvočísla. Na rozdíl od prvočíselnosti není pro problém faktorizace znám žádný efektivní algoritmus, a to ani randomizovaný. Jedna z používaných šifer je tzv. RSA kryptosystém, který je založen na tom, že: Umíme rychle najít velká prvočísla(a rychle je mezi sebou vynásobit). Není známo, jak v rozumném čase z tohoto součinu zjistit původní prvočísla. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 1/ 51

13 Testování prvočíselnosti Poznámka: Pokud umíme rychle testovat, zda je dané číslo prvočíslem, není problém velké prvočíslo náhodně vygenerovat, neboť je známo, že prvočíslajsoumeziostatnímičíslyrozmístěnapoměrně hustě. π(n) početprvočíselvintervalu1,,...,n Je dokázáno, že lim n π(n) n/lnn =1 nebolijinakřečeno,mezičíslyod1donjezhruban/lnnprvočísel. Pokud tedy chceme náhodně vygenerovat k-bitové prvočíslo, stačí zhruba kpokusů. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

14 Randomizované algoritmy Randomizovaný algoritmus: používá během výpočtu generátor náhodných čísel může pro tentýž vstup skončit s různým výsledkem existuje určitá pravděpodobnost, že vrátí chybný výsledek Aby měl randomizovaný algoritmus praktický smysl, musíme mít možnost regulovat pravděpodobnost chyby: Prolibovolněmalé ε >0musímebýtschopnizaručit,že pravděpodobnost chyby nebude větší než ε. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

15 Randomizované algoritmy Vezměme si například algoritmus Miller-Rabin pro testování prvočíselnosti. Prolibovolnénvracíbuďodpověď Prvočíslo neboodpověď Složené. Pokudnjeprvočíslo,vrátívždyodpověď Prvočíslo. Pokud n je číslo složené, je pravděpodobnost toho, že vrátí odpověď Složené nejméně50%. Můževšakvrátit(chybnou)odpověď Prvočíslo. Algoritmus můžeme spouštět opakovaně. Výsledek při dalším spuštění je nezávislý na výsledcích z předchozích spuštění. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

16 Randomizované algoritmy Řekněme, že algoritmus spustíme m krát(pro tentýž vstup n). Pokudalespoňjednoudostanemeodpověď Složené,pakvíme sjistotou,ženječíslosložené. Pokudpokaždédostanemeodpověď Prvočíslo,pak pravděpodobnost toho, že n není prvočíslo je maximálně ( ) 1 m = m Například pro m = 100 je pravděpodobnost chyby zanedbatelně malá. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

17 Randomizované algoritmy Poznámka: Lze například odvodit, že pravděpodobnost toho, že počítač budezasaženběhemdanémikrosekundymeteoritem,jenejméně 100 za předpokladu,žekaždých1000letjemeteoritemzničenoalespoň100m zemského povrchu. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

18 Randomizované algoritmy Randomizované algoritmy jsou typicky založeny na hledání svědků (witness),kteří dosvědčí určitouodpověďvydanoualgoritmem. Tyto svědky vybíráme z množiny potenciálních svědků: Náhodně vybereme nějakého potenciálního svědka. Ověříme, zda se jedná o skutečného svědka, a podle toho vydáme odpověď. Například v algoritmu Miller-Rabin hledáme svědky složenosti čísla n. Vybírámejezmnožinyčísel {,3,...,n 1}: Pokud n je prvočíslo, žádní svědci složenosti neexistují. Pokud n není prvočíslo, je zaručeno, že alespoň polovina čísel vmnožině {,3,...,n 1}jsousvědcisloženostin. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

19 Testování prvočíselnosti Malá Fermatova věta: Pokudnjeprvočíslo,pakprokaždéazmnožiny {1,,...,n 1}platí a n 1 1 (modn) Malou Fermatovu větu lze použít k testování prvočíselnosti(tzv. Fermatův test): Prodanénzvolímenějakéa {,3,...,n 1}. Pokuda n 1 1(modn),paknurčitěneníprvočíslo. Pokuda n 1 1(modn),paknjemožnáprvočíslo. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

20 Testování prvočíselnosti Je překvapivé, že tato procedura vrací chybný výsledek jen poměrně zřídka: Proa=an <10000jejenhodnot,prokterédostaneme chybnou odpověď. Proa=an sepravděpodobnosttoho,žepronáhodně vybrané n dostaneme chybnou odpověď, blíží nule. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 0/ 51

21 Testování prvočíselnosti Fermatův test není 100% spolehlivý. Existují složená čísla, která splňují podmínkua n 1 1(modn)provšechnaa {1,,...,n 1}nesoudělná sn. Tato čísla se nazývají Carmichaelova čísla a jsou extrémně vzácná. Napříkladmezičíslydo10 8 existujejen55carmichaelovýchčísel. Prvních 15 Carmichaelových čísel: 561, 1105, 179, 465, 81, 6601, 8911, 10585, 15841, 9341, 41041, 46657, 5633, 6745, M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 1/ 51

22 Umocňování v modulární aritmetice Problém Vstup: Přirozená čísla a, b, n. Výstup:Hodnotaa b modn. Využijemetoho,žea i =a i a i aa i+1 =a i a i a. Modular-Exponentiation(a, b, n) 1 d 1 b k,b k 1,...,b 0 jebinárníreprezentaceb 3 fori kdownto0 4 dod (d d)modn 5 ifb i =1 6 thend (d a)modn 7 returnd M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 / 51

23 Testování prvočíselnosti(miller-rabin) Na umocňování je založen i následující algoritmus pro testování prvočíselnosti: Miller-Rabin(n,s) 1 forj 1tos doa Random(,n 1) 3 if Witness(a, n) 4 thenreturn Složené njezcelajistěsložené. 5 return Prvočíslo njesvelkoupravděpodobnostíprvočíslo. Využívá malou Fermatovu větu a toho, že platí následující tvrzení: Jestližepjelichéprvočíslo,pakrovnicex 1(modp)máprávědvě řešení:x=1ax=p 1. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 3/ 51

24 Testování prvočíselnosti(miller-rabin) Witness(a, n) 1 d 1 b k,b k 1,...,b 0 jebinárníreprezentacen 1 3 fori kdownto0 4 dox d 5 d (d d)modn 6 ifd=1andx 1andx n 1 7 then return true 8 ifb i =1 9 thend (d a)modn 10 ifd 1 11 then return true 1 returnfalse M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 4/ 51

25 Randomizované algoritmy Množina potenciálních svědků bývá obrovská většinou exponenciálně velká Poznámka: Kdyby byla polynomiálně velká mohli bychom systematicky projít všechny potenciální svědky a nepotřebovali bychom randomizovaný algoritmus. Musí být zaručeno, že pokud nějací skuteční svědci existují, pak jich je dostatečně mnoho, čímž je zaručeno, že pravděpodobnost, že na nějakého svědka narazíme, je dostatečně vysoká. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 5/ 51

26 Aproximační algoritmy Mnoho důležitých problémů je NP-úplných. U optimalizačních problémů často nepotřebujeme nalézt nejoptimálnější řešení, ale stačí nám řešení, kteréje dostatečnědobré. Algoritmům,kterévracítakováto dostatečnědobrá řešení,seříká aproximační algoritmy. Poznámka: Optimalizační problém je problém, kde pro každý vstup w mámedefinovánumnožinus w všechpřípustnýchřešeníafunkci c:s w R +. Úkolemjenajíttakovéx S w,prokteréjehodnotac(x)minimální (resp. maximální). Příklady: Hledání nejkratší cesty v grafu, určování maximálního toku v síti. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 6/ 51

27 Aproximační algoritmy Řekněme, že řešíme problém, kde je úkolem hodnotu c(x) minimalizovat. Řekněme, že pro vstup w vydá algoritmus řešení x, přičemž optimálním řešenímjex.zjevněplatíc(x) c(x ). Jako aproximační poměr daného algoritmu označujeme funkci ρ(n), která každémunpřiřazujemaximálníhodnotupoměruc(x)/c(x )provšechny vstupy velikosti n. Poznámka: Naopak u algoritmu, kde je cílem hodnotu c(x) maximalizovat,bychomuvažovalipoměrc(x )/c(x). M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 7/ 51

28 Aproximační algoritmy O algoritmu, který dosahuje aproximačního poměru ρ(n), říkáme, že je to ρ(n)-aproximační algoritmus. Pro řadu problémů jsou známy polynomiální algoritmy, kde je hodnota ρ(n) omezena: malou konstantou, např. -aproximační algoritmy, nebo pomalu rostoucí funkcí, např. Θ(log n)-aproximační algoritmy. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 8/ 51

29 Vrcholové pokrytí grafu Mějme neorientovaný graf G =(V, E). Vrcholové pokrytí(vertex-cover) grafugjemnožinac Vtaková,žeprokaždouhranu(u,v) Eplatí, žebuďu Cnebov C. Úkolem je najít pro zadaný graf minimální vrcholové pokrytí. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

30 Vrcholové pokrytí grafu Mějme neorientovaný graf G =(V, E). Vrcholové pokrytí(vertex-cover) grafugjemnožinac Vtaková,žeprokaždouhranu(u,v) Eplatí, žebuďu Cnebov C. Úkolem je najít pro zadaný graf minimální vrcholové pokrytí. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

31 Vrcholové pokrytí grafu Máme tedy vyřešit následující problém: Minimální vrcholové pokrytí grafu(vertex cover) Vstup:NeorientovanýgrafG=(V,E). Výstup: Minimalní množina C(C V) tvořící vrcholové pokrytí grafug. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

32 Vrcholové pokrytí grafu Máme tedy vyřešit následující problém: Minimální vrcholové pokrytí grafu(vertex cover) Vstup:NeorientovanýgrafG=(V,E). Výstup: Minimalní množina C(C V) tvořící vrcholové pokrytí grafug. Následující(rozhodovací) varianta tohoto problému je NP-úplná: Vrcholové pokrytí(vertex cover) Vstup:NeorientovanýgrafG=(V,E)apřirozenéčíslok. Otázka: Existuje vrcholové pokrytí grafu G tvořené k vrcholy? Tento problém tedy není možné řešit v polynomiálním čase(leda by platilo PTIME=NPTIME). M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

33 Vrcholové pokrytí grafu Máme tedy vyřešit následující problém: Minimální vrcholové pokrytí grafu(vertex cover) Vstup:NeorientovanýgrafG=(V,E). Výstup: Minimalní množina C(C V) tvořící vrcholové pokrytí grafug. Existuje však -aproximační algoritmus řešící tento problém: Algoritmus najde pro zadaný graf G vrcholové pokrytí C takové, že C k kde k je velikost minimálního vrcholového pokrytí grafu G. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

34 Vrcholové pokrytí grafu Approx-Vertex-Cover(G) 1 C E E 3 whilee 4 dovyberlibovolnouhranu(u,v)ze 5 C C {u,v} 6 odstraňze hranyincidentnísunebov 7 returnc M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

35 Vrcholové pokrytí grafu Approx-Vertex-Cover(G) 1 C E E 3 whilee 4 dovyberlibovolnouhranu(u,v)ze 5 C C {u,v} 6 odstraňze hranyincidentnísunebov 7 returnc M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

36 Vrcholové pokrytí grafu Approx-Vertex-Cover(G) 1 C E E 3 whilee 4 dovyberlibovolnouhranu(u,v)ze 5 C C {u,v} 6 odstraňze hranyincidentnísunebov 7 returnc M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

37 Vrcholové pokrytí grafu Approx-Vertex-Cover(G) 1 C E E 3 whilee 4 dovyberlibovolnouhranu(u,v)ze 5 C C {u,v} 6 odstraňze hranyincidentnísunebov 7 returnc M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

38 Vrcholové pokrytí grafu Approx-Vertex-Cover(G) 1 C E E 3 whilee 4 dovyberlibovolnouhranu(u,v)ze 5 C C {u,v} 6 odstraňze hranyincidentnísunebov 7 returnc M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

39 Vrcholové pokrytí grafu Tvrzení Approx-Vertex-Cover je polynomiální -aproximační algoritmus. Důkaz: Označme A množinu všech hran vybraných v kroku 4, C vrcholové pokrytínalezenéalgoritmemac minimálnívrcholovépokrytígrafug. Jakékoliv vrcholové pokrytí musí obsahovat alespoň jeden z koncových vrcholůkaždéhranyza. ProlibovolnévrcholovépokrytíC tedyplatí A C. SpeciálněproC tedytakémusíplatit A C. Nadruhoustranu,zjevněplatí C = A. Dohromadytedydostáváme C C. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

40 Problém obchodního cestujícího(tsp) Problém obchodního cestujícího(tsp) Vstup: Množina n měst a vzdálenosti mezi nimi. Výstup: Nejkratší okružní cesta procházející všemi městy. Poznámka:Slovem okružní myslíme,žecestakončívestejnémměstě, kde začíná. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

41 Problém obchodního cestujícího(tsp) Příklad instance problému: M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

42 Problém obchodního cestujícího(tsp) Příklad instance problému: Nejkratší okružní cesta má délku 8. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

43 Problém obchodního cestujícího(tsp) Můžeme uvažovat dvě různé varianty tohoto problému: Každé město musí být navštíveno právě jednou. Města je možné navštěvovat opakovaně. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

44 Problém obchodního cestujícího(tsp) V následujícím výkladu se nám bude hodit poněkud formálnější definice problému: Na instanci problému(tj. množinu měst a vzdálenosti mezi nimi) se můžemedívatjakonaúplnýneorientovanýgrafg=(v,e) sohodnocenímhrand(kded:e N). ProlibovolnoumnožinuhranE Edefinujeme d(e )= e E d(e) ProlibovolnýcyklusHpakdefinujemed(H)=d(E ),kdee jemnožina hran ležících na cyklu H. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

45 Problém obchodního cestujícího(tsp) Problém TSP pak můžeme formulovat následovně: Problém obchodního cestujícího(tsp) Vstup:ÚplnýneorientovanýgrafG=(V,E)sohodnocenímhrand. Výstup: Cyklus H procházející všemi vrcholy grafu G takový, že hodnota d(h) je minimální možná. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

46 Problém obchodního cestujícího(tsp) Následující problém je NP-úplný(ať už je či není povoleno navštěvovat vrcholy opakovaně): Problém obchodního cestujícího(tsp) rozhodovací varianta Vstup:ÚplnýneorientovanýgrafG=(V,E)sohodnocenímhrand ačíslol. Otázka: Existuje v grafu G cyklus H procházející všemi vrcholy takový,žed(h) L? Poznámka:Nemůžemetedyočekávat,žebyproblémTSP(aťužvtéči onévariantě)bylřešitelnývpolynomiálnímčase,ledažebyplatilop=np. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

47 Problém obchodního cestujícího Pro problém TSP, kde vyžadujeme aby byl každý vrchol navštíven právě jednou, se dá dokázat následující: Věta PokudP NP,pakprožádnoukonstantu ρ 1neexistujepolynomiální ρ-aproximační algoritmus řešící problém obchodního cestujícího. Důkaz: Předpokládejme, že by pro nějaké ρ takový algoritmus existoval. Ukážeme, že pak by existoval polynomiální algoritmus pro problém Hamiltonovské kružnice. Problém Hamiltonovské kružnice je NP-úplný, nalezení polynomiálního algoritmubyznamenalo,žep=np. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

48 Problém obchodního cestujícího NechťG=(V,E)jeinstanceproblémuHamiltonovskékružnice. InstanciproblémuobchodníhocestujícíhoG =(V,E )sestrojímetak,že V =VaE obsahujevšechnymožnéhrany,kterýmpřiřadímeohodnocení { 1 pokud(u,v) E d(u,v)= ρ V +1 jinak JestližegrafGobsahujeHamiltonovskoukružnici,pakvG existuje okružní cesta délky V. JakákolivokružnícestavG,kteráobsahujehranu,kteránenívG,má délkuvětšínež ρ V. Pokud v G Hamiltonovská kružnice existuje, ρ-aproximační algoritmus musí nějakou takovou kružnici vrátit jako výslednou okružní cestu. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května 007 4/ 51

49 Problém obchodního cestujícího(tsp) Není těžké si rozmyslet, že varianta TSP kde je povoleno opakovaně navštěvovat vrcholy se dá snadno převést na variantu, kde musí být každý vrchol navštíven právě jednou: ProdanýgrafGsohodnocenímdsestrojímenovéohodnoceníd, kded (u,v)jedélkanejkratšícestyzudov Poznámka: Pro nalezení nejkratších cest mezi dvojicemi vrcholů existují rychlé polynomiální algoritmy(např. Dijkstrův, Floydův-Warshallův apod.) Grafsohodnocenímd navícsplňujetzv.trojúhelníkovounerovnost. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

50 Problém obchodního cestujícího(tsp) V grafu G s ohodnocením d je splněna trojúhelníková nerovnost, jestliže prolibovolnoutrojicijehovrcholůu,v,wplatí d(u,w) d(u,v)+d(v,w) v d(u, v) d(v, w) u d(u, w) w Tj.nejkratšícestazudowjevždypohraně(u,w)anemácenujít oklikou přesnějakýjinývrchol. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

51 Problém obchodního cestujícího(tsp) Variantu TSP, ve které se omezujeme pouze na instance, ve kterých je splněna trojúhelníková nerovnost(a kde musí být každý vrchol navštíven právě jednou), označujeme -TSP. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

52 Problém obchodního cestujícího(tsp) Variantu TSP, ve které se omezujeme pouze na instance, ve kterých je splněna trojúhelníková nerovnost(a kde musí být každý vrchol navštíven právě jednou), označujeme -TSP. Pro problém -TSP je znám 1.5-aproximační polynomiální algoritmus, tj.algoritmus,kterýprodanýgrafgsohodnocenímdvrátícyklush procházející všemi vrcholy takový, že d(h) 1.5 d(h ) kdeh optimálnířešení(tj.cyklussminimálníhodnotoud(h )). M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

53 Problém obchodního cestujícího(tsp) Variantu TSP, ve které se omezujeme pouze na instance, ve kterých je splněna trojúhelníková nerovnost(a kde musí být každý vrchol navštíven právě jednou), označujeme -TSP. Pro problém -TSP je znám 1.5-aproximační polynomiální algoritmus, tj.algoritmus,kterýprodanýgrafgsohodnocenímdvrátícyklush procházející všemi vrcholy takový, že d(h) 1.5 d(h ) kdeh optimálnířešení(tj.cyklussminimálníhodnotoud(h )). My si ukážeme poněkud jednodušší -aproximační polynomiální algoritmus pro problém -TSP. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

54 Problém obchodního cestujícího(tsp) Před vlastním popisem algoritmu si připomeňme některé pojmy: KostragrafuG=(V,E)jelibovolnýsouvislýacyklickýgrafT=(V,E ), kdev=v ae E(tj.TjesouvislýpodgrafgrafuGobsahující všechnyvrcholyzg). Hodnotu d(t) definujeme jako součet hodnot hran v této kostře, tj.d(t)=d(e ). KostraTjeminimální,jestližeprolibovolnoujinoukostruT vgrafug platíd(t) d(t ). Pro problém nalezení minimální kostry v daném ohodnoceném grafu jsou známy rychlé polynomiální algoritmy(např. Kruskalův nebo Jarníkův (Primův)). M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

55 Problém obchodního cestujícího(tsp) PříkladkostryT,kded(T)=8: M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

56 Problém obchodního cestujícího(tsp) PříkladminimálníkostryT,kded(T)=6: M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

57 Problém obchodního cestujícího(tsp) -aproximační algoritmus pro -TSP pracuje v následujících krocích: Najde minimální kostru grafu G. Vytvoří uzavřený tah podél této kostry. Z vytvořeného tahu odstraní opakující se vrcholy a výsledný cyklus vrátí jako výsledek. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

58 Problém obchodního cestujícího(tsp) Vezměme si následující instanci -TSP M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

59 Problém obchodního cestujícího(tsp) Krok 1: Nalezení minimální kostry T M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

60 Problém obchodního cestujícího(tsp) Všimněmesi,žed(T) <d(h ): PokudzH odstranímelibovolnouhranu,dostanemekostrut. Zjevněplatíd(T ) <d(h ). ProlibovolnoukostruT platíd(t) d(t ). M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

61 Problém obchodního cestujícího(tsp) Příklad: Vezměme si optimální cyklus M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

62 Problém obchodního cestujícího(tsp) Příklad: Odstraněním jedné hrany vznikne kostra M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

63 Problém obchodního cestujícího(tsp) Krok 1: Nalezení minimální kostry M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

64 Problém obchodního cestujícího(tsp) Krok : Vytvoření tahu H podél kostry M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

65 Problém obchodního cestujícího(tsp) Krok : Vytvoření tahu H podél kostry Každouhranuprocházímedvakrát,platítedyd(H)=d(T) <d(h ). M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

66 Problém obchodního cestujícího(tsp) Krok : Vytvoření tahu H podél kostry M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

67 Problém obchodního cestujícího(tsp) Každé vypuštění vrcholu tah leda zkrátí. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51 Krok 3: Postupné vypouštění opakujících se vrcholů z tahu H

68 Problém obchodního cestujícího(tsp) Každé vypuštění vrcholu tah leda zkrátí. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51 Krok 3: Postupné vypouštění opakujících se vrcholů z tahu H

69 Problém obchodního cestujícího(tsp) Každé vypuštění vrcholu tah leda zkrátí. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51 Krok 3: Postupné vypouštění opakujících se vrcholů z tahu H

70 Problém obchodního cestujícího(tsp) Nalezený cyklus: M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 30. května / 51

Problém obchodního cestujícího(tsp) Vstup: Množina n měst a vzdálenosti mezi nimi. Výstup: Nejkratší okružní cesta procházející všemi městy.

Problém obchodního cestujícího(tsp) Vstup: Množina n měst a vzdálenosti mezi nimi. Výstup: Nejkratší okružní cesta procházející všemi městy. Problém obchodního cestujícího(tsp) Vstup: Množina n měst a vzdálenosti mezi nimi. Výstup: Nejkratší okružní cesta procházející všemi městy. Poznámka:Slovem okružní myslíme,žecestakončívestejném městě,

Více

Z. Sawa (VŠB-TUO) Teoretická informatika 18. prosince / 67

Z. Sawa (VŠB-TUO) Teoretická informatika 18. prosince / 67 Další třídy složitosti Z. Sawa (VŠB-TUO) Teoretická informatika 18. prosince 018 1/ 67 Další třídy složitosti Pro libovolnou funkci f : N R + definujme následující třídy: DTIME(f(n)) třída všech rozhodovacích

Více

4. NP-úplné (NPC) a NP-těžké (NPH) problémy

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

Více

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

Více

Složitost a moderní kryptografie

Složitost a moderní kryptografie Složitost a moderní kryptografie Radek Pelánek Modulární systém dalšího vzdělávání pedagogických pracovníků JmK v přírodních vědách a informatice CZ.1.07/1.3.10/02.0024 Složitost a moderní kryptografie

Více

Aproximativní algoritmy UIN009 Efektivní algoritmy 1

Aproximativní algoritmy UIN009 Efektivní algoritmy 1 Aproximativní algoritmy. 14.4.2005 UIN009 Efektivní algoritmy 1 Jak nakládat s NP-těžkými úlohami? Speciální případy Aproximativní algoritmy Pravděpodobnostní algoritmy Exponenciální algoritmy pro data

Více

Problémy třídy Pa N P, převody problémů

Problémy třídy Pa N P, převody problémů Problémy třídy Pa N P, převody problémů Cvičení 1. Rozhodněte o příslušnosti následujících problémů do tříd Pa N P(N PCověříme později): a)jedanýgrafsouvislý? danýproblémjeztřídy P,řešíhonapř.algoritmyDFS,BFS.

Více

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

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

Další NP-úplné problémy

Další NP-úplné problémy Další NP-úplné problémy Známe SAT, CNF, 3CNF, k-klika... a ještě následující easy NP-úplný problém: Existence Certifikátu (CERT ) Instance: M, x, t, kde M je DTS, x je řetězec, t číslo zakódované jako

Více

19. a 20. přednáška z kryptografie

19. a 20. přednáška z kryptografie 19. a 20. přednáška z kryptografie Alena Gollová 1/35 Obsah 1 2 IsPrime jako IsPrime jako s dělením malými prvočísly Alena Gollová 2/35 V předchozí kapitole jsme používali algoritmus IsPrime(n), který

Více

zejména Dijkstrův algoritmus pro hledání minimální cesty a hladový algoritmus pro hledání minimální kostry.

zejména Dijkstrův algoritmus pro hledání minimální cesty a hladový algoritmus pro hledání minimální kostry. Kapitola Ohodnocené grafy V praktických aplikacích teorie grafů zpravidla graf slouží jako nástroj k popisu nějaké struktury. Jednotlivé prvky této struktury mají často přiřazeny nějaké hodnoty (může jít

Více

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

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

Více

10 Přednáška ze

10 Přednáška ze 10 Přednáška ze 17. 12. 2003 Věta: G = (V, E) lze nakreslit jedním uzavřeným tahem G je souvislý a má všechny stupně sudé. Důkaz G je souvislý. Necht v je libovolný vrchol v G. A mějme uzavřený eurelovský

Více

Výpočetní složitost algoritmů

Výpočetní složitost algoritmů Výpočetní složitost algoritmů Slajdy pro výuku na KS Ondřej Čepek Sylabus 1. Definice časové a prostorové složitosti algoritmů. Příklady na konkrétních algoritmech. Prostředky pro popis výpočetní složitosti

Více

NP-úplnost problému SAT

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

Více

Testování prvočíselnosti

Testování prvočíselnosti Dokumentace zápočtového programu z Programování II (NPRG031) Testování prvočíselnosti David Pěgřímek http://davpe.net Úvodem V různých oborech (například v kryptografii) je potřeba zjistit, zda je číslo

Více

TGH12 - Problém za milion dolarů

TGH12 - Problém za milion dolarů TGH12 - Problém za milion dolarů Jan Březina Technical University of Liberec 7. května 2013 Složitost problému Co je to problém? Složitost problému Co je to problém? K daným vstupním datům (velkému binárnímu

Více

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

Více

Grafové algoritmy. Programovací techniky

Grafové algoritmy. Programovací techniky Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být

Více

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

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í

Více

YZTI - poznámky ke složitosti

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

Více

Stromové rozklady. Definice 1. Stromový rozklad grafu G je dvojice (T, β) taková, že T je strom,

Stromové rozklady. Definice 1. Stromový rozklad grafu G je dvojice (T, β) taková, že T je strom, Stromové rozklady Zdeněk Dvořák 25. října 2017 Definice 1. Stromový rozklad grafu G je dvojice (T, β) taková, že T je strom, β je funkce přiřazující každému vrcholu T podmnožinu vrcholů v G, pro každé

Více

H {{u, v} : u,v U u v }

H {{u, v} : u,v U u v } Obyčejný graf Obyčejný graf je dvojice G= U, H, kde U je konečná množina uzlů (vrcholů) a H {{u, v} : u,v U u v } je (konečná) množina hran. O hraně h={u, v} říkáme, že je incidentní s uzly u a v nebo

Více

Přijímací zkouška - matematika

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,

Více

5 Orientované grafy, Toky v sítích

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

Více

Úvod do informatiky. Miroslav Kolařík

Ú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í

Více

Vzdálenost uzlů v neorientovaném grafu

Vzdálenost uzlů v neorientovaném grafu Vzdálenosti a grafy Vzdálenost uzlů v neorientovaném grafu Je dán neorientovaný neohodnocený graf G = (V,E,I) vzdálenost uzlů u a v v neorientovaném souvislém grafu G je délka nejkratší cesty spojující

Více

Algoritmy na ohodnoceném grafu

Algoritmy na ohodnoceném grafu Algoritmy na ohodnoceném grafu Dvě základní optimalizační úlohy: Jak najít nejkratší cestu mezi dvěma vrcholy? Dijkstrův algoritmus s t Jak najít minimální kostru grafu? Jarníkův a Kruskalův algoritmus

Více

Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní. stromový rozklad. Poznamenejme, že je-li k součástí vstupu, pak rozhodnout

Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní. stromový rozklad. Poznamenejme, že je-li k součástí vstupu, pak rozhodnout Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní graf má stromovou šířku nejvýše k, a je-li tomu tak, také vrátí příslušný stromový rozklad. Poznamenejme, že je-li k součástí vstupu,

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

NP-úplnost. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 23. května / 32

NP-úplnost. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 23. května / 32 NP-úplnost M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 23. května 2007 1/ 32 Rozhodovací problémy Definice Rozhodovací problém je takový, kde je množina možných výstupů dvouprvková

Více

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

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

Více

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í 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),

Více

Vrcholová barevnost grafu

Vrcholová barevnost grafu Vrcholová barevnost grafu Definice: Necht G = (V, E) je obyčejný graf a k N. Zobrazení φ : V {1, 2,..., k} nazýváme k-vrcholovým obarvením grafu G. Pokud φ(u) φ(v) pro každou hranu {u, v} E, nazveme k-vrcholové

Více

Kapitola 11. Vzdálenost v grafech. 11.1 Matice sousednosti a počty sledů

Kapitola 11. Vzdálenost v grafech. 11.1 Matice sousednosti a počty sledů Kapitola 11 Vzdálenost v grafech V každém grafu lze přirozeným způsobem definovat vzdálenost libovolné dvojice vrcholů. Hlavním výsledkem této kapitoly je překvapivé tvrzení, podle kterého lze vzdálenosti

Více

Programování: základní konstrukce, příklady, aplikace. IB111 Programování a algoritmizace

Programování: základní konstrukce, příklady, aplikace. IB111 Programování a algoritmizace Programování: základní konstrukce, příklady, aplikace IB111 Programování a algoritmizace 2011 Připomenutí z minule, ze cvičení proměnné, výrazy, operace řízení výpočtu: if, for, while funkce příklady:

Více

Jak funguje asymetrické šifrování?

Jak funguje asymetrické šifrování? Jak funguje asymetrické šifrování? Petr Vodstrčil petr.vodstrcil@vsb.cz Katedra aplikované matematiky, Fakulta elektrotechniky a informatiky, Vysoká škola báňská Technická univerzita Ostrava Petr Vodstrčil

Více

PŘEDNÁŠKA 2 POSLOUPNOSTI

PŘEDNÁŠKA 2 POSLOUPNOSTI PŘEDNÁŠKA 2 POSLOUPNOSTI 2.1 Zobrazení 2 Definice 1. Uvažujme libovolné neprázdné množiny A, B. Zobrazení množiny A do množiny B je definováno jako množina F uspořádaných dvojic (x, y A B, kde ke každému

Více

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

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ý

Více

1 Linearní prostory nad komplexními čísly

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íce

Diskrétní matematika 1. týden

Diskrétní matematika 1. týden Diskrétní matematika 1. týden Elementární teorie čísel dělitelnost Jan Slovák Masarykova univerzita Fakulta informatiky jaro 2015 Obsah přednášky 1 Problémy teorie čísel 2 Dělitelnost 3 Společní dělitelé

Více

Informatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A

Informatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A Informatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A Každá úloha je hodnocena maximálně 25 body. Všechny své odpovědi zdůvodněte! 1. Postavte na stůl do řady vedle

Více

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, /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

Více

Matematická logika. Rostislav Horčík. horcik

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

Více

Důkaz Heineho Borelovy věty. Bez újmy na obecnosti vezmeme celý prostor A = M (proč? úloha 1). Implikace. Nechť je (M, d) kompaktní a nechť.

Důkaz Heineho Borelovy věty. Bez újmy na obecnosti vezmeme celý prostor A = M (proč? úloha 1). Implikace. Nechť je (M, d) kompaktní a nechť. Přednáška 3, 19. října 2015 Důkaz Heineho Borelovy věty. Bez újmy na obecnosti vezmeme celý prostor A = M (proč? úloha 1). Implikace. Nechť je (M, d) kompaktní a nechť X i = M i I je jeho pokrytí otevřenými

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

10. Složitost a výkon

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ří

Více

Složitost Filip Hlásek

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í,

Více

Grafové algoritmy. Programovací techniky

Grafové algoritmy. Programovací techniky Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být

Více

Kostry. 9. týden. Grafy. Marie Demlová (úpravy Matěj Dostál) 16. dubna 2019

Kostry. 9. týden. Grafy. Marie Demlová (úpravy Matěj Dostál) 16. dubna 2019 Grafy 16. dubna 2019 Tvrzení. Je dán graf G, pak následující je ekvivalentní. 1 G je strom. 2 Graf G nemá kružnice a přidáme-li ke grafu libovolnou hranu, uzavřeme přesně jednu kružnici. 3 Graf G je souvislý

Více

12. Aproximační algoritmy

12. Aproximační algoritmy 12. Aproximační algoritmy (F.Haško,J.enda,.areš, ichal Kozák, Vojta Tůma) Na minulých přednáškách jsme se zabývali různými těžkými rozhodovacími problémy. Tato se zabývá postupy, jak se v praxi vypořádat

Více

Algoritmus pro hledání nejkratší cesty orientovaným grafem

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

Více

Převoditelnost problémů nezávislé množiny na problém hamiltonovského cyklu () IS HC 1/10

Převoditelnost problémů nezávislé množiny na problém hamiltonovského cyklu () IS HC 1/10 Převoditelnost problémů nezávislé množiny na problém hamiltonovského cyklu () IS C 1/10 Cíle prezentace seznámit s problémem nezávislé množiny seznámit s problémem hamiltonovského cyklu seznámitspřevodemproblémup1naproblémp2(p1

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

Definice 1 eulerovský Definice 2 poloeulerovský

Definice 1 eulerovský Definice 2 poloeulerovský Dále budeme předpokládat, že každý graf je obyčejný a má aspoň tři uzly. Definice 1 Graf G se nazývá eulerovský, existuje-li v něm uzavřený tah, který obsahuje každou hranu v G. Definice 2 Graf G se nazývá

Více

Dynamické programování

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)

Více

Algoritmy a výpočetní složitost

Algoritmy a výpočetní složitost Algoritmy a výpočetní složitost Zdeněk Sawa Katedra informatiky Fakulta elekrotechniky a informatiky VŠB-TU Ostrava 3. ledna 2005 Co je to algoritmus? Algoritmus Algoritmus je mechanický postup skládající

Více

Týden 14. Přednáška. Teoretická informatika průběh výuky v semestru 1. PSPACE, NPSPACE, PSPACE-úplnost

Týden 14. Přednáška. Teoretická informatika průběh výuky v semestru 1. PSPACE, NPSPACE, PSPACE-úplnost Teoretická informatika průběh výuky v semestru 1 Týden 14 Přednáška PSPACE, NPSPACE, PSPACE-úplnost Uvědomili jsme si nejprve, že např. pro zjištění toho, zda Bílý má nějakou strategii ve hře ŠACHY, která

Více

12. Globální metody MI-PAA

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

Více

4 Stromy a les. Definice a základní vlastnosti stromů. Kostry grafů a jejich počet.

4 Stromy a les. Definice a základní vlastnosti stromů. Kostry grafů a jejich počet. 4 Stromy a les Jedním ze základních, a patrně nejjednodušším, typem grafů jsou takzvané stromy. Jedná se o souvislé grafy bez kružnic. Přes svou (zdánlivou) jednoduchost mají stromy bohatou strukturu a

Více

Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly.

Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly. Kapitola Reprezentace grafu V kapitole?? jsme se dozvěděli, co to jsou grafy a k čemu jsou dobré. rzo budeme chtít napsat nějaký program, který s grafy pracuje. le jak si takový graf uložit do počítače?

Více

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 2015

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 2015 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 05 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia

Více

8 Přednáška z

8 Přednáška z 8 Přednáška z 3 12 2003 Problém minimální kostry: Dostaneme souvislý graf G = (V, E), w : E R + Našim úkolem je nalézt strom (V, E ) tak, aby výraz e E w(e) nabýval minimální hodnoty Řešení - Hladový (greedy)

Více

1 Lineární prostory a podprostory

1 Lineární prostory a podprostory Lineární prostory a podprostory Přečtěte si: Učebnice AKLA, kapitola první, podkapitoly. až.4 včetně. Cvičení. Které z následujících množin jsou lineárními prostory s přirozenými definicemi operací?. C

Více

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

Více

Základy elementární teorie čísel

Základy elementární teorie čísel Základy elementární teorie čísel Jiří Velebil: X01DML 29. října 2010: Základy elementární teorie čísel 1/14 Definice Řekneme, že přirozené číslo a dělí přirozené číslo b (značíme a b), pokud existuje přirozené

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

VLASTNOSTI GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze. BI-GRA, LS 2010/2011, Lekce 5

VLASTNOSTI GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze. BI-GRA, LS 2010/2011, Lekce 5 VLASTNOSTI GRAFŮ Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 5 Evropský sociální fond Praha & EU: Investujeme do vaší

Více

Pravděpodobnostní algoritmy

Pravděpodobnostní algoritmy Pravděpodobnostní algoritmy 17. a 18. přednáška z kryptografie Alena Gollová 1/31 Obsah 1 Diskrétní rozdělení náhodné veličiny Algoritmus Generate and Test 2 Alena Gollová 2/31 Diskrétní rozdělení náhodné

Více

4EK311 Operační výzkum. 5. Teorie grafů

4EK311 Operační výzkum. 5. Teorie grafů 4EK311 Operační výzkum 5. Teorie grafů 5. Teorie grafů definice grafu Graf G = uspořádaná dvojice (V, E), kde V označuje množinu n uzlů u 1, u 2,, u n (u i, i = 1, 2,, n) a E označuje množinu hran h ij,

Více

Markov Chain Monte Carlo. Jan Kracík.

Markov Chain Monte Carlo. Jan Kracík. Markov Chain Monte Carlo Jan Kracík jan.kracik@vsb.cz Princip Monte Carlo integrace Cílem je (přibližný) výpočet integrálu I(g) = E f [g(x)] = g(x)f (x)dx. (1) Umíme-li generovat nezávislé vzorky x (1),

Více

Základy elementární teorie čísel

Základy elementární teorie čísel Základy elementární teorie čísel Jiří Velebil: A7B01MCS 3. října 2011: Základy elementární teorie čísel 1/15 Dělení se zbytkem v oboru celých čísel Ať a, b jsou libovolná celá čísla, b 0. Pak existují

Více

= je prostý orientovaný graf., formálně c ( u, v) 0. dva speciální uzly: zdrojový uzel s a cílový uzel t. Dále budeme bez

= je prostý orientovaný graf., formálně c ( u, v) 0. dva speciální uzly: zdrojový uzel s a cílový uzel t. Dále budeme bez Síť Síť je čtveřice N = ( G, s, t, c) kde G ( V, A) = je prostý orientovaný graf a každé orientované hraně ( u, v) je přiřazeno nezáporné číslo, které se nazývá kapacita hrany ( u, v), formálně c ( u,

Více

ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML HTTP://KTIML.MFF.CUNI.CZ/~SURYNEK/NAIL094

ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML HTTP://KTIML.MFF.CUNI.CZ/~SURYNEK/NAIL094 10 ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML HTTP://KTIML.MFF.CUNI.CZ/~SURYNEK/NAIL094 Matematicko-fyzikální fakulta Univerzita Karlova v Praze 1 ROZHODOVÁNÍ TEORIÍ POMOCÍ SAT ŘEŠIČE (SMT)

Více

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc.

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc. Bezpečnost 8. RSA, kryptografie s veřejným klíčem doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních programů

Více

+ 2y. a y = 1 x 2. du x = nxn 1 f(u) 2x n 3 yf (u)

+ 2y. a y = 1 x 2. du x = nxn 1 f(u) 2x n 3 yf (u) Diferenciální počet příklad 1 Dokažte, že funkce F, = n f 2, kde f je spojitě diferencovatelná funkce, vhovuje vztahu + 2 = nf ; 0 Řešení: Označme u = 2. Pak je F, = n fu a platí Podle vět o derivaci složené

Více

Principy indukce a rekursivní algoritmy

Principy indukce a rekursivní algoritmy Principy indukce a rekursivní algoritmy Jiří Velebil: A7B01MCS 19. září 2011: Indukce 1/20 Příklad Místností rozměru n budeme rozumět šachovnici rozměru 2 n 2 n, ze které je jedno (libovolné) pole vyjmuto.

Více

Od Turingových strojů k P=NP

Od Turingových strojů k P=NP Složitost Od Turingových strojů k P=NP Zbyněk Konečný Zimnění 2011 12. 16.2.2011 Kondr (Než vám klesnou víčka 2011) Složitost 12. 16.2.2011 1 / 24 O čem to dnes bude? 1 Co to je složitost 2 Výpočetní modely

Více

7 Ortogonální a ortonormální vektory

7 Ortogonální a ortonormální vektory 7 Ortogonální a ortonormální vektory Ze vztahu (5) pro výpočet odchylky dvou vektorů vyplývá, že nenulové vektory u, v jsou na sebe kolmé právě tehdy, když u v =0. Tato skutečnost nám poslouží k zavedení

Více

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

Predik atov a logika - pˇredn aˇska () Predik atov a logika - pˇredn aˇska / 16 Predikátová logika - přednáška 3 6. 1. 2015 () Predikátová logika - přednáška 3 6. 1. 2015 1 / 16 Věta (o dedukci) Bud L jazyk, T teorie pro L, ϕ L-sentence a ψ L-formule. Pak Věta (o kompaktnosti) T ϕ

Více

1. Toky, řezy a Fordův-Fulkersonův algoritmus

1. Toky, řezy a Fordův-Fulkersonův algoritmus 1. Toky, řezy a Fordův-Fulkersonův algoritmus V této kapitole nadefinujeme toky v sítích, odvodíme základní věty o nich a také Fordův-Fulkersonův algoritmus pro hledání maximálního toku. Také ukážeme,

Více

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

Obsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie Obsah Počítání modulo n a jeho časová složitost 3. a 4. přednáška z kryptografie 1 Počítání modulo n - dokončení Umocňování v Zn 2 Časová složitost výpočtů modulo n Asymptotická notace Základní aritmetické

Více

Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení.

Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení. Předmět: MA4 Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení. Literatura: Kapitola 2 a)-c) a kapitola 4 a)-c) ze skript Karel Rektorys: Matematika 43, ČVUT,

Více

Necht L je lineární prostor nad R. Operaci : L L R nazýváme

Necht L je lineární prostor nad R. Operaci : L L R nazýváme Skalární součin axiomatická definice odvození velikosti vektorů a úhlu mezi vektory geometrická interpretace ortogonalita vlastnosti ortonormálních bázi [1] Definice skalárního součinu Necht L je lineární

Více

Použití dalších heuristik

Použití dalších heuristik Použití dalších heuristik zkracování cesty při FIND-SET UNION podle hodností Datové struktury... p[x] - předchůdce uzlu x MAKE-SET(x) p[x] := x hod[x] := 0 hod[x] - hodnost (aprox. výšky) UNION(x,y) LINK(FIND-SET(x),

Více

Asymetrická kryptografie a elektronický podpis. Ing. Dominik Breitenbacher Mgr. Radim Janča

Asymetrická kryptografie a elektronický podpis. Ing. Dominik Breitenbacher Mgr. Radim Janča Asymetrická kryptografie a elektronický podpis Ing. Dominik Breitenbacher ibreiten@fit.vutbr.cz Mgr. Radim Janča ijanca@fit.vutbr.cz Obsah cvičení Asymetrická, symetrická a hybridní kryptografie Kryptoanalýza

Více

HEURISTICKÉ ALGORITMY PRO ŘEŠENÍ ÚLOH OBCHODNÍHO CESTUJÍCÍHO

HEURISTICKÉ ALGORITMY PRO ŘEŠENÍ ÚLOH OBCHODNÍHO CESTUJÍCÍHO HEURISTICKÉ ALGORITMY PRO ŘEŠENÍ ÚLOH OBCHODNÍHO CESTUJÍCÍHO Heuristické algoritmy jsou speciálními algoritmy, které byly vyvinuty pro obtížné úlohy, jejichž řešení je obtížné získat v rozumném čase. Mezi

Více

Dijkstrův algoritmus

Dijkstrův algoritmus Dijkstrův algoritmus Hledání nejkratší cesty v nezáporně hranově ohodnoceném grafu Necht je dán orientovaný graf G = (V, H) a funkce, která každé hraně h = (u, v) H přiřadí nezáporné reálné číslo označované

Více

Úvod do informatiky. Miroslav Kolařík

Úvod do informatiky. Miroslav Kolařík Úvod do informatiky přednáška devátá Miroslav Kolařík Zpracováno dle učebního textu prof. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008 Obsah 1 Kombinatorika: princip inkluze a exkluze 2 Počítání

Více

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 jara 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 jara 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 jara 2014 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia

Více

Usuzování za neurčitosti

Usuzování za neurčitosti Usuzování za neurčitosti 25.11.2014 8-1 Usuzování za neurčitosti Hypotetické usuzování a zpětná indukce Míry postačitelnosti a nezbytnosti Kombinace důkazů Šíření pravděpodobnosti v inferenčních sítích

Více

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

Výroková a predikátová logika - IV Výroková a predikátová logika - IV Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - IV ZS 2018/2019 1 / 17 Tablo metoda Tablo Tablo - příklady F (((p q)

Více

Paralelní grafové algoritmy

Paralelní grafové algoritmy Paralelní grafové algoritmy Značení Minimální kostra grafu Nejkratší cesta z jednoho uzlu Nejkratší cesta mezi všemi dvojicemi uzlů Použité značení Definition Bud G = (V, E) graf. Pro libovolný uzel u

Více

Úvod do kryptologie. 6. března L. Balková (FJFI ČVUT v Praze) Primality Testing and Factorization 6. března / 41

Úvod do kryptologie. 6. března L. Balková (FJFI ČVUT v Praze) Primality Testing and Factorization 6. března / 41 Testování prvočíselnosti L ubomíra Balková Úvod do kryptologie 6. března 2014 L. Balková (FJFI ČVUT v Praze) Primality Testing and Factorization 6. března 2014 1 / 41 Problémy 1 Primality problem: Rozhodni,

Více

Úvod. Karel Klouda c KTI, FIT, ČVUT v Praze 18. dubna, letní semestr 2010/2011

Úvod. Karel Klouda c KTI, FIT, ČVUT v Praze 18. dubna, letní semestr 2010/2011 MI-MPI, Přednáška č. 11 Karel Klouda karel.klouda@fit.cvut.cz c KTI, FIT, ČVUT v Praze 18. dubna, letní semestr 2010/2011 RSA potřiapadesáté šifrování Co potřebuje k zašifrování zprávy x: číslo n, které

Více

9.Cosipočítstěžkýmproblémem

9.Cosipočítstěžkýmproblémem 9.Cosipočítstěžkýmproblémem V předchozí kapitole jsme zjistili, že leckteré rozhodovací problémy jsou NPúplné.Ztohoplyne,žejsouekvivalentní,alebohuželtaké,žeanijedenznichzatím neumíme vyřešit v polynomiálním

Více

Složitost. Teoretická informatika Tomáš Foltýnek

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í

Více

Úvod do teorie grafů

Úvod do teorie grafů Úvod do teorie grafů Neorientovaný graf G = (V,E,I) V množina uzlů (vrcholů) - vertices E množina hran - edges I incidence incidence je zobrazení, buď: funkce: I: E V x V relace: I E V V incidence přiřadí

Více

TGH08 - Optimální kostry

TGH08 - Optimální kostry TGH08 - Optimální kostry Jan Březina Technical University of Liberec 14. dubna 2015 Problém profesora Borůvky řešil elektrifikaci Moravy Jak propojit N obcí vedením s minimální celkovou délkou. Vedení

Více