Bonyolultsági vizsgálatok egy szépirodalmi m kapcsán
|
|
- Emma Pásztor
- 6 évvel ezelőtt
- Látták:
Átírás
1 Molnár Gábor Bonyolultsági vizsgálatok egy szépirodalmi m kapcsán Bsc Szakdolgozat Témavezet : Korándi József Adjunktus Matematikatanítási és Módszertani Központ Eötvös Loránd Tudományegyetem Matematikatanítási és Módszertani Központ Budapest 2016
2 Tartalomjegyzék 1 Bonyolultságelméleti alapok Turing Eldönthet ség Algoritmus és pszeudokód Algoritmus bonyolultsága Polinomiális id Más bonyolultsági osztályok NP Bevezetése NP-teljes NP-teljes feladatok Összefoglaló 27 5 Irodalomjegyzék 29 1
3 Köszönetnyilvánítás Mindenek el tt szeretném megköszönni a sok kapott segítséget témavezet mnek, Korándi József tanár úrnak. Valamint szüleimnek és barátaimnak, akik végig támogattak és kijavították a helyesírási hibáimat. 2
4 El szó A matematika a való életben sok helyen el fordul, még a médiában is. Szakdolgozatom kiindulási pontja is egy ilyen el fordulás. A média, amely a latin eredet médium (közvetít ) szó többes száma, a kommunikációban az információ rögzítésére és közvetítésére használt eszközt vagy eszközöket jelenti. A médiába számos eszköz beletartozik, ezek közül a legismertebbek talán a televízió, az újságok és a rádió. De médium egy reklámplakát vagy a megállókban található villamos indulásának idejét mutató kijelz is, hiszen ezek is közvetetten nyújtják az információt. De médiumnak min sül akár egy szépirodalmi m is, amikor információkat közöl az olvasóval. Számomra is kicsit meglep élmény volt, amikor Higasino Keigo: X a gyilkos ismeretlen cím regényben matematikai tartalmakkal, utalásokkal találkoztam, és ez adta dolgozatom alapötletét, témáját. A regényben, mint azt azért a címéb l is sejteni lehet, viszonylag nagymértékben fordulnak el matematikai fogalmak, ismert tételek és problémák. Ilyenek például a négyszín-tétel és a Riemann-sejtés, de neves matematikusok is felbukkannak a könyvben, mint például Erd s Pál. Az amerikai Clay Matematikai Intézet 2000-ben díjat alapított a Millenniumi Problémák megoldására. Ezzel a névvel azt a hét komoly matematikai problémát illetik, melyek megoldására az említett intézet egyenként 1 millió dolláros díjat t zött ki. A hét probléma közül hat még mindig megoldatlan, köztük a korábban már említett Riemann-sejtés, és a P = NP probléma is. Ez utóbbi szintén el fordul Higasino Keigo könyvében, és dolgozatom témája is e problémakör alapjai, nevezetesen a bonyolultság-elméleté. A regényben a bonyolultság-elmélet lozóai vonatkozásain van a hangsúly, de ebben a dolgozatban természetesen els sorban a téma matematikájáról lesz szó. Ennek érdekében a leginkább Lovász László Algoritmusok bonyolultsága cím könyvének a felépítését követtem. A könyvben a matematikai tartalmakon és a lozóai vonatkozásokon túl szóba kerülnek matematikatanítási eszközök is, ami miatt a leend matematikatanároknak is ajánlani tudom a regényt, de a matematika didaktikája szintén kívül esik e dolgozat témakörein. 3
5 1. Bonyolultságelméleti alapok Miel tt foglalkoznánk az algoritmusok vizsgálatával, tisztázzuk annak fogalmát, s a velejáró deníciókat. A Σ-val jelölt, nemüres véges halmazt ábécének nevezünk. A halmaz elemeib l felépített véges sorozatot Σ feletti szónak hívjuk, beleértve az üres szó is, melyet ɛ jelöl. A szó hossza a bet k számával egyezik meg, melyet az x jelöl. Az üres szó hossza nulla, vagyis az ɛ = 0. A k hosszú szavakat Σ k halmazzal jelöljük, az összes szót Σ -gal. Ennek egy tetsz leges részhalmazát L nyelvnek nevezzük. Továbbiakban legyen Σ 0 az a véges ábécé mely nem tartalmazza az üres szót, tehát Σ 0 = Σ ɛ. 1. Deníció. Legyen f és g a természetes számokon értelmezett és valós érték függvények. Azt mondjuk, hogy f = O(g), ha létezik pozitív valós c konstans és n 0 pozitív egész küszöb, hogy minden n > n 0 esetén f(n) cg(n). 2. Deníció. Legyen f és g a természetes számokon értelmezett és valós érték függvények. Azt mondjuk, hogy f = o(g), ha g(n) csak véges sok helyen veszi fel a nullát, és f(n)/g(n) 0 ha n Turing Az algoritmusnak nincs pontos deniálása, mert nem létezik jól megfogalmazható, mindenki számára elfogadott deníció. Ezért szokás a matematikai gép fogalmát bevezetni. A legismertebb ilyen gép a Turing gép, amit f leg elméleti vizsgálatokra használnak. Ez a következ képpen néz ki: van egy vezérl egység, melynek véges sok állapota van. Ki van tüntetve egy START és egy STOP állapot, ahol az utóbbinak két fajtája is van, az ELF (elfogadó) és az ELUT (elutasító). Ezen kívül van k 1 szalagja, amelynek minden mez jébe az ábécé egy tagja van. Eleinte a bemenet és az úgynevezett üresjelek állnak. Továbbá vannak a szalagok mez jét leolvasó és felülíró, író-olvasó fejek, melyek a m velet után esetleg egyet jobbra vagy balra lépnek. Nyilvánvalóan a vezérl egység kezdéskor mindig a START állapotban van. A fejek a szalagok kezd mezején állnak, amelyek minden lépésben leolvassák a szalagjának mezején található jelet. Ezt követ en három dolog lehetséges: átkerül egy új állapotba felülírja annak a mez nek a jelét, ahol épp tartozkodik 4
6 megtesz egy lépést jobbra vagy balra, avagy nem mozdul Ahogy a STOP állapotba kerül a vezérl egység, a gép leáll. 3. Deníció. Azt mondjuk, hogy egy T Turing-gép eldönti az L nyelvet, ha minden x Σ bemenetre véges sok lépés után leáll, de csak akkor áll meg ELF állapotban, ha x L. Egy nyelv algoritmikusan meghatározható, ha létezik Turing-gép, ami t meghatározza. 1. Példa. Az, hogy egy Diofantoszi egyenletnek létezik-e csak egész számokból álló megoldása, egy algoritmikusan eldönthetetlen feladat, mely be is van bizonyítva. Vagyis nem lehet olyan programot írni, amely minden bemenetre véges lépés után leáll és helyesen dönt arról, hogy van-e egész megoldása. 4. Deníció. Legyen T egy k + 1 és S egy k szalagos Turing-gép, ahol is k 1 és p Σ 0. Azt mondjuk, hogy T a p programmal szimulálja S-et, ha minden x 1,..., x k szavakra T az (x 1,..., x k, p) inputon pontosan akkor áll meg véges számú lépésben, ha S az (x 1,..., x k ) inputon megáll, és ekkor T els k szalagján ugyanaz áll, mint S szalagjain. 5. Deníció. Azt mondjuk, hogy a (k + 1)-szalagos T Turing-gép univerzális a k-szalagos Turing-gépekre nézve, ha tetsz leges k-szalagos Σ feletti S Turing-géphez van olyan p Σ 0 program, amellyel T szimulálja S-et. 1. Tétel. k 1-hez és Σ ábécéhez (k + 1)-szalagos univerzális Turinggép. 2. Tétel. Minden k-szalagos S Turing-géphez létezik egyszalagos T Turinggép, mely S-et helyettesíti a következ képpen: minden üres mez t nem tartalmazó x szóra, T pontosan akkor áll le véges sok lépés után az x bemeneten, ha S leáll és ekkor T szalagján ugyanaz van írva, mint S utolsó szalagján. Valamint, ha S lépésszáma N, akkor T lépéseinek száma legfeljebb O(N 2 ). 1. Megjegyzés. A média szempontból is érdekes Turing neve. Morten Tyldum, norvég rendez, 2014-ben megjelent lmje a Kódjátszma Alan Turing életének egy részével és az Enigma nev német titkosító gépek jeleinek megfejtése. Sajnos matematikai szempontból, nem túl tartalmas. F ként az élete van az el térben. 2. Megjegyzés. Talán a legegyszer bb gép a véges automata, viszont bonyolultságelmélet céljából nem alkalmas, mert csak nagyon szimpla függvények kiszámítására alkalmazható. 5
7 1.2. Eldönthet ség Az eldönthet ség kérdésének egy fajtája az, amikor egy problémasereghez keresünk olyan algoritmust, mely ezek mindegyikét eldönti. Ez a kés bbiekben fontos eszközünk lesz az algoritmusok bonyolultságának vizsgálatában. Most ki is térünk rá. 6. Deníció. Egy f : Σ 0 Σ 0 függvényt kiszámíthatónak nevezünk, ha létezik k 1 számú szalaggal rendelkez T Turing-gép, mely minden x Σ 0 inputtal, véges id után megáll és az utolsó szalagján az f(x) szó áll. 7. Deníció. Az L Σ 0 nyelvet eldönthet nek nevezzük, ha karakterisztikus függvénye 1, ha x L, f(x) = 0, ha x Σ 0 L kiszámítható. Azt mondjuk, hogy T Turing-gép eldönti az L nyelvet, ha az kiszámítja az f függvényt. 8. Deníció. Az L nyelvet felsorolhatónak nevezzük, ha L = ɛ vagy létezik kiszámítható g : Σ 0 Σ 0 függvény, melynek értékkészlete L. 1. Lemma. Bármely eldönthet nyelv egyben felsorolható is. Bizonyítás: Legyen L eldönthet nyelv. Triviális eset, ha L = ɛ, hiszen ekkor a denícióból következik, hogy felsorolható. Tehát feltesszük, hogy L nem üres. Legyen a L, és tekintsük a következ függvényt: x, ha x L, g(x) = a, ha x / L. Ebb l látszik, hogy kiszámítható és értékkészlete L. 3. Tétel. Egy L nyelv akkor és csak akkor eldönthet, ha maga az L nyelv és a komplementere is felsorolható. A következ tételben kimondjuk, hogy van felsorolható, de nem eldönthet nyelv. Ennek érdekében, legyen T egy k-szalagos Turing-gép, és L T olyan x Σ 0 szavakból áll, melyekre igaz, hogy T minden szalagjára x-et írva, a gép véges sok lépés után leáll. 4. Tétel. Ha T egy univerzális Turing-gép, akkor L T felsorolható nyelv nem eldönthet. 6
8 1.3. Algoritmus és pszeudokód A fontos kitekintések után rátérünk az algoritmusokra. Az egyszer bb kezelés érdekében, egy általánosabb deníciót veszünk, mégpedig egy precízen megírt eljárást, amely egy felmerült probléma fajtájának egy adott feladatát gépiesen és hibátlanul oldja meg. Minden inputra kiszámít egy outputot. A gép a számításhoz többféle er forrást igényel, ezek közül a legjellemz bbek az id és a tár. Ezek felhasználása a számítás bonyolultságát méri. Amikor egy adott problémához algoritmust tervezünk, az els lépés egy megfelel modell alkotása. Ezek után a megtervezett algoritmust persze szeretnénk majd a bemeneteinkre futtatni. Erre a célra egy számítógépprogramot készítünk, aminek a vázát szövegesen adjuk meg. Ez az úgynevezett pszeudokódos megadás, ami az algoritmusok leírásának elfogadott tömör leíró nyelve. A pszeudokód közelebb áll a számítógépes megvalósításhoz, s független a programozási nyelvekt l. Így ez alapján, gyakorlatilag bármilyen programozási nyelvbe átírható, amib l rengeteg van, de maga az algoritmus lényege nem változik. Számunkra a legmegfelel bb algoritmus, amely a legrosszabb esetet a legkisebb futási id alatt oldja meg. A futási id egy bizonyos inputra a végrehajtott alapm veletek vagy lépések számát jelenti. Célszer úgy megadni a lépéseket, hogy azok minél inkább gépfüggetlenek legyenek. Az egyszer ség kedvéért tekintsük úgy, hogy a pszeudokód egyes sorainak egyszeri végrehajtásához állandó mennyiség id szükséges. Lehetséges, hogy egy sor több id be telik, mint egy másik, de feltesszük, hogy az i-edik sor mindig c i ideig tart, ahol c i állandó. Tehát a futási id meghatározásához els sorban az egyes utasítások végrehajtásának számát vizsgáljuk meg, majd ezeket tömörítjük és egyszer sítjük, hogy kezelhet bb alakot kapjunk. 9. Deníció. A algoritmus lépésszáma t A (n) := max(x bemeneten hány lépést tesz meg), ahol t : N N függvény. Általában x 0, 1 n és x = n. 7
9 2. Algoritmus bonyolultsága Mint azt már említettük, egy algoritmus bonyolultságát az er forrás igényei határozzák meg, s ezek közül is az id és a tár a kiemelked k. Ezért most feltesszük a Turing-gépekr l, hogy van egy bemenet-szalaguk, amir l csak olvasni tudnak, és egy kimenet-szalaguk, amire csak írni tudnak. Továbbá azt is feltesszük, hogy legalább egy munkaszalagjuk van. Kezdéskor csak a bemenet-szalagra van írva egy Σ feletti szó. A time T (n) függvény a T Turing-gép id igénye, ami a gép lépésszámának maximumát adja meg az n hosszúságú bemenet alapján, ahol time T (n) n. A space T (n) a gép munkaszalágjain azon különböz mez k maximális számát veszi n hosszú bemenetek esetén, melyekre ír. Ez a tárigény-függvény. 10. Deníció. Azt mondjuk, hogy L Σ 0 nyelv id bonyolultsága t(n), ha van olyan T Turing-gép, hogy time T (n) t(n). Ezeket a nyelvosztályokat DT IME(t(n))-nel jelöljük, ahol a D bet a determinisztikus algoritmusokra utal. A polinomiális Turing-géppel eldönthet nyelvek csoportját PTIME-mal vagy csak P-vel jelöljük. 11. Deníció. Azt mondjuk, hogy L Σ 0 nyelv tárbonyolultsága t(n), ha van olyan T Turing-gép, hogy space T (n) t(n). Ezeket a nyelvosztályokat DSP ACE(t(n))-nel jelöljük. A polinomiális tárú Turing-géppel eldönthet nyelvek csoportját PSPACE-szel vagy csak P-vel jelöljük Polinomiális id A legtöbb fontos algoritmus polinomiális idej, néhány speciális esetre ki is térünk, hogy segítse a megértést. Az els ilyen a polinomiális kombinatorikai algoritmusok. Nagyrészt gráfalgoritmusok tartoznak ide, mint a legrövidebb út keresése vagy az Edmonds-Karp algoritmus, amely egy olyan Ford-Fulkerson eljárás, ahol felhasználjuk a legrövidebb utat a maximális folyam megkeresésére. 8
10 2. Példa. Az alábbi irányított és súlyozott gráfnak keressük a maximális folyam értékét, ahol 0 a forrás és 7 pedig a nyel. Algoritmus: A következ pszeudókódok a Breadth First Search, röviden bfs, és az Edmonds-Karp algortimus, ami felhasználja a bfs-t. A bemenetek rendszerint a G gráf C kapacitás mátrixa és E szomszédos csúcsok listája. Ezen kívül kett kiemelt csúcs, s a forrás és t a nyel. Végül F a maximális folyamot tároló mátrix. Az Edmonds-Karp algoritmus kimenete meg a maximális folyam értéke. (A pszeudokódok az irodalomjegyzékben található források alapján készültek, ami alapján le lettek programozva.) procedure bfs(c, E, s, t, F ) for i = 1... n do szul(i) = 1 end for for i = 1... n do cpc(i) = 0 end for sor s szul(s) = 2 cpc(s) = while sor do cur := u sor u sor for v E(cur) do if C[cur, v] F [cur, v] > 0 & szul = 1 then 9
11 szul[v] := cur cpc[v] := min(cpc[cur], C[cur, v] F [cur, v]) if v t then sor v else return cpc, szul end if end if end for end while end procedure procedure EdmondsKarp(C, E, s, t, F ) maxfoly := 0 while True do foly = bfs(s, t) if foly = 0 then Stop end if maxfoly := maxfoly + foly cur := t while cur s do prev := szul[cur] F [prev][cur] := F [prev][cur] + foly F [cur][prev] := F [cur][prev] foly cure := prev end while end while return maxf oly end procedure A pszeudokódok alapján létrehoztam az alábbi C++ programot: #include <iostream> #include <conio. h> #include <queue> #include <c s t r i n g > #include <vector > using namespace std ; 10
12 i n t C [ 1 0 ] [ 1 0 ] ; i n t F [ 1 0 ] [ 1 0 ] ; vector <int > v [ 1 0 ] ; i n t s z u l [ 1 0 ] ; i n t cpc [ 1 0 ] ; i n t b f s ( i n t ss, i n t t t ) memset ( szul, 1, s i z e o f ( s z u l ) ) ; memset ( cpc, 0, s i z e o f ( cpc ) ) ; queue<int > q ; q. push ( s s ) ; s z u l [ s s ] = 2; cpc [ s s ] = 999; while (! q. empty ( ) ) i n t cur = q. f r o n t ( ) ; q. pop ( ) ; f o r ( i n t i =0; i<v [ cur ]. s i z e ( ) ; i++) i n t to = v [ cur ] [ i ] ; i f ( s z u l [ to ] == 1) i f (C[ cur ] [ to ] F [ cur ] [ to ] > 0) s z u l [ to ] = cur ; cpc [ to ] = min ( cpc [ cur ],C[ cur ] [ to ] F [ cur ] [ to ] ) ; i f ( to == t t ) return cpc [ t t ] ; q. push ( to ) ; 11
13 return 0 ; i n t edmondskarp ( i n t ss, i n t t t ) i n t maxfoly = 0 ; while ( true ) i n t f o l y = b f s ( ss, t t ) ; i f ( f o l y == 0) break ; maxfoly = maxfoly + f o l y ; i n t cur = t t ; while ( cur!= s s ) i n t prev = s z u l [ cur ] ; F [ prev ] [ cur ] = F [ prev ] [ cur ] + f o l y ; F [ cur ] [ prev ] = F [ cur ] [ prev ] f o l y ; cur = prev ; return maxfoly ; i n t main ( ) i n t cs, e l ; cout<<"adja meg a csucsok es e l e k szamat!"<< endl ; c i n >> cs ; c i n >> e l ; i n t s, t ; cout << "Adja meg a f o r r a s t es a n y e l o t! " << endl ; c i n >> s ; c i n >> t ; 12
14 f o r ( i n t i = 0 ; i < e l ; i++) cout << "Adja meg a kiindulo, az erkezo c s u c s o t " ; cout << " es az e l k a p a c i t a s a t! " << endl ; i n t from, to, cap ; c i n >> from ; c i n >> to ; c i n >> cap ; C[ from ] [ to ] = cap ; v [ from ]. push_back ( to ) ; v [ to ]. push_back ( from ) ; i n t maxfoly = edmondskarp ( s, t ) ; cout << endl << endl <<"Maximalis folyam : " << maxfoly << endl ; getch ( ) ; Kimenet: 7 Míg a Ford-Fulkerson algoritmus nem polinomális idej is lehet, addig ennek az algoritmusnak a futási ideje a következ képpen tev dik össze. Ha a segédgráfban mindig a legrövidebb s-b l t-be vezet utat keressük, akkor legfeljebb n e iteráció elég, ahol n a csúcsok és e az élek száma. Ekkor az összes lépésszám O(n e 2 ). Tehát az algoritmus polinomiális idej, amit az Edmonds-Karp tétel ki is mond. A következ speciális eset a polinomiális aritmetikai algoritmusok. Az alap matematikai m veletek mind ide tartoznak: az egész számok összeadása, kivonása, szorzása és maradékos osztása. Ezek algoritmusa általános iskolai szint, ezért nem részletezzük. Egy algoritmust viszont kiemelnénk, méghozzá az euklideszi algoritmust, mely két természetes szám legnagyobb közös osztóját keresi meg. Algoritmus: Adott az a és b természetes számok, ami a bemenetünk lesz. Ha a = 0, akkor az algoritmus a b-t adja vissza. Különben meg b-t elosztjuk maradékosan a-val és ez a maradék lesz az r. 13
15 procedure lnko(a,b) while b > 0 do r := b b := a mod b a := r end while return a end procedure Kimenet: A legnagyobb közös osztó. 2. Lemma. Az euklideszi algoritmus polinomiális idej, O(log a + log b) lépésszámmal, ahol max(a, b)-nél nem nagyobb természetes számokra szorítkozunk. Bizonyítás: 0 r < b-b l következik, hogy el bb vagy utóbb leáll az algoritmus. Az kell tehát, hogy polinomiális id ben érjen véget. Ehhez vegyük észre, hogy b a + r > 2r r < b/2 ar < ab/2. Tehát log(ab) iteráció után ab < 1, s mivel a és b N akkor a vagy b = 0. Vagyis le fog állni az algoritmus, s egyértelm, hogy az iterációk polinomálisan elvégezhet ek. Az utolsó speciális eset, amit megemlítünk, a polinomiális lineáris algebrai algoritmusok. Ilyenek a vektorok összeadása, skaláris szorzata és néhány mátrix m velet, mint a szorzás, invertálás és a determinánsok kiszámítása. Az utóbbi kett t részletezzük. Legyen A = (a ij ) tetsz leges n n-es egész számokból álló mátrix és a det(a) polinomiális id ben kiszámítható, vagyis felírható polinomális sok számjeggyel. Algoritmus: A következ pszeudokód csak magát a Gauss-eleminációt írja le, ami egy adott A mátrixot fels háromszögmátrixszá alakít. Annak könny kiszámítani a determinánsát. Bemenet és kimenet az A mátrix. procedure Gauss(A) for k = 1... n 1 do for i = k n do s := a ik a kk for j = k... n do a ij := a ij s a kj end for 14
16 end for end for return A end procedure Kimenet: A fels háromszögmátrix. A Gauss-elimináció egy iterációja O(n 2 ) m velettel jár és n iterációt tesz meg, tehát O(n 3 ) aritmetikai m velet adódik. A gond ott van, hogy osztás is szükséges, méghozzá nem maradékosan, így a leprogamozása is nehézségekkel jár. Véges test felett nem okoz gondot, de a racionális test esetén igen. Az igaz, hogy az eredeti mátrixunk elemei egészek, de az algoritmus menetközben racionális számokat hozhat létre. Ezeket egész számokból álló számpárokként tároljuk. Ahhoz, hogy ez megoldható legyen, meg kell adnunk egy eljárást, amely a törteket részben egyszer sített alakban tárolja. Ez azért szükséges, hogy elkerüljük a jegyek számának túlzott növekedését, ami már nem polinomiális is lehet, de mégis egyszer sítsünk. Hiszen minden osztásnál nem egyszer síthetünk, mivel ahhoz egy euklideszi algoritmus kellene futatni, ami polinomiális, de igen sok többletmunka. Tekintsük ehhez a Gauss-elemináció által el álló mátrixot. Feltehetjük, hogy a kiszemelt elemek (1, 1),..., (n, n) pozícióban helyezkednek el, tehát nem kell sorokat vagy oszlopokat permutálni. Jelölje (a (k) jj ) a k iteráció után létrejött mátrixot, ahol 1 i,j n. A kapott mátrix f átlójában lév elemek legyenek d 1,..., d n. Az A mátrix els k sora és oszlopa által meghatározott részmátrixot jelöljük D (k) -val, és az els k és az i-edik sor, illetve az els k és j-edik oszlop által meghatározott részmátrixot meg jelöljük D (k) ij -vel. Nyilvánvalóan D (k) = D (k 1) kk. 3. Lemma. a (k) ij = det(d(k) ij ) det(d (k) ). Tehát a Lemma alapján kiderül, hogy a Gauss-eliminációban el forduló törtek nevez je és számlálója az eredeti A mátrix egy-egy részmátrixának a determinánsa. Így biztosan elegend polinomiálisan sok jegy a törtek leírásához. 15
17 2.2. Más bonyolultsági osztályok Algoritmusok persze nem csak polinomiális idej osztályba sorolhatók. A kötverkez részben röviden kitérünk más osztályokra is. El is kezdjük az exponenciális idej algortimusokkal. Ilyen id igény algoritmusokat leggyakrabban akkor kapunk, amikor az összes esetet vizsgáljuk. Ez azt jelenti, hogy az id igénye 2 na és 2 nb közé esik, ahol a és b > 0 konstansok. 3. Példa. Nézzük meg, hogy egy G gráf csúcsai kiszínezhet k-e három színnel úgy, hogy a szomszédos csúcsok színei ne egyezzenek meg. Ekkor a triviális megoldás az, hogy sorra vesszük az összes színezést. Tehát 3 n eset, ahol n a G gráf csúcsainak a száma. Minden egyes eset vizsgálata viszont O(n 2 ) id t igényel. Sajnos erre a feladatra nem igazán létezik jobb algoritmus, s t nem is várható. Mint azt mutatni is fogjuk, a gráfszínezés az exponenciális idej problémák egy eléggé speciális részébe esik. Következ osztályunk a lineáris idej ek. Az alapvet aritmetikai algoritmusok nagy része idetartozik, mint például két szám összeadása vagy összehasonlítása. F leg nagyméret bemeneteknél, amelyekkel viszonylag egyszer feladatokat végzünk, fontosak a lineáris idej algoritmusok. Így például a legtöbb adatkezelési ejárás is idetartozik. De a mélységi keresési gráfalgoritmus is ilyen, amivel több nemtriviális gráfelméleti probléma is megoldható lineáris id ben. 12. Deníció. O(n (log n) c ) id igény lineáris algoritmusokat, ahol c konstans, kvázilineárisnak nevezzük. Talán a legfontosabb kvázilineáris id ben megoldható feladat a sorbarendezés, amire több O(n log n) idej algoritmus is van. De b ven akad ilyen a geometriai algoritmusok és a képfeldolgozás területén, mint például egy n elem síkbeli ponthalmaznak a konvex burkát is csak O(n log n) lépésben tudjuk meghatározni. Ha léteznek lineáris idej algoritmusok, akkor léteznek lineáris tárú algoritmusok is. Tárigény szempontjából alapvet osztálynak tekinthet. Idetartoznak azok a gráfalgoritmusok, amelyek leírhatók a csúcsokhoz és az élekhez tartozó címkék változtatásával. A legrövidebb út, a magyar módszer, az összefügg ség vagy éppen az optimális folyam keresése mind ilyen algoritmus. Az adatbányászat területén szinte kizárólag ilyen fajta algoritmusokat használnak. 16
18 Az utolsó két osztály, amivel foglalkozunk a polinomiális tár, PSPACE, és a logaritmikus tár, LOGSPACE. Nyilván minden polinomiális idej algoritmus egyben polinomiális tárigény is, viszont sokkal általánosabb a polinomiális tár. Az említett gráfszínezési algoritmus tárigénye csak polinomiális, s t lineáris, ha a színezéseket lexikograkus sorrendben nézzük. A logaritmikus tár szintén nagyon fontos és sokat vizsgált osztály. Egyrészt függvények kiszámításánál, másrészt eldöntési problémáknál. 3. Megjegyzés. Edward Reingold mutatta meg 2004-ben, hogy a következ probléma logaritmikus tárigény. A bemenet egy G irányítatlan gráf, és ennek két csúcsa s és t. Kérdés, hogy létezik-e s-b l t-be vezet út vagyis, hogy egy komponensben vannak-e. 17
19 3. NP Bevezetése A determinisztikus Turing-gépek részletezése után, rátérünk a nemdeterminisztikusra. Egyetlen különbség van a kett között, méghozzá az, hogy a nemdeterminisztikusak minden helyzetben a vezérl egység állapota és a leolvasott jelek több lehetséges lépést is megengedhetnek. Pontosabban, ugyanazzal a bemenettel egy nemdeterminisztikus Turing-gépnek sok különböz legális számolása lehet. 13. Deníció. A T nemdeterminisztikus Turing-gép t id ben elfogadja az x Σ 0 szót, ha az els szalagra x-et, a többire az üres szót írja, akkor ezzel a bemenettel van legális számolása, amely legfeljebb t lépést tesz meg és az els szalag 0 pozícióban az 1 jel szerepel. Hasonlóan deniáljuk az L nyelv s tár felhasználásának elfogadását. 14. Deníció. Azt mondjuk, hogy a T nemdeterminisztikus Turing-gép felismeri az L Σ 0 nyelvet, ha L csak olyan szavakból áll, amiket T elfogad véges id ben. Ha minden x L szót f( x ) id ben elfogad, ahol f : Z + Z +, akkor L-et f(n) id ben felismeri. Ezeknek a nyelveknek az osztályát N T IM E(f(n))-nel jelöljük. 4. Megjegyzés. Hasonlóan deniáljuk az f(n) tárral felismerhet nyelveket, és N SP ACE(f(n))-nel jelöljük ket. 5. Tétel. A nemdeterminisztikus Turing-géppel felismerhet nyelvek csak a felsorolható nyelvek. 15. Deníció. Azt mondjuk, hogy L-nek tanúja az L 0 nyelv, ha x L akkor és csak akkor, ha y Σ 0 szó, hogy x&y L 0, ahol az & egy olyan új jelként funkciónál ami elválasztja x és y szavakat. 6. Tétel. Legyen f jól számolható függvény és g(n) n. Ekkor minden L NT IME(f(n)) nyelvnek O(f(n)) hosszúságú lineáris tanúja van, és ha van f(n) hosszúságú, g(n) idej tanúja, akkor L NT IME(g(n+1+f(n))). Az el z tételb l következik, hogy bármilyen L Σ 0 nyelvre igaz a következ : Polinomiális id ben felismerhet L nyelv nemdeterminisztikus Turinggépen. Ez ekvivalens azzal, hogy L-nek létezik polinomiális hosszúságú és idej tanúja. Az ilyen tulajdonságú nyelvek osztályát jelöljük NP-vel. Ez az osztály fontos algoritmikus problémák nagy hányadát tartalmazza, aminek egy részével itt most foglalkozni fogunk. 18
20 5. Megjegyzés. Minden determinisztikus Turing-gép egyben nemdeterminisztikus is, nyilván igaz rá, hogy DT IME(f(n)) NT IME(f(n)). A következ példákban feltesszük, hogy a gráfok mind egyszer gráfok, tehát nincs bennük többszörös és hurokél. Egy gráf összefügg sége: Tanúja a feszít fa, és P-beli feladat. Egy gráf síkbarajzolhatósága: Triviális tanú egy konkrét lerajzolás. Ez szintén P-beli és Walter Schnyder adott meg erre egy egyszer lineáris idej algoritmust 1990-ben, Hopcroft és Tarjan polinomiális algoritmusa alapján. Hamilton-kör létezése: Tanúja egy Hamilton-kör megadása. Erre a feladatra már nem ismert polinomiális algoritmus, tehát NP-beli NP-teljes Miután megismerkedtünk az NP fogalmával is, mélyebbre megyünk és megismerkedünk az NP-teljes fogalmával. Ehhez viszont szükségünk van újabb fogalmak deniálására. 16. Deníció. Azt mondjuk, hogy az L 1 Σ 1 nyelv polinomiálisan visszavezethet az L 2 Σ 2 nyelvre, ha f : Σ 1 Σ 2 polinomiális idej függvény, hogy x Σ 1 szóra x L 1 f(x) L Megjegyzés. A denícióból látszik, hogy teljesül a tranzitivitás, tehát ha L 1 visszavezethet L 2 -re és L 2 visszavezethet L 3 -ra, akkor L 1 visszavezethet L 3 -ra. 7. Tétel. Egy P-beli nyelvre minden nyelv ami polinomiálisan visszavezethet rá szintén P-beli. Egy NP-beli nyelvre minden nyelv ami polinomiálisan visszavezethet rá szintén NP-beli. Ezek alapján megfogalmazhatjuk az NP-teljességet. Tehát egy olyan NP-beli L nyelvet nevezünk NP-teljesnek, amire minden NP-beli nyelv polinomiálisan visszavezethet. Ez az osztály a legbonyolultabb NP-beli nyelv. Ha egyetlen NP-teljes nyelvr l be tudnánk bizonyítani, hogy P-ben van, akkor abból máris következne, hogy P = NP. 19
21 8. Tétel. Ha egy NP-teljes L 1 nyelv polinomiálisan visszavezethet egy L 2 NP-beli nyelvre, abból következik, hogy L 2 is NP-teljes. Nem magától értet d, hogy létezik NP-teljes nyelv. De egy NP-teljes nyelv megadásával, az el z tétel alapján polinomiális visszavezetéssel sok más problémáról is bebizonyítható, hogy NP-teljes. Egy ilyen NP-teljes nyelv a SAT, ami a kielégíthet konjunktív normálformák által alkotott nyelv, amit Cook és Levin 1971-ben bizonyítottak be és ezzel együtt ki is mondták tételként. A SAT nyelv alapján már több NP-teljes nyelvet létrehozhatunk. Ezeknek a kifejtése következik NP-teljes feladatok A továbbiakban olyan problémákkal foglalkozunk, amikr l megmutatjuk, hogy NP-teljesek, és nagyrészük kombinatorikai vagy algebrai feladatok. Mivel egy NP-teljes L nyelv csak akkor lehet P-ben, ha P = NP, de tudjuk, hogy ez jelenleg nem bizonyított. Ezért egy nyelv NP-teljességét úgy értelmezhetjük, hogy az nem dönthet el polinomiális id ben. Ezek bizonyítására viszont szükségünk lesz néhány fogalom deniálására. 17. Deníció. Egy f : 0, 1 n 0, 1 leképezést Boole-függvénynek nevezünk, ahol az 1-est tekintjük az IGAZ, és a 0-át a HAMIS logikai értéknek. A függvény váltózóit logikai változónak vagy Boole-változóknak nevezzük. 18. Deníció. A konjunkció (logikai és: ), a diszunkció (logikai vagy: ) és a negáció (logikai tagadás: ) m veleteivel felírt Boole-függvényt nevezzük Boole-polinomnak és B-vel jelöljük. 19. Deníció. Egy olyan Boole-polinomot, amely csak m veletet tartalmaz elemi konjunkciónak nevezünk és diszjunktív normálformának nevezünk azt, mely csak m velettel összekötött elemi konjunkciókból áll. 20. Deníció. Diszjunktív k-normálforma alatt olyan diszjunktív normálformát értünk, melyben minden elemi konjunkcióban legfeljebb k változó van. 7. Megjegyzés. A m veletek felcserélésével deniáljuk az elemi diszjunkciót és a konjunktív normálformát. 21. Deníció. Kielégíthet nek nevezünk egy olyan Boole-polinomot, amely által deniált Boole-függvény nem azonosan 0. 20
22 Az el z deníciók segítségével bevezetjük a ksat-ot, ami a kielégíthet konjunktív k-normálformák által alkotott nyelv. Továbbá legyen a SAT-k az a nyelv, mely olyan kielégíthet konjunktív normálformákból áll, amiben minden változó legfeljebb k elemi diszjunkcióban fordul el. Ennek kapcsán kimondunk néhány tételt, ami segíti a kés bbi bizonyításainkat. 9. Tétel. A 3SAT NP-teljes nyelv. Viszont a 2SAT nyelv már P-ben van. 10. Tétel. A SAT-3 NP-teljes nyelv. Viszont a SAT-2 nyelv már P-ben van. 8. Megjegyzés. Természetesen a nehezebb problémák, mint 4SAT, 5SAT, SAT-4, SAT-5 stb. mind szintén NP-teljesek. Az új fogalmak tisztázása után tekintsük az els feladatot, az úgy nevezett lefogási feladatot. Ez egy alapvet kombinatorikai feladat. Adott egy véges S halmaz részhalmazainak rendszere A 1,..., A m, illetve egy k N szám. Ebb l adódó feladat, hogy van-e legfeljebb k elem részhalmaza S-nek, amely minden részhalmazát metszi? 11. Tétel. A lefogási feladat NP-teljes. Bizonyítás: A 3SAT-ot visszavezetjük erre a problémára. Adott B konjunktív 3-normálformához megkonstruálunk egy halmazrendszert a következ módon: az alaphalmaz legyen a B-beli változójelek és azok negáltjainak halmaza, x 1,... x n, x 1,..., x n. B minden tagjához vegyük a benne el forduló változójelek és negáltjainak halmazát, és ezen kívül az x i, x i halmazokat is. Az így konstruált halmazrendszernek az elemei akkor és csak akkor foghatók le legfeljebb n ponttal, ha a normálforma kielégíthet. 9. Megjegyzés. A lefedési feladat ehhez hasonló, s ha az adott részhalmazok legfeljebb 4 elem, akkor az már NP-teljes. A következ feladat, az úgynevezett (k-)partíció feladat, amit pont az el z megjegyzés alapján bizonyítjuk. Adott egy véges S halmaz részhalmazainak rendszere A 1,..., A m, illetve k-partíció feladat esetén még egy k N szám is. Kiválasztható-e egy olyan részrendszer A i1,..., A ik, amely diszjunkt halmazokból áll és azok uniója a teljes S halmaz? Az ilyen diszjunkt halmazokat nevezzük partíciónak. 12. Tétel. A (k-)partíció feladat NP-teljes. 21
23 Bizonyítás: A legfeljebb 4 elem halmazos lefedési problémára vezetjük vissza a k-partíció feladatot. Tehát adott egy S véges halmaz legfeljebb 4 elem részhalmazainak rendszere és egy k természetes szám. El akarjuk dönteni, hogy kiválasztható-e k darab részhalmaz úgy, hogy az uniójuk maga az S legyen. Ennek érdekében adjuk hozzá a rendszerhez a részhalmazoknak az összes részhalmazait, felhasználva azt, hogy a halmazok korlátosak, tehát a számuk legfeljebb 2 4 -szeresére n. Nyilvánvaló, hogy ha az eredetit k darab részhalmaza lefedi S-et, akkor a b vítettb l alkalmas k S-nek egy partícióját adja. Ezzel beláttuk, hogy NP-teljes a k-partíció feladat. Folytatva a k-partíció feladatot visszavezetjük a partíció feladatra. Legyen U egy S-t l diszjunkt k elem halmaz és az új alaphalmaz legyen S U. A részhalmazok legyenek az A i u halmazok, ahol u U. Ha az új halmazrendszerb l kiválaszthatók az alaphalmaz egy partícióját alkotó halmazok, akkor ezek száma k, és az S-be es részei S-nek egy partícióját alkotják k halmazra. Ezt megfordítva, S minden k darab A i halmaz partíciója az S U halmaznak az új halmazrendszerbeli halmazoknak egy partícióját adja. Tehát NP-teljes a partíció feladat. 13. Tétel. Egy gráf 3 színnel való színezése NP-teljes feladat. Bizonyítás: Legyen adva egy B konjunktív 3-normálforma, amihez készítünk egy G gráfot, amely pontosan akkor színezhet ki 3 színnel, ha B kielégíthet. Els nek a G gráf pontjai közé felvesszük a literálokat, egyetlen változóból álló Boole-polinomokat, és mindegyik változót a negáltjával összekötjük. Majd hozzáveszünk még két pontot, legyen ez u és v, amiket összekötünk egymással, illetve u-t az összes többi változóval és a negáltjáival is. Végül, minden z i1 z i2 z i3 elemi diszjunkcióhoz hozzárendelünk egy-egy ötszöget. Kett szomszédos csúcsát v-vel, a maradék csúcsait z i1 -gyel, z i2 -vel és z i3 -mal kötjük össze. Azt mondjuk, hogy az így kapott G gráf, akkor és csak akkor színezhet ki 3 színnel, ha B kielégíthet. Fontos észrevétel, hogy ha valamely z i1 z i2 z i3 elemi diszjunkcióra a z i1, z i2, z i3 és v pontok ki vannak színezve 3 színnel, akkor ez a színezés csak akkor továbbítható a megfelel ötszögre, ha a négy pont színe nem egyezik meg. Tegyük fel, hogy B kielégíthet és tekintsük a következ értékadást. Legyen piros szín az igaz literálok, és kék a többi. Illetve legyen u sárga, v meg kék. Mivel minden elemi diszjunkcióban kell hogy legyen egy piros pont, így ez a színezés kiterjeszthet az ötszögekre és helyes színezés lesz. 22
24 Megfordítva, tegyük fel, hogy a G gráf kiszínezhet 3 színnel, legyenek a színek piros, sárga és kék. Feltehetjük, hogy a v pont kék és az u meg sárga. Így a literáloknak megfelel pontok csak kékek és pirosak lehetnek, és minden változó és a negáltja közül az egyik piros, a másik kék. Mivel az ötszögek is ki vannak színezve, ebból következik, hogy minden elemi diszjunkcióban van egy piros csúcs. De egyben azt is jelenti, hogy ha pirosokat igaznak vesszük, egy olyan értékadást kapunk, mely B-t kielégíti. Algoritmus: A 3. példának megfelel en nézzük a következ algoritmust, amely megtalálja egy gráf legkevesebb színb l álló színezését. Majd az alábbi gráfokra futatjuk a programunkat. Bemenetünk a G = (V, E) gráf, kimenetünk meg a minimális színek száma. (A következ peszeudokódot és a C++ programot, a színezési feladat megoldására teljes mértékben én alkottam.) 23
25 procedure Szin(G) for i = 1... V do j := 1 while j < V do if ((i, j) E) & (i j) then if i szine = 0 then vagyis még nincs szine i szine := 1 end if if i szine = j szine then i szine := i szine +1 j := 0 end if end if j = j + 1 end while end for minszin := színek számával. return minszin end procedure A pszeudokód alapján létrehoztam az alábbi C++ programot: #include <iostream> #include <conio. h> #include <c s t r i n g > #include <vector > using namespace std ; i n t main ( ) i n t cs, el, sz, s ; vector <int > v ; cout << "Adja meg a csucsok es e l e k szamat! " << endl ; c i n >> cs ; c i n >> e l ; i n t T[ cs ] [ cs ] ; memset (T, 0, s i z e o f (T) ) ; 24
26 f o r ( i n t i =0; i<cs ; i++) v. push_back ( 0 ) ; cout << "Adja meg a csucs uj szomszedjainak szamat! " << endl ; c i n >> sz ; f o r ( i n t j =0; j<sz ; j++) c i n >> s ; T[ i ] [ s ]=1; T[ s ] [ i ]=1; cout << endl ; i n t j ; f o r ( i n t i =0; i<cs ; i++) j =0; while ( j<cs ) i f ( (T[ i ] [ j ]==1) && ( i!= j ) ) i f ( v [ i ]==0) v [ i ]=1; i f ( v [ i ]==v [ j ] ) v [ i ]=v [ i ]+1; j = 1; j ++; i n t minszin ; minszin =0; 25
27 f o r ( i n t i =0; i<cs ; i++) i f ( minszin<v [ i ] ) minszin=v [ i ] ; f o r ( i n t i =0; i<cs ; i++) cout << v [ i ] << " " ; cout endl << " Legalabb ennyi s z i n k e l l : " << minszin << endl ; getch ( ) ; Kimenet: 3, illetve a másodiknál: 4 Mint azt már korábban a példában is mondtuk, nem igazán létezik jobb algoritmus, minthogy végig nézzük az összes lehet séget. Ez a program se sokkal különb, s t még lassabb, hiszen nem csak 3 színre nézi, hanem a lehet legkevesebb színre. A két gráf csak 1 élben tért el egymástól, mégis többszörösére n tt a futási id. Teljes gráf esetén már n n eset keletkezik, ahol n a csúcsok száma, és minden egyes eset O(n 2 ) id t igényel. Vagyis NP-beli az algoritmus 26
28 4. Összefoglaló NP-nehéznek nevezzük azt a függvényt, amely nem feltétlenül van NP-ben, de minden NP-beli probléma visszavezethet rá úgy, hogy a függvény értékének a kiszámítását egyetlen lépésnek tekintjük a RAM-gépnél. Ez egy bonyolultabb Turing-gép, viszont a valódi számítógéphez közelebb álló matematikai modell. Ekkor bármely NP-beli probléma polinomiális id ben megoldható. Az NP-teljes nyelvek karakterisztikus függvénye NP-nehéz, de vannak határozottan nehezebbek, mint bármely NP-beli probléma, mint például egy n n-es GO táblán egy állásról eldönteni, hogy ki lesz a gy ztes. Az operációkutatás elég sok diszkrét optimalizálási problémájáról derült ki, hogy NP-nehéz. Ilyen például az utazóügynök probléma is, amelyben egy gráf minden éléhez hozzárendelünk egy költséget, és így keressük a minimális súlyú Hamilton-kört. De sok leszámlálási probléma is NP-nehéz, mint például egy gráfban a teljes párosítások, a Hamilton-körök, vagy éppen a helyes színezések számának a meghatározása. Általában a felvet d NP-beli problémáról vagy az derül ki, hogy NP-teljes, vagy az, hogy P-beli. Aránylag ritka az olyan felvet d probléma, melyr l nem sikerül rövid id n belül belátni sem azt, hogy P-beli, sem azt, hogy NP-beli. Ezért is számít igen komoly eredménynek, hogy 2015-ben Babai László az egyik problémáról, konkrétan a gráf-izomora problémáról, megmutatta, hogy közelebb áll a P-beliekhez, mint az NP-beliekhez. Ha egy problémáról kiderül, hogy NP-teljes, akkor nem túl valószín, hogy találunk egy hatékony polinomiális idej algoritmust rá, mint a párosítás problémára. Az ilyen problémák viszont elég fontosak lehetnek, ezért napjainkban is dinamikusan fejl dnek az ezekkel foglalkozó területek. Így egy-egy NP-teljes problémához különböz típusú részeredmények születnek, speciális osztályok, melyekre léteznek polinomiálisan megoldható algoritmusok. Ilyen osztály a konstans favastagságú gráfok osztálya a Hamilton-kör létezésére, ami lineáris idej. Vagy olyan exponenciális algoritmusok, melyek kis bemenetekre jól használhatóak, ilyen a színezési algoritmus. Persze néha a feladat bonyolultsága az, ami lényeges, mint a kriptográánál. Láthatóan még sok rejlik ebben a témában és hálás vagyok, hogy a regény kapcsán megismerkedhettem a híres P = N P problémával, ami felkeltette az érdekl désemet. Így a szakdolgozatom írása során megismerkedtem egy új matematikai területtel, melyr l eddig még csak említ legesen hallottam. A témát kutatva új ismeretekre tettem szert és azokat kombináltam az el z leg 27
29 megszerzett tudásommal. Ezek segítségével dolgoztam fel a problémához kapcsolódó fogalmakat és feladatokat. Úgy gondolom, hogy ezeknek az új információknak a jöv ben is sok hasznát vehetem. 28
30 5. Irodalomjegyzék Hivatkozások [1] Higasino Keigo: X a gyilkos ismeretlen, Libri kiadó 2012 [2] Király Zoltán: Algoritmuselmélet, Typotex kiadó 2014 [3] Lovász László: Algoritmusok bonyolultsága, Typotex kiadó 2014 [4] Házy Attila, Nagy Ferenc: Adatstruktúrák és algoritmusok, 2009 [5] Ivanyos Gábor, Rónyai Lajos, Szabó Réka: Algoritmusok, Typotex kiadó 1998 [6] [7] [8] [9] [10] 29
Deníciók és tételek a beugró vizsgára
Deníciók és tételek a beugró vizsgára (a szóbeli viszgázás jogáért) Utolsó módosítás: 2008. december 2. 2 Bevezetés Számítási problémának nevezünk egy olyan, a matematika nyelvén megfogalmazott kérdést,
definiálunk. Legyen egy konfiguráció, ahol és. A következő három esetet különböztetjük meg. 1. Ha, akkor 2. Ha, akkor, ahol, ha, és egyébként.
Számításelmélet Kiszámítási problémának nevezünk egy olyan, a matematika nyelvén megfogalmazott kérdést, amire számítógéppel szeretnénk megadni a választ. (A matematika nyelvén precízen megfogalmazott
Algoritmuselmélet. Bonyolultságelmélet. Katona Gyula Y.
Algoritmuselmélet Bonyolultságelmélet Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 12. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet
Államvizsga kérdések a matematikus szakon, 2001.
Államvizsga '01, 12. tétel: Algoritmusok bonyolultsága... 1 Államvizsga kérdések a matematikus szakon, 2001. 10. tétel : Algoritmusok bonyolultsága (Számítási modellek, véges automaták, Turinggépek, eldönthet
Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 13.
Algoritmuselmélet NP-teljes problémák Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 13. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet
Számításelmélet. Will június 13. A kiszámíthatóság fogalma és a Church-Turing tézis
Számításelmélet Will 2010. június 13. A kiszámíthatóság fogalma és a Church-Turing tézis. A Turing gép, mint algoritmus modell. A rekurzív és a rekurzívan felsorolható nyelvek. Algoritmikusan eldönthet
Számításelmélet. Második előadás
Számításelmélet Második előadás Többszalagos Turing-gép Turing-gép k (konstans) számú szalaggal A szalagok mindegyike rendelkezik egy független író / olvasó fejjel A bemenet az első szalagra kerül, a többi
Algoritmuselmélet 12. előadás
Algoritmuselmélet 12. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Április 9. ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek
NP-teljesség röviden
NP-teljesség röviden Bucsay Balázs earthquake[at]rycon[dot]hu http://rycon.hu 1 Turing gépek 1/3 Mi a turing gép? 1. Definíció. [Turing gép] Egy Turing-gép formálisan egy M = (K, Σ, δ, s) rendezett négyessel
Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése
Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése Dr. Kallós Gábor 2014 2015 1 Az Ordó jelölés Azt mondjuk, hogy az f(n) függvény eleme az Ordó(g(n)) halmaznak, ha van olyan c konstans (c
Logika és számításelmélet. 11. előadás
Logika és számításelmélet 11. előadás NP-teljesség Emlékeztetőül: NP-teljes nyelv Egy L probléma NP-teljes (a polinom idejű visszavezetésre nézve), ha L NP L NP-nehéz, azaz minden L NP esetén L p L. Azaz
A Formális nyelvek vizsga teljesítése. a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon:
A Formális nyelvek vizsga teljesítése a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon: 1. Öt kis kérdés megválaszolása egyenként 6 pontért, melyet minimum 12
A Formális nyelvek vizsga teljesítése. a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon:
A Formális nyelvek vizsga teljesítése a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon: 1. Öt rövid kérdés megválaszolása egyenként 6 pontért, melyet minimum
Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.
Nagyságrendek Kiegészítő anyag az Algoritmuselmélet tárgyhoz (a Rónyai Ivanyos Szabó: Algoritmusok könyv mellé) Friedl Katalin BME SZIT friedl@cs.bme.hu 018. február 1. Az O, Ω, Θ jelölések Az algoritmusok
Bonyolultságelmélet. Thursday 1 st December, 2016, 22:21
Bonyolultságelmélet Thursday 1 st December, 2016, 22:21 Tárbonyolultság A futásidő mellett a felhasznált tárterület a másik fontos erőforrás. Ismét igaz, hogy egy Ram-program esetében ha csak a használt
Bonyolultságelmélet. Monday 26 th September, 2016, 18:50
Bonyolultságelmélet Monday 26 th September, 2016, 18:50 A kiszámítás modelljei 2 De milyen architektúrán polinom? A kiszámításnak számos (matematikai) modellje létezik: Általános rekurzív függvények λ-kalkulus
Turing-gép május 31. Turing-gép 1. 1
Turing-gép 2007. május 31. Turing-gép 1. 1 Témavázlat Turing-gép Determinisztikus, 1-szalagos Turing-gép A gép leírása, példák k-szalagos Turing-gép Univerzális Turing-gép Egyéb Turing-gépek Nemdeterminisztikus
Az informatika elméleti alapjai 2 elővizsga december 19.
Név (aláírás): Az informatika elméleti alapjai 2 elővizsga 2017. december 19. A vizsgadolgozat 1. feladatára helyes válaszonként 1-1 pont kapható, a 2-3. feladatok megoldásáért 6-6 pont, a 4. feladatra
Algoritmusok bonyolultsága
Algoritmusok bonyolultsága 5. előadás http://www.ms.sapientia.ro/~kasa/komplex.htm 1 / 27 Gazdaságos faváz Kruskal-algoritmus Joseph Kruskal (1928 2010) Legyen V = {v 1, v 2,..., v n }, E = {e 1, e 2,...,
Algoritmusok bonyolultsága
Algoritmusok bonyolultsága 11. előadás http://www.ms.sapientia.ro/~kasa/komplex.htm () 1 / 1 NP-telesség Egy L nyelv NP-teles, ha L NP és minden L NP-re L L. Egy Π döntési feladat NP-teles, ha Π NP és
Lineáris algebra és a rang fogalma (el adásvázlat, szeptember 29.) Maróti Miklós
Lineáris algebra és a rang fogalma (el adásvázlat, 2010. szeptember 29.) Maróti Miklós Ennek az el adásnak a megértéséhez a következ fogalmakat kell tudni: (1) A mátrixalgebrával kapcsolatban: számtest
ALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára
ALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára 7. Előadás: Hálózatok, P- és N P-teljes problémák Előadó: Hajnal Péter 2015. tavasz 1. Hálózatok és egy P-teljes probléma Emlékeztető.
1. Bevezetés. A számítógéptudomány ezt a problémát a feladat elvégzéséhez szükséges erőforrások (idő, tár, program,... ) mennyiségével méri.
Számításelmélet Dr. Olajos Péter Miskolci Egyetem Alkalmazott Matematika Tanszék e mail: matolaj@uni-miskolc.hu 2011/12/I. Készült: Péter Gács and László Lovász: Complexity of Algorithms (Lecture Notes,
Diszkrét matematika II. gyakorlat
Diszkrét matematika II. gyakorlat 9. Gyakorlat Szakács Nóra Helyettesít: Bogya Norbert Bolyai Intézet 2013. április 11. Bogya Norbert (Bolyai Intézet) Diszkrét matematika II. gyakorlat 2013. április 11.
Lineáris algebra 2. Filip Ferdinánd december 7. siva.banki.hu/jegyzetek
Lineáris algebra 2 Filip Ferdinánd filipferdinand@bgkuni-obudahu sivabankihu/jegyzetek 2015 december 7 Filip Ferdinánd 2016 februar 9 Lineáris algebra 2 1 / 37 Az el adás vázlata Determináns Determináns
7. gyakorlat. Lineáris algebrai egyenletrendszerek megoldhatósága
7. gyakorlat Lineáris algebrai egyenletrendszerek megoldhatósága Egy lineáris algebrai egyenletrendszerrel kapcsolatban a következ kérdések merülnek fel: 1. Létezik-e megoldása? 2. Ha igen, hány megoldása
Felvételi vizsga mintatételsor Informatika írásbeli vizsga
BABEȘ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR A. tételsor (30 pont) Felvételi vizsga mintatételsor Informatika írásbeli vizsga 1. (5p) Egy x biten tárolt egész adattípus (x szigorúan pozitív
1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje
1. Alapfogalmak 1.1. Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt
DiMat II Végtelen halmazok
DiMat II Végtelen halmazok Czirbusz Sándor 2014. február 16. 1. fejezet A kiválasztási axióma. Ismétlés. 1. Deníció (Kiválasztási függvény) Legyen {X i, i I} nemüres halmazok egy indexelt családja. Egy
Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás
Algoritmusok Tervezése 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás Mi az algoritmus? Lépések sorozata egy feladat elvégzéséhez (legáltalánosabban) Informálisan algoritmusnak nevezünk bármilyen jól definiált
Algoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y.
Algoritmuselmélet Mélységi keresés és alkalmazásai Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 9. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet
Diszkrét matematika 1. középszint
Diszkrét matematika 1. középszint 2017. sz 1. Diszkrét matematika 1. középszint 3. el adás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Mérai László diái alapján Komputeralgebra
Relációk. 1. Descartes-szorzat. 2. Relációk
Relációk Descartes-szorzat. Relációk szorzata, inverze. Relációk tulajdonságai. Ekvivalenciareláció, osztályozás. Részbenrendezés, Hasse-diagram. 1. Descartes-szorzat 1. Deníció. Tetsz leges két a, b objektum
3. el adás: Determinánsok
3. el adás: Determinánsok Wettl Ferenc 2015. február 27. Wettl Ferenc 3. el adás: Determinánsok 2015. február 27. 1 / 19 Tartalom 1 Motiváció 2 A determináns mint sorvektorainak függvénye 3 A determináns
A digitális számítás elmélete
A digitális számítás elmélete 8. előadás ápr. 16. Turing gépek és nyelvtanok A nyelvosztályok áttekintése Turing gépek és a természetes számokon értelmezett függvények Áttekintés Dominó Bizonyítások: L
Algoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y.
Algoritmuselmélet Gráfok megadása, szélességi bejárás, összefüggőség, párosítás Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 2. előadás
A félév során előkerülő témakörök
A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok
HALMAZELMÉLET feladatsor 1.
HALMAZELMÉLET feladatsor 1. Egy (H,, ) algebrai struktúra háló, ha (H, ) és (H, ) kommutatív félcsoport, és teljesül az ún. elnyelési tulajdonság: A, B H: A (A B) = A, A (A B) = A. A (H,, ) háló korlátos,
Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 12.
Algoritmuselmélet NP-teljes problémák Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 12. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet
Diszkrét matematika I.
Diszkrét matematika I. középszint 2014. ősz 1. Diszkrét matematika I. középszint 8. előadás Mérai László diái alapján Komputeralgebra Tanszék 2014. ősz Elemi számelmélet Diszkrét matematika I. középszint
LINEÁRIS ALGEBRA (A, B, C) tematika (BSc) I. éves nappali programtervező informatikus hallgatóknak évi tanév I. félév
LINEÁRIS ALGEBRA (A, B, C) tematika (BSc) I éves nappali programtervező informatikus hallgatóknak 2010-2011 évi tanév I félév Vektoriális szorzat és tulajdonságai bizonyítás nélkül: Vegyes szorzat és tulajdonságai
Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.
HA 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) HA 2 Halmazok HA 3 Megjegyzések A halmaz, az elem és az eleme fogalmakat nem definiáljuk, hanem alapfogalmaknak
Ítéletkalkulus. 1. Bevezet. 2. Ítéletkalkulus
Ítéletkalkulus Logikai alapfogalmak, m veletek, formalizálás, logikai ekvivalencia, teljes diszjunktív normálforma, tautológia. 1. Bevezet A matematikai logikában az állításoknak nem a tényleges jelentésével,
Nagy Gábor compalg.inf.elte.hu/ nagy
Diszkrét matematika 3. estis képzés 2016. ősz 1. Diszkrét matematika 3. estis képzés 3. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék
Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1
Halmazok 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 2 A fejezet legfontosabb elemei Halmaz megadási módjai Halmazok közti műveletek (metszet,
Turing-gépek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT augusztus 16.
Turing-gépek Kiegészítő anyag az Algoritmuselmélet tárgyhoz (a Rónyai Ivanyos Szabó: Algoritmusok könyv mellé) Friedl Katalin BME SZIT friedl@cs.bme.hu 2017. augusztus 16. A veremautomatáknál az, hogy
ALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára. 11. Előadás
ALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára 11. Előadás Előadó: Hajnal Péter Jegyzetelő: Hajnal Péter 2011. április 26. 1. Mahaney-tétel bizonyítása Emlékeztető. Mahaney-tétel
A Számítástudomány alapjai
Mechatronika, Optika és Gépészeti Informatika Tanszék A Számítástudomány alapjai Szemelvények az Elméleti Számítástudomány területéről Fogalmak: Számítástechnika Realizáció, technológia Elméleti számítástudomány
Turing-gépek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz VIII. Friedl Katalin BME SZIT március 18.
Turing-gépek Kiegészítő anyag az Algoritmuselmélet tárgyhoz VIII. (a Rónyai Ivanyos Szabó: Algoritmusok könyv mellé) Friedl Katalin BME SZIT friedl@cs.bme.hu 2016. március 18. A veremautomatáknál az hogy
MATEMATIKA Emelt szint 9-12. évfolyam
MATEMATIKA Emelt szint 9-12. évfolyam évfolyam 9. 10. 11. 12. óra/tanév 216 216 216 224 óra/hét 6 6 6 7 Az iskolai matematikatanítás célja, hogy hiteles képet nyújtson a matematikáról mint tudásrendszerről
Függvények növekedési korlátainak jellemzése
17 Függvények növekedési korlátainak jellemzése A jellemzés jól bevált eszközei az Ω, O, Θ, o és ω jelölések. Mivel az igények általában nemnegatívak, ezért az alábbi meghatározásokban mindenütt feltesszük,
Permutációk véges halmazon (el adásvázlat, február 12.)
Permutációk véges halmazon el adásvázlat 2008 február 12 Maróti Miklós Ennek az el adásnak a megértéséhez a következ fogalmakat kell tudni: ismétlés nélküli variáció leképezés indulási és érkezési halmaz
Polinomok (el adásvázlat, április 15.) Maróti Miklós
Polinomok (el adásvázlat, 2008 április 15) Maróti Miklós Ennek az el adásnak a megértéséhez a következ fogalmakat kell tudni: gy r, gy r additív csoportja, zéruseleme, és multiplikatív félcsoportja, egységelemes
Predikátumkalkulus. 1. Bevezet. 2. Predikátumkalkulus, formalizálás. Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák.
Predikátumkalkulus Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák. 1. Bevezet Nézzük meg a következ két kijelentést: Minden almához tartozik egy fa, amir l leesett. Bármely
Totális Unimodularitás és LP dualitás. Tapolcai János
Totális Unimodularitás és LP dualitás Tapolcai János tapolcai@tmit.bme.hu 1 Optimalizálási feladat kezelése NP-nehéz Hatékony megoldás vélhetően nem létezik Jó esetben hatékony algoritmussal közelíteni
Algoritmuselmélet 18. előadás
Algoritmuselmélet 18. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Május 7. ALGORITMUSELMÉLET 18. ELŐADÁS 1 Közelítő algoritmusok
Modern irányzatok a bonyolultságelméletben: éles korlátok és dichotómia tételek
Modern irányzatok a bonyolultságelméletben: éles korlátok és dichotómia tételek Marx Dániel Paraméteres Algoritmusok és Bonyolultság Kutatócsoport Informatikai Kutatólaboratórium SZTAKI 05. június 5. Kombinatorikus
15. LINEÁRIS EGYENLETRENDSZEREK
15 LINEÁRIS EGYENLETRENDSZEREK 151 Lineáris egyenletrendszer, Gauss elimináció 1 Definíció Lineáris egyenletrendszernek nevezzük az (1) a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a
Logika és számításelmélet. 12. előadás
Logika és számításelmélet 12. előadás NP lehetséges szerkezete NP-köztes nyelv L NP-köztes, ha L NP, L P és L nem NP-teljes. Ladner tétele Ha P NP, akkor létezik NP-köztes nyelv. (biz. nélkül) NP-köztes
Numerikus módszerek 1.
Numerikus módszerek 1. 3. előadás: Mátrixok LU-felbontása Lócsi Levente ELTE IK 2013. szeptember 23. Tartalomjegyzék 1 Alsó háromszögmátrixok és Gauss-elimináció 2 Háromszögmátrixokról 3 LU-felbontás Gauss-eliminációval
Shor kvantum-algoritmusa diszkrét logaritmusra
Ivanyos Gábor MTA SZTAKI Debrecen, 20 január 2. Tartalom és kvantum-áramkörök 2 A diszkrét log probléma Kvantum bit Állapot: a B = C 2 komplex euklideszi tér egy egységvektora: az a 0 + b szuperpozíció
A matematika nyelvér l bevezetés
A matematika nyelvér l bevezetés Wettl Ferenc 2012-09-06 Wettl Ferenc () A matematika nyelvér l bevezetés 2012-09-06 1 / 19 Tartalom 1 Matematika Matematikai kijelentések 2 Logikai m veletek Állítások
Tesztkérdések az ALGORITMUSELMÉLET tárgyból, 2001/2002 2. félév
1. oldal, összesen: 6 Tesztkérdések az ALGORITMUSELMÉLET tárgyból, 2001/2002 2. félév NÉV:... 1. Legyenek,Q,M páronként diszjunkt halmazok; /= Ř, Q > 2, M = 3. Egyszalagos, determinisztikus Turing gépnek
Bonyolultságelmélet feladatok
Bonyolultságelmélet feladatok Hajgató Tamás Iván Szabolcs Updated: November 26, 2009 1 Függvények nagyságrendje A következő definíciókat használjuk, ahol f, g két N N függvény (mindig fel fogjuk tenni,
Vektorterek. Wettl Ferenc február 17. Wettl Ferenc Vektorterek február / 27
Vektorterek Wettl Ferenc 2015. február 17. Wettl Ferenc Vektorterek 2015. február 17. 1 / 27 Tartalom 1 Egyenletrendszerek 2 Algebrai struktúrák 3 Vektortér 4 Bázis, dimenzió 5 Valós mátrixok és egyenletrendszerek
Algoritmuselmélet 1. előadás
Algoritmuselmélet 1. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Február 11. ALGORITMUSELMÉLET 1. ELŐADÁS 1 Források
Ütemezési modellek. Az ütemezési problémák osztályozása
Ütemezési modellek Az ütemezési problémák osztályozása Az ütemezési problémákban adott m darab gép és n számú munka, amelyeket az 1,..., n számokkal fogunk sorszámozni. A feladat az, hogy ütemezzük az
Diszkrét matematika 2.
Diszkrét matematika 2. 2018. november 23. 1. Diszkrét matematika 2. 9. előadás Fancsali Szabolcs Levente nudniq@cs.elte.hu www.cs.elte.hu/ nudniq Komputeralgebra Tanszék 2018. november 23. Diszkrét matematika
Logika és számításelmélet
Logika és számításelmélet 12. előadás Irányítatlan/irányított Hamilton út/kör Hamilton út/kör Adott egy G = (V, E) irányítatlan / irányított gráf ( V = n). Egy P = v i1,..., v in felsorolása a csúcsoknak
7. gyakorlat. Lineáris algebrai egyenletrendszerek megoldhatósága
7. gyakorlat Lineáris algebrai egyenletrendszerek megoldhatósága Egy lineáris algebrai egyenletrendszerrel kapcsolatban a következ kérdések merülnek fel: 1. Létezik-e megoldása? 2. Ha igen, hány megoldása
1. A k-szerver probléma
1. A k-szerver probléma Az egyik legismertebb on-line probléma a k-szerver probléma. A probléma általános deníciójának megadásához szükség van a metrikus tér fogalmára. Egy (M, d) párost, ahol M a metrikus
MATEMATIKA. 5 8. évfolyam
MATEMATIKA 5 8. évfolyam Célok és feladatok A matematikatanítás célja és ennek kapcsán feladata: megismertetni a tanulókat az őket körülvevő konkrét környezet mennyiségi és térbeli viszonyaival, megalapozni
2018, Diszkrét matematika
Diszkrét matematika 3. előadás mgyongyi@ms.sapientia.ro Sapientia Egyetem, Matematika-Informatika Tanszék Marosvásárhely, Románia 2018, őszi félév Miről volt szó az elmúlt előadáson? számtartományok: természetes
Gibbs-jelenség viselkedésének vizsgálata egyszer négyszögjel esetén
Matematikai modellek, I. kisprojekt Gibbs-jelenség viselkedésének vizsgálata egyszer négyszögjel esetén Unger amás István B.Sc. szakos matematikus hallgató ungert@maxwell.sze.hu, http://maxwell.sze.hu/~ungert
Bevezetés. 1. fejezet. Algebrai feladatok. Feladatok
. fejezet Bevezetés Algebrai feladatok J. A számok gyakran használt halmazaira a következ jelöléseket vezetjük be: N a nemnegatív egész számok, N + a pozitív egész számok, Z az egész számok, Q a racionális
1. feladatsor: Vektorterek, lineáris kombináció, mátrixok, determináns (megoldás)
Matematika A2c gyakorlat Vegyészmérnöki, Biomérnöki, Környezetmérnöki szakok, 2017/18 ősz 1. feladatsor: Vektorterek, lineáris kombináció, mátrixok, determináns (megoldás) 1. Valós vektorterek-e a következő
A KroneckerCapelli-tételb l következik, hogy egy Bx = 0 homogén lineáris egyenletrendszernek
10. gyakorlat Mátrixok sajátértékei és sajátvektorai Azt mondjuk, hogy az A M n mátrixnak a λ IR szám a sajátértéke, ha létezik olyan x IR n, x 0 vektor, amelyre Ax = λx. Ekkor az x vektort az A mátrix
Logika és számításelmélet. 10. előadás
Logika és számításelmélet 10. előadás Rice tétel Rekurzíve felsorolható nyelvek tulajdonságai Tetszőleges P RE halmazt a rekurzívan felsorolható nyelvek egy tulajdonságának nevezzük. P triviális, ha P
Diszkrét matematika I., 12. előadás Dr. Takách Géza NyME FMK Informatikai Intézet takach november 30.
1 Diszkrét matematika I, 12 előadás Dr Takách Géza NyME FMK Informatikai Intézet takach@infnymehu http://infnymehu/ takach 2005 november 30 Vektorok Definíció Egy tetszőleges n pozitív egész számra n-komponensű
MATEMATIKA TANTERV Bevezetés Összesen: 432 óra Célok és feladatok
MATEMATIKA TANTERV Bevezetés A matematika tanítását minden szakmacsoportban és minden évfolyamon egységesen heti három órában tervezzük Az elsı évfolyamon mindhárom órát osztálybontásban tartjuk, segítve
MBNK12: Permutációk (el adásvázlat, április 11.) Maróti Miklós
MBNK12: Permutációk el adásvázlat 2016 április 11 Maróti Miklós 1 Deníció Az A halmaz permutációin a π : A A bijektív leképezéseket értjünk Tetsz leges n pozitív egészre az {1 n} halmaz összes permutációinak
Nagy Gábor compalg.inf.elte.hu/ nagy ősz
Diszkrét matematika 1. középszint 2017. ősz 1. Diszkrét matematika 1. középszint 8. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Mérai László diái alapján Komputeralgebra
Függvények határértéke, folytonossága
Függvények határértéke, folytonossága 25. február 22.. Alapfeladatok. Feladat: Határozzuk meg az f() = 23 4 5 3 + 9 a végtelenben és a mínusz végtelenben! függvény határértékét Megoldás: Vizsgáljuk el
Gráfok színezése Diszkrét matematika 2009/10 sz, 9. el adás
Gráfok színezése Diszkrét matematika 2009/10 sz, 9. el adás A jegyzetet készítette: Szabó Tamás 2009. november 9. 1. Alapfogalmak Egy gráf csúcsait vagy éleit bizonyos esetekben szeretnénk különböz osztályokba
Bevezetés a bonyolultságelméletbe gyakorlatok I. A(0, y) := y + 1 y 0 A(x, 0) := A(x 1, 1) x 1 A(x, y) := A(x 1, A(x, y 1)) x, y 1
Bevezetés a bonyolultságelméletbe gyakorlatok I. B. Az Ackermann függvény avagy nem minden olyan egyszerű, mint amilyennek látszik Legyen A(x, y) a következő, rekurzív módon definiált függvény: A(0, y)
Kriptográfia 0. A biztonság alapja. Számítás-komplexitási kérdések
Kriptográfia 0 Számítás-komplexitási kérdések A biztonság alapja Komplexitás elméleti modellek független, egyenletes eloszlású véletlen változó értéke számítással nem hozható kapcsolatba más információval
Skalárszorzat, norma, szög, távolság. Dr. Takách Géza NyME FMK Informatikai Intézet takach@inf.nyme.hu http://inf.nyme.hu/ takach/ 2005.
1 Diszkrét matematika II., 4. el adás Skalárszorzat, norma, szög, távolság Dr. Takách Géza NyME FMK Informatikai Intézet takach@inf.nyme.hu http://inf.nyme.hu/ takach/ 2005. március 1 A téma jelent sége
24. szakkör (Csoportelméleti alapfogalmak 3.)
24. szakkör (Csoportelméleti alapfogalmak 3.) D) PERMUTÁCIÓK RENDJE Fontos kérdés a csoportelméletben, hogy egy adott elem hanyadik hatványa lesz az egység. DEFINÍCIÓ: A legkisebb olyan pozitív k számot,
Relációk. 1. Descartes-szorzat
Relációk Descartes-szorzat. Relációk szorzata, inverze. Relációk tulajdonságai. Ekvivalenciareláció, osztályozás. Részbenrendezés, Hasse-diagram.. Descartes-szorzat A kurzuson már megtanultuk mik a halmazok
Lineáris egyenletrendszerek
Lineáris egyenletrendszerek 1 Alapfogalmak 1 Deníció Egy m egyenletb l álló, n-ismeretlenes lineáris egyenletrendszer általános alakja: a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a
f(x) vagy f(x) a (x x 0 )-t használjuk. lim melyekre Mivel itt ɛ > 0 tetszőlegesen kicsi, így a a = 0, a = a, ami ellentmondás, bizonyítva
6. FÜGGVÉNYEK HATÁRÉRTÉKE ÉS FOLYTONOSSÁGA 6.1 Függvény határértéke Egy D R halmaz torlódási pontjainak halmazát D -vel fogjuk jelölni. Definíció. Legyen f : D R R és legyen x 0 D (a D halmaz torlódási
Gauss-Jordan módszer Legkisebb négyzetek módszere, egyenes LNM, polinom LNM, függvény. Lineáris algebra numerikus módszerei
A Gauss-Jordan elimináció, mátrixinvertálás Gauss-Jordan módszer Ugyanazzal a technikával, mint ahogy a k-adik oszlopban az a kk alatti elemeket kinulláztuk, a fölötte lévő elemeket is zérussá lehet tenni.
KOVÁCS BÉLA, MATEMATIKA I.
KOVÁCS BÉLA, MATEmATIkA I 5 V ELEmI ALGEbRA 1 BINÁRIS műveletek Definíció Az halmazon definiált bináris művelet egy olyan függvény, amely -ből képez -be Ha akkor az elempár képét jelöljük -vel, a művelet
Ellátási lánc optimalizálás P-gráf módszertan alkalmazásával mennyiségi és min ségi paraméterek gyelembevételével
Ellátási lánc optimalizálás P-gráf módszertan alkalmazásával mennyiségi és min ségi paraméterek gyelembevételével Pekárdy Milán, Baumgartner János, Süle Zoltán Pannon Egyetem, Veszprém XXXII. Magyar Operációkutatási
Diszkrét matematika 2.C szakirány
Diszkrét matematika 2.C szakirány 2017. tavasz 1. Diszkrét matematika 2.C szakirány 4. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék 2017.
: s s t 2 s t. m m m. e f e f. a a ab a b c. a c b ac. 5. Végezzük el a kijelölt m veleteket a változók lehetséges értékei mellett!
nomosztással a megoldást visszavezethetjük egy alacsonyabb fokú egyenlet megoldására Mivel a 4 6 8 6 egyenletben az együtthatók összege 6 8 6 ezért az egyenletnek gyöke az (mert esetén a kifejezés helyettesítési
RSA algoritmus. P(M) = M e mod n. S(C) = C d mod n. A helyesség igazoláshoz szükséges számelméleti háttér. a φ(n) = 1 mod n, a (a 1,a 2,...
RSA algoritmus 1. Vegyünk véletlenszerűen két különböző nagy prímszámot, p-t és q-t. 2. Legyen n = pq. 3. Vegyünk egy olyan kis páratlan e számot, amely relatív prím φ(n) = (p 1)(q 1)-hez. 4. Keressünk
Nagy Gábor compalg.inf.elte.hu/ nagy ősz
Diszkrét matematika 1. középszint 2016. ősz 1. Diszkrét matematika 1. középszint 8. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Mérai László diái alapján Komputeralgebra
Hadamard-mátrixok Előadó: Hajnal Péter február 23.
Szimmetrikus kombinatorikus struktúrák MSc hallgatók számára Hadamard-mátrixok Előadó: Hajnal Péter 2012. február 23. 1. Hadamard-mátrixok Ezen az előadáson látásra a blokkrendszerektől független kombinatorikus
Bonyolultságelmélet. Monday 26 th September, 2016, 18:28
Bonyolultságelmélet Monday 26 th September, 2016, 18:28 A kurzus teljesítési követelményei 2 Gyakorlat Három kisdolgozat 6 6 pontért kb. a 4., 7. és 10. gyakorlaton Egy nagydolgozat 28 pontért utolsó héten