Algoritmuselmélet 12. előadás
|
|
- Viktor Mátyás Pintér
- 5 évvel ezelőtt
- Látták:
Átírás
1 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 2002 Április 9.
2 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása.
3 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje.
4 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje. Alan Turing Definíció. Többszalagos Turing-gép (TG), k 1 egész szám k db szalag cellákra osztva, cellákba jelek, a szalag egyik (mindkét) irányban végtelen
5 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje. Alan Turing Definíció. Többszalagos Turing-gép (TG), k 1 egész szám k db szalag cellákra osztva, cellákba jelek, a szalag egyik (mindkét) irányban végtelen minden szalaghoz tartozik egy fej, ami jobbra és balra is lépegethet a szalagon cellánként
6 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje. Alan Turing Definíció. Többszalagos Turing-gép (TG), k 1 egész szám k db szalag cellákra osztva, cellákba jelek, a szalag egyik (mindkét) irányban végtelen minden szalaghoz tartozik egy fej, ami jobbra és balra is lépegethet a szalagon cellánként véges vezérlő, ennek véges sok állapota van
7 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje. Alan Turing Definíció. Többszalagos Turing-gép (TG), k 1 egész szám k db szalag cellákra osztva, cellákba jelek, a szalag egyik (mindkét) irányban végtelen minden szalaghoz tartozik egy fej, ami jobbra és balra is lépegethet a szalagon cellánként véges vezérlő, ennek véges sok állapota van Lépés: függ a belső állapottól és a fej alatti jelektől
8 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje. Alan Turing Definíció. Többszalagos Turing-gép (TG), k 1 egész szám k db szalag cellákra osztva, cellákba jelek, a szalag egyik (mindkét) irányban végtelen minden szalaghoz tartozik egy fej, ami jobbra és balra is lépegethet a szalagon cellánként véges vezérlő, ennek véges sok állapota van Lépés: függ a belső állapottól és a fej alatti jelektől a gép megáll
9 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje. Alan Turing Definíció. Többszalagos Turing-gép (TG), k 1 egész szám k db szalag cellákra osztva, cellákba jelek, a szalag egyik (mindkét) irányban végtelen minden szalaghoz tartozik egy fej, ami jobbra és balra is lépegethet a szalagon cellánként véges vezérlő, ennek véges sok állapota van Lépés: függ a belső állapottól és a fej alatti jelektől a gép megáll átmegy új állapotba,
10 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje. Alan Turing Definíció. Többszalagos Turing-gép (TG), k 1 egész szám k db szalag cellákra osztva, cellákba jelek, a szalag egyik (mindkét) irányban végtelen minden szalaghoz tartozik egy fej, ami jobbra és balra is lépegethet a szalagon cellánként véges vezérlő, ennek véges sok állapota van Lépés: függ a belső állapottól és a fej alatti jelektől a gép megáll átmegy új állapotba, ír valamit minden fej alatti cellába,
11 ALGORITMUSELMÉLET 12. ELŐADÁS 1 Turing-gépek Az algoritmus fogalmának pontosabb meghatározása. Számítógép elméleti, egyszerűsített modellje. Alan Turing Definíció. Többszalagos Turing-gép (TG), k 1 egész szám k db szalag cellákra osztva, cellákba jelek, a szalag egyik (mindkét) irányban végtelen minden szalaghoz tartozik egy fej, ami jobbra és balra is lépegethet a szalagon cellánként véges vezérlő, ennek véges sok állapota van Lépés: függ a belső állapottól és a fej alatti jelektől a gép megáll átmegy új állapotba, ír valamit minden fej alatti cellába, minden fej lép vagy jobbra, vagy balra egyet vagy helyben marad
12 ALGORITMUSELMÉLET 12. ELŐADÁS 2 Definíció. Egy k-szalagos Turing-gép egy hetessel jellemezhető: M = (Q, T, ü, I, q 0, F, δ),
13 ALGORITMUSELMÉLET 12. ELŐADÁS 2 Definíció. Egy k-szalagos Turing-gép egy hetessel jellemezhető: ahol M = (Q, T, ü, I, q 0, F, δ), Q : egy véges halmaz, az M gép belső állapotainak halmaza.
14 ALGORITMUSELMÉLET 12. ELŐADÁS 2 Definíció. Egy k-szalagos Turing-gép egy hetessel jellemezhető: ahol M = (Q, T, ü, I, q 0, F, δ), Q : T : egy véges halmaz, az M gép belső állapotainak halmaza. egy véges halmaz, a szalagjelek halmaza.
15 ALGORITMUSELMÉLET 12. ELŐADÁS 2 Definíció. Egy k-szalagos Turing-gép egy hetessel jellemezhető: ahol M = (Q, T, ü, I, q 0, F, δ), Q : T : egy véges halmaz, az M gép belső állapotainak halmaza. egy véges halmaz, a szalagjelek halmaza. ü : egy kitüntetett szalagjel, az üresjel. A bemenetként felírt jeleken és a gép számítása során kiírt jeleken kívül minden szalagcellában ü van.
16 ALGORITMUSELMÉLET 12. ELŐADÁS 2 Definíció. Egy k-szalagos Turing-gép egy hetessel jellemezhető: ahol M = (Q, T, ü, I, q 0, F, δ), Q : T : egy véges halmaz, az M gép belső állapotainak halmaza. egy véges halmaz, a szalagjelek halmaza. ü : egy kitüntetett szalagjel, az üresjel. A bemenetként felírt jeleken és a gép számítása során kiírt jeleken kívül minden szalagcellában ü van. I : I T \ {ü} az input jelek vagy bemenő jelek halmaza, más szóval az input abc. Az üresjel nem lehet input jel.
17 ALGORITMUSELMÉLET 12. ELŐADÁS 2 Definíció. Egy k-szalagos Turing-gép egy hetessel jellemezhető: ahol M = (Q, T, ü, I, q 0, F, δ), Q : T : egy véges halmaz, az M gép belső állapotainak halmaza. egy véges halmaz, a szalagjelek halmaza. ü : egy kitüntetett szalagjel, az üresjel. A bemenetként felírt jeleken és a gép számítása során kiírt jeleken kívül minden szalagcellában ü van. I : I T \ {ü} az input jelek vagy bemenő jelek halmaza, más szóval az input abc. Az üresjel nem lehet input jel. q 0 : q 0 Q a kezdő állapot.
18 ALGORITMUSELMÉLET 12. ELŐADÁS 3 F : F Q az elfogadó állapotok halmaza.
19 ALGORITMUSELMÉLET 12. ELŐADÁS 3 F : F Q az elfogadó állapotok halmaza. Elfogadó állapotban áll meg = IGEN
20 ALGORITMUSELMÉLET 12. ELŐADÁS 3 F : F Q az elfogadó állapotok halmaza. Elfogadó állapotban áll meg = IGEN Nem elfogadó állapotban áll meg = NEM
21 ALGORITMUSELMÉLET 12. ELŐADÁS 3 F : F Q az elfogadó állapotok halmaza. Elfogadó állapotban áll meg = IGEN Nem elfogadó állapotban áll meg = NEM = a Q \ F -be tartozó állapotokat elutasító állapotoknak is nevezik.
22 ALGORITMUSELMÉLET 12. ELŐADÁS 3 F : F Q az elfogadó állapotok halmaza. Elfogadó állapotban áll meg = IGEN Nem elfogadó állapotban áll meg = NEM = a Q \ F -be tartozó állapotokat elutasító állapotoknak is nevezik. δ : A δ : Q T k Q (T {jobb, bal, helyben}) k egy parciálisan értelmezett függvény, a gép átmenetfüggvénye.
23 ALGORITMUSELMÉLET 12. ELŐADÁS 3 F : F Q az elfogadó állapotok halmaza. Elfogadó állapotban áll meg = IGEN Nem elfogadó állapotban áll meg = NEM = a Q \ F -be tartozó állapotokat elutasító állapotoknak is nevezik. δ : A δ : Q T k Q (T {jobb, bal, helyben}) k egy parciálisan értelmezett függvény, a gép átmenetfüggvénye. Az átmenetfüggvény tekinthető a gép programjának.
24 ALGORITMUSELMÉLET 12. ELŐADÁS 3 F : F Q az elfogadó állapotok halmaza. Elfogadó állapotban áll meg = IGEN Nem elfogadó állapotban áll meg = NEM = a Q \ F -be tartozó állapotokat elutasító állapotoknak is nevezik. δ : A δ : Q T k Q (T {jobb, bal, helyben}) k egy parciálisan értelmezett függvény, a gép átmenetfüggvénye. Az átmenetfüggvény tekinthető a gép programjának. Ha a δ(q; a 1, a 2,..., a k ) nincs értelmezve, = megállás
25 ALGORITMUSELMÉLET 12. ELŐADÁS 4 Példa q
26 ALGORITMUSELMÉLET 12. ELŐADÁS 4 Példa q0 q
27 ALGORITMUSELMÉLET 12. ELŐADÁS 4 Példa q0 q0 q
28 ALGORITMUSELMÉLET 12. ELŐADÁS 4 Példa q0 q0 q0 q
29 ALGORITMUSELMÉLET 12. ELŐADÁS 4 Példa q0 q0 q0 q0 q
30 ALGORITMUSELMÉLET 12. ELŐADÁS 4 Példa q0 q0 q0 q0 q animáció: Turing gép
31 ALGORITMUSELMÉLET 12. ELŐADÁS 5 Turing-gép működése Kezdetben a q 0 állapotban van, az s I bemenet az első szalag elejére van írva, az összes többi mezőn ü
32 ALGORITMUSELMÉLET 12. ELŐADÁS 5 Turing-gép működése Kezdetben a q 0 állapotban van, az s I bemenet az első szalag elejére van írva, az összes többi mezőn ü A δ függvénynek megfelelően lépeget = új állapot, írás, fej lépése
33 ALGORITMUSELMÉLET 12. ELŐADÁS 5 Turing-gép működése Kezdetben a q 0 állapotban van, az s I bemenet az első szalag elejére van írva, az összes többi mezőn ü A δ függvénynek megfelelően lépeget = új állapot, írás, fej lépése Ha δ nincs értelmezve, akkor megáll (akár elfogadó állapotban van, akár nem)
34 ALGORITMUSELMÉLET 12. ELŐADÁS 5 Turing-gép működése Kezdetben a q 0 állapotban van, az s I bemenet az első szalag elejére van írva, az összes többi mezőn ü A δ függvénynek megfelelően lépeget = új állapot, írás, fej lépése Ha δ nincs értelmezve, akkor megáll (akár elfogadó állapotban van, akár nem) Két felhasználás: Függvények kiszámolása
35 ALGORITMUSELMÉLET 12. ELŐADÁS 5 Turing-gép működése Kezdetben a q 0 állapotban van, az s I bemenet az első szalag elejére van írva, az összes többi mezőn ü A δ függvénynek megfelelően lépeget = új állapot, írás, fej lépése Ha δ nincs értelmezve, akkor megáll (akár elfogadó állapotban van, akár nem) Két felhasználás: Függvények kiszámolása Kérdések eldöntése (0 1 értékű függvény) Definíció. Az M Turing-gép által felismert L M nyelv azokból az s I szavakból áll, amelyekkel mint bemenetekkel elindítva az M megáll, mégpedig elfogadó (azaz F -beli) állapotban.
36 ALGORITMUSELMÉLET 12. ELŐADÁS 5 Turing-gép működése Kezdetben a q 0 állapotban van, az s I bemenet az első szalag elejére van írva, az összes többi mezőn ü A δ függvénynek megfelelően lépeget = új állapot, írás, fej lépése Ha δ nincs értelmezve, akkor megáll (akár elfogadó állapotban van, akár nem) Két felhasználás: Függvények kiszámolása Kérdések eldöntése (0 1 értékű függvény) Definíció. Az M Turing-gép által felismert L M nyelv azokból az s I szavakból áll, amelyekkel mint bemenetekkel elindítva az M megáll, mégpedig elfogadó (azaz F -beli) állapotban. Ha M az L M nyelvet ismeri fel, akkor a nyelvbe nem tartozó szavakra vagy megáll elutasító állapotban, vagy végtelen ciklusba kerül.
37 ALGORITMUSELMÉLET 12. ELŐADÁS 6 Definíció. Legyen M egy kitüntetett output szalaggal rendelkező Turing-gép. Az M által kiszámított f M : I I parciális függvényt így értelmezzük: f M (s) = w, ha M az s I inputtal indulva megáll, és megállás után az output szalagon a w I szó szerepel az üresjelek óceánja előtt.
38 ALGORITMUSELMÉLET 12. ELŐADÁS 6 Definíció. Legyen M egy kitüntetett output szalaggal rendelkező Turing-gép. Az M által kiszámított f M : I I parciális függvényt így értelmezzük: f M (s) = w, ha M az s I inputtal indulva megáll, és megállás után az output szalagon a w I szó szerepel az üresjelek óceánja előtt. Az f M függvény tehát csak azokra az s I szavakra értelmezett, amelyekkel mint bemenetekkel az M gép véges sok lépés megtétele után megáll. Mindegy, hogy a megállás elfogadó vagy elutasító állapotban történt-e.
39 ALGORITMUSELMÉLET 12. ELŐADÁS 7 Példa Turing-gépre Q = {q 0, q 1, q 2, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v }. δ(q 0, 1) = (q 1, 1, jobb), δ(q 0, ü) = (q v, ü, helyben), δ(q 1, 1) = (q 2, 1, jobb), δ(q 2, 1) = (q 0, 1, jobb). Más párokra δ nincs értelmezve.
40 ALGORITMUSELMÉLET 12. ELŐADÁS 7 Példa Turing-gépre Q = {q 0, q 1, q 2, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v }. δ(q 0, 1) = (q 1, 1, jobb), δ(q 0, ü) = (q v, ü, helyben), δ(q 1, 1) = (q 2, 1, jobb), δ(q 2, 1) = (q 0, 1, jobb). Más párokra δ nincs értelmezve. Ha 0-t olvas = elutasít
41 ALGORITMUSELMÉLET 12. ELŐADÁS 7 Példa Turing-gépre Q = {q 0, q 1, q 2, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v }. δ(q 0, 1) = (q 1, 1, jobb), δ(q 0, ü) = (q v, ü, helyben), δ(q 1, 1) = (q 2, 1, jobb), δ(q 2, 1) = (q 0, 1, jobb). Más párokra δ nincs értelmezve. Ha 0-t olvas = elutasít Ha ü üresjelet olvas és nem q 0 -ban van = elutasít
42 ALGORITMUSELMÉLET 12. ELŐADÁS 7 Példa Turing-gépre Q = {q 0, q 1, q 2, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v }. δ(q 0, 1) = (q 1, 1, jobb), δ(q 0, ü) = (q v, ü, helyben), δ(q 1, 1) = (q 2, 1, jobb), δ(q 2, 1) = (q 0, 1, jobb). Más párokra δ nincs értelmezve. Ha 0-t olvas = elutasít Ha ü üresjelet olvas és nem q 0 -ban van = elutasít Ha ü üresjelet olvas és q 0 -ban van = elfogad
43 ALGORITMUSELMÉLET 12. ELŐADÁS 7 Példa Turing-gépre Q = {q 0, q 1, q 2, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v }. δ(q 0, 1) = (q 1, 1, jobb), δ(q 0, ü) = (q v, ü, helyben), δ(q 1, 1) = (q 2, 1, jobb), δ(q 2, 1) = (q 0, 1, jobb). Más párokra δ nincs értelmezve. Ha 0-t olvas = elutasít Ha ü üresjelet olvas és nem q 0 -ban van = elutasít Ha ü üresjelet olvas és q 0 -ban van = elfogad Ha 1-et olvas és q i -ben van = jobbra lép, és átmegy a q i+1 állapotba;
44 ALGORITMUSELMÉLET 12. ELŐADÁS 7 Példa Turing-gépre Q = {q 0, q 1, q 2, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v }. δ(q 0, 1) = (q 1, 1, jobb), δ(q 0, ü) = (q v, ü, helyben), δ(q 1, 1) = (q 2, 1, jobb), δ(q 2, 1) = (q 0, 1, jobb). Más párokra δ nincs értelmezve. Ha 0-t olvas = elutasít Ha ü üresjelet olvas és nem q 0 -ban van = elutasít Ha ü üresjelet olvas és q 0 -ban van = elfogad Ha 1-et olvas és q i -ben van = jobbra lép, és átmegy a q i+1 állapotba; = M pontosan azokat a szavakat fogadja el, amelyek csupa egyesekből állnak, és a hosszuk osztható hárommal.
45 ALGORITMUSELMÉLET 12. ELŐADÁS 7 Példa Turing-gépre Q = {q 0, q 1, q 2, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v }. δ(q 0, 1) = (q 1, 1, jobb), δ(q 0, ü) = (q v, ü, helyben), δ(q 1, 1) = (q 2, 1, jobb), δ(q 2, 1) = (q 0, 1, jobb). Más párokra δ nincs értelmezve. Ha 0-t olvas = elutasít Ha ü üresjelet olvas és nem q 0 -ban van = elutasít Ha ü üresjelet olvas és q 0 -ban van = elfogad Ha 1-et olvas és q i -ben van = jobbra lép, és átmegy a q i+1 állapotba; = M pontosan azokat a szavakat fogadja el, amelyek csupa egyesekből állnak, és a hosszuk osztható hárommal. = Az M által felismert L M nyelv tehát L M = {1 n : n hárommal osztható természetes szám}.
46 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Másutt δ nem definiált.
47 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Másutt δ nem definiált. Meghatározzuk az L M nyelvet és az f M függvényt is.
48 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Másutt δ nem definiált. Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Meghatározzuk az L M nyelvet és az f M függvényt is. Az M a q 0 belső állapotban maradva lépdel jobbra a szalag mentén, amíg 0 vagy ü jelet nem talál.
49 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Másutt δ nem definiált. Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Meghatározzuk az L M nyelvet és az f M függvényt is. Az M a q 0 belső állapotban maradva lépdel jobbra a szalag mentén, amíg 0 vagy ü jelet nem talál. 0 = végtelen ciklus
50 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Másutt δ nem definiált. Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Meghatározzuk az L M nyelvet és az f M függvényt is. Az M a q 0 belső állapotban maradva lépdel jobbra a szalag mentén, amíg 0 vagy ü jelet nem talál. 0 = végtelen ciklus ü = még egy 1-est ír az input után, majd elfogad
51 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Másutt δ nem definiált. Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Meghatározzuk az L M nyelvet és az f M függvényt is. Az M a q 0 belső állapotban maradva lépdel jobbra a szalag mentén, amíg 0 vagy ü jelet nem talál. 0 = végtelen ciklus ü = még egy 1-est ír az input után, majd elfogad = L M = {1 n ; n 0 egész}
52 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Másutt δ nem definiált. Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Meghatározzuk az L M nyelvet és az f M függvényt is. Az M a q 0 belső állapotban maradva lépdel jobbra a szalag mentén, amíg 0 vagy ü jelet nem talál. 0 = végtelen ciklus ü = még egy 1-est ír az input után, majd elfogad = L M = {1 n ; n 0 egész} = A gép az 1 n bemeneten az 1 n+1 eredményt adja, vagyis f M (1 n ) = 1 n+1.
53 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Másutt δ nem definiált. Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Meghatározzuk az L M nyelvet és az f M függvényt is. Az M a q 0 belső állapotban maradva lépdel jobbra a szalag mentén, amíg 0 vagy ü jelet nem talál. 0 = végtelen ciklus ü = még egy 1-est ír az input után, majd elfogad = L M = {1 n ; n 0 egész} = A gép az 1 n bemeneten az 1 n+1 eredményt adja, vagyis f M (1 n ) = 1 n+1. Turing-gép igazi számítógép
54 ALGORITMUSELMÉLET 12. ELŐADÁS 8 Példa Turing-gépre Másutt δ nem definiált. Q = {q 0, q v }, T = {0, 1, ü}, I = {0, 1}, F = {q v } δ(q 0, 0) = (q 0, 0, helyben), δ(q 0, 1) = (q 0, 1, jobb), δ(q 0, ü) = (q v, 1, helyben). Meghatározzuk az L M nyelvet és az f M függvényt is. Az M a q 0 belső állapotban maradva lépdel jobbra a szalag mentén, amíg 0 vagy ü jelet nem talál. 0 = végtelen ciklus ü = még egy 1-est ír az input után, majd elfogad = L M = {1 n ; n 0 egész} = A gép az 1 n bemeneten az 1 n+1 eredményt adja, vagyis f M (1 n ) = 1 n+1. Turing-gép igazi számítógép Turing-gép többet tud, mint a véges automata.
55 ALGORITMUSELMÉLET 12. ELŐADÁS 9 A kiszámíthatóság alapfogalmai Algoritmus: ami Turing-géppel kiszámítható
56 ALGORITMUSELMÉLET 12. ELŐADÁS 9 A kiszámíthatóság alapfogalmai Algoritmus: ami Turing-géppel kiszámítható Definíció. Az L I nyelvet rekurzíve felsorolhatónak nevezzük, ha van olyan M Turing-gép, melyre L = L M, azaz a gép által felismert nyelv éppen L.
57 ALGORITMUSELMÉLET 12. ELŐADÁS 9 A kiszámíthatóság alapfogalmai Algoritmus: ami Turing-géppel kiszámítható Definíció. Az L I nyelvet rekurzíve felsorolhatónak nevezzük, ha van olyan M Turing-gép, melyre L = L M, azaz a gép által felismert nyelv éppen L. Definíció. Az L I nyelv rekurzív, ha van olyan M Turing-gép, melyre L = L M, és M minden s I szóra megáll.
58 ALGORITMUSELMÉLET 12. ELŐADÁS 9 A kiszámíthatóság alapfogalmai Algoritmus: ami Turing-géppel kiszámítható Definíció. Az L I nyelvet rekurzíve felsorolhatónak nevezzük, ha van olyan M Turing-gép, melyre L = L M, azaz a gép által felismert nyelv éppen L. Definíció. Az L I nyelv rekurzív, ha van olyan M Turing-gép, melyre L = L M, és M minden s I szóra megáll. RE = {L I : L rekurzíve felsorolható}. R = {L I : L rekurzív}.
59 ALGORITMUSELMÉLET 12. ELŐADÁS 9 A kiszámíthatóság alapfogalmai Algoritmus: ami Turing-géppel kiszámítható Definíció. Az L I nyelvet rekurzíve felsorolhatónak nevezzük, ha van olyan M Turing-gép, melyre L = L M, azaz a gép által felismert nyelv éppen L. Definíció. Az L I nyelv rekurzív, ha van olyan M Turing-gép, melyre L = L M, és M minden s I szóra megáll. RE = {L I : L rekurzíve felsorolható}. R = {L I : L rekurzív}. = R RE
60 ALGORITMUSELMÉLET 12. ELŐADÁS 9 A kiszámíthatóság alapfogalmai Algoritmus: ami Turing-géppel kiszámítható Definíció. Az L I nyelvet rekurzíve felsorolhatónak nevezzük, ha van olyan M Turing-gép, melyre L = L M, azaz a gép által felismert nyelv éppen L. Definíció. Az L I nyelv rekurzív, ha van olyan M Turing-gép, melyre L = L M, és M minden s I szóra megáll. RE = {L I : L rekurzíve felsorolható}. R = {L I : L rekurzív}. = R RE Definíció. Az f : I I parciális függvény parciálisan rekurzív függvény, ha létezik olyan M Turing-gép, hogy f = f M. Ha ezen túl még f minden s I inputra értelmezve van, akkor f egy rekurzív függvény.
61 ALGORITMUSELMÉLET 12. ELŐADÁS 10 Tétel. Van olyan L I nyelv, amely nem rekurzíve felsorolható. Bizonyítás: Egy Turing-gép leírható véges jelsorozattal = az összes gép számossága megszámlálható = felsorolható: M 0, M 1, M 2,...
62 ALGORITMUSELMÉLET 12. ELŐADÁS 10 Tétel. Van olyan L I nyelv, amely nem rekurzíve felsorolható. Bizonyítás: Egy Turing-gép leírható véges jelsorozattal = az összes gép számossága megszámlálható = felsorolható: M 0, M 1, M 2,... = a rekurzíve felsorolható nyelvek is felsorolhatók: L M0, L M1, L M2,...
63 ALGORITMUSELMÉLET 12. ELŐADÁS 10 Tétel. Van olyan L I nyelv, amely nem rekurzíve felsorolható. Bizonyítás: Egy Turing-gép leírható véges jelsorozattal = az összes gép számossága megszámlálható = felsorolható: M 0, M 1, M 2,... = a rekurzíve felsorolható nyelvek is felsorolhatók: L M0, L M1, L M2,... = a rekurzíve felsorolható nyelvek halmaza megszámlálható
64 ALGORITMUSELMÉLET 12. ELŐADÁS 10 Tétel. Van olyan L I nyelv, amely nem rekurzíve felsorolható. Bizonyítás: Egy Turing-gép leírható véges jelsorozattal = az összes gép számossága megszámlálható = felsorolható: M 0, M 1, M 2,... = a rekurzíve felsorolható nyelvek is felsorolhatók: L M0, L M1, L M2,... = a rekurzíve felsorolható nyelvek halmaza megszámlálható Belátjuk, hogy az összes nyelv halmaza nem megszámlálható (egyébként kontinuum).
65 ALGORITMUSELMÉLET 12. ELŐADÁS 10 Tétel. Van olyan L I nyelv, amely nem rekurzíve felsorolható. Bizonyítás: Egy Turing-gép leírható véges jelsorozattal = az összes gép számossága megszámlálható = felsorolható: M 0, M 1, M 2,... = a rekurzíve felsorolható nyelvek is felsorolhatók: L M0, L M1, L M2,... = a rekurzíve felsorolható nyelvek halmaza megszámlálható Belátjuk, hogy az összes nyelv halmaza nem megszámlálható (egyébként kontinuum). Az I elemei, a véges hosszúságú I-beli jelekből képzett szavak is megszámlálhatóak = felsorolhatóak: w 0, w 1, w 2,...
66 ALGORITMUSELMÉLET 12. ELŐADÁS 10 Tétel. Van olyan L I nyelv, amely nem rekurzíve felsorolható. Bizonyítás: Egy Turing-gép leírható véges jelsorozattal = az összes gép számossága megszámlálható = felsorolható: M 0, M 1, M 2,... = a rekurzíve felsorolható nyelvek is felsorolhatók: L M0, L M1, L M2,... = a rekurzíve felsorolható nyelvek halmaza megszámlálható Belátjuk, hogy az összes nyelv halmaza nem megszámlálható (egyébként kontinuum). Az I elemei, a véges hosszúságú I-beli jelekből képzett szavak is megszámlálhatóak = felsorolhatóak: w 0, w 1, w 2,... Tegyük fel, hogy az összes nyelvek halmaza megszámlálható, megmutatjuk, hogy van olyan L I nyelv, amely nem lehet benne az összes nyelvek L M0, L M1, L M2,... sorozatában.
67 ALGORITMUSELMÉLET 12. ELŐADÁS 10 Tétel. Van olyan L I nyelv, amely nem rekurzíve felsorolható. Bizonyítás: Egy Turing-gép leírható véges jelsorozattal = az összes gép számossága megszámlálható = felsorolható: M 0, M 1, M 2,... = a rekurzíve felsorolható nyelvek is felsorolhatók: L M0, L M1, L M2,... = a rekurzíve felsorolható nyelvek halmaza megszámlálható Belátjuk, hogy az összes nyelv halmaza nem megszámlálható (egyébként kontinuum). Az I elemei, a véges hosszúságú I-beli jelekből képzett szavak is megszámlálhatóak = felsorolhatóak: w 0, w 1, w 2,... Tegyük fel, hogy az összes nyelvek halmaza megszámlálható, megmutatjuk, hogy van olyan L I nyelv, amely nem lehet benne az összes nyelvek L M0, L M1, L M2,... sorozatában. Az L nyelvnek a w i szó pontosan akkor legyen eleme, ha w i L Mi, i = 1, 2,....
68 ALGORITMUSELMÉLET 12. ELŐADÁS 10 Tétel. Van olyan L I nyelv, amely nem rekurzíve felsorolható. Bizonyítás: Egy Turing-gép leírható véges jelsorozattal = az összes gép számossága megszámlálható = felsorolható: M 0, M 1, M 2,... = a rekurzíve felsorolható nyelvek is felsorolhatók: L M0, L M1, L M2,... = a rekurzíve felsorolható nyelvek halmaza megszámlálható Belátjuk, hogy az összes nyelv halmaza nem megszámlálható (egyébként kontinuum). Az I elemei, a véges hosszúságú I-beli jelekből képzett szavak is megszámlálhatóak = felsorolhatóak: w 0, w 1, w 2,... Tegyük fel, hogy az összes nyelvek halmaza megszámlálható, megmutatjuk, hogy van olyan L I nyelv, amely nem lehet benne az összes nyelvek L M0, L M1, L M2,... sorozatában. Az L nyelvnek a w i szó pontosan akkor legyen eleme, ha w i L Mi, i = 1, 2,.... L L Mi, hiszen a w i L és w i L Mi Cantor-féle átlós módszer
69 ALGORITMUSELMÉLET 12. ELŐADÁS 11 w 0 w 1... w i w i+1... L M0 nem nem... nem nem... L M1. igen nem... nem nem... L Mi nem igen... igen nem... L Mi+1 igen nem... nem nem.... L igen igen... nem igen...
70 ALGORITMUSELMÉLET 12. ELŐADÁS 11 w 0 w 1... w i w i+1... L M0 nem nem... nem nem... L M1. igen nem... nem nem... L Mi nem igen... igen nem... L Mi+1 igen nem... nem nem.... L igen igen... nem igen... Tétel. Létezik olyan f : I I parciális függvény, amely nem parciálisan rekurzív.
71 ALGORITMUSELMÉLET 12. ELŐADÁS 12 Church Turing-tézis A rekurzív nyelveket és a rekurzív függvényeket fogjuk algoritmussal kezelhető nyelveknek és függvényeknek tekinteni.
72 ALGORITMUSELMÉLET 12. ELŐADÁS 12 Church Turing-tézis A rekurzív nyelveket és a rekurzív függvényeket fogjuk algoritmussal kezelhető nyelveknek és függvényeknek tekinteni. Church Turing-tézis: Ami algoritmussal azaz véges eljárással kiszámítható (eldönthető), az Turing értelmében kiszámítható (eldönthető). Nevezetesen: Egy f : I I parciális függvény kiszámítható rekurzív. f parciálisan
73 ALGORITMUSELMÉLET 12. ELŐADÁS 12 Church Turing-tézis A rekurzív nyelveket és a rekurzív függvényeket fogjuk algoritmussal kezelhető nyelveknek és függvényeknek tekinteni. Church Turing-tézis: Ami algoritmussal azaz véges eljárással kiszámítható (eldönthető), az Turing értelmében kiszámítható (eldönthető). Nevezetesen: Egy f : I I parciális függvény kiszámítható rekurzív. Egy f : I I (teljes) függvény kiszámítható f parciálisan f rekurzív.
74 ALGORITMUSELMÉLET 12. ELŐADÁS 12 Church Turing-tézis A rekurzív nyelveket és a rekurzív függvényeket fogjuk algoritmussal kezelhető nyelveknek és függvényeknek tekinteni. Church Turing-tézis: Ami algoritmussal azaz véges eljárással kiszámítható (eldönthető), az Turing értelmében kiszámítható (eldönthető). Nevezetesen: Egy f : I I parciális függvény kiszámítható rekurzív. Egy f : I I (teljes) függvény kiszámítható f parciálisan f rekurzív. Egy L I nyelvre a nyelvbe tartozás problémája algoritmussal eldönthető L rekurzív.
75 ALGORITMUSELMÉLET 12. ELŐADÁS 13 Idő- és tárigény Az M Turing-gép számolási ideje az s inputon a megállásáig végrehajtott lépések száma
76 ALGORITMUSELMÉLET 12. ELŐADÁS 13 Idő- és tárigény Az M Turing-gép számolási ideje az s inputon a megállásáig végrehajtott lépések száma tárigénye pedig a felhasznált (olvasott) szalagcellák száma.
77 ALGORITMUSELMÉLET 12. ELŐADÁS 13 Idő- és tárigény Az M Turing-gép számolási ideje az s inputon a megállásáig végrehajtott lépések száma tárigénye pedig a felhasznált (olvasott) szalagcellák száma. A tárigénybe nem feltétlenül számítjuk bele az inputot és outputot.
78 ALGORITMUSELMÉLET 12. ELŐADÁS 13 Idő- és tárigény Az M Turing-gép számolási ideje az s inputon a megállásáig végrehajtott lépések száma tárigénye pedig a felhasznált (olvasott) szalagcellák száma. A tárigénybe nem feltétlenül számítjuk bele az inputot és outputot. Definíció. Jelölje T M (n) az M gép maximális számolási idejét az n jelből álló bemeneteken. Az n hosszú szavakon a maximális tárigényt S M (n)-nel jelöljük.
79 ALGORITMUSELMÉLET 12. ELŐADÁS 13 Idő- és tárigény Az M Turing-gép számolási ideje az s inputon a megállásáig végrehajtott lépések száma tárigénye pedig a felhasznált (olvasott) szalagcellák száma. A tárigénybe nem feltétlenül számítjuk bele az inputot és outputot. Definíció. Jelölje T M (n) az M gép maximális számolási idejét az n jelből álló bemeneteken. Az n hosszú szavakon a maximális tárigényt S M (n)-nel jelöljük. Ha van olyan n jelből álló s I szó, amellyel elindítva M nem áll meg véges sok lépés után = T M (n) =
80 ALGORITMUSELMÉLET 12. ELŐADÁS 13 Idő- és tárigény Az M Turing-gép számolási ideje az s inputon a megállásáig végrehajtott lépések száma tárigénye pedig a felhasznált (olvasott) szalagcellák száma. A tárigénybe nem feltétlenül számítjuk bele az inputot és outputot. Definíció. Jelölje T M (n) az M gép maximális számolási idejét az n jelből álló bemeneteken. Az n hosszú szavakon a maximális tárigényt S M (n)-nel jelöljük. Ha van olyan n jelből álló s I szó, amellyel elindítva M nem áll meg véges sok lépés után = T M (n) = Pl. a hárommal oszthatóságot vizsgáló M TG-re: T M (n) = n + 1, S M (n) = n + 1, ha beleszámítjuk az inputot, S M (n) = 0, ha nem.
81 ALGORITMUSELMÉLET 12. ELŐADÁS 13 Idő- és tárigény Az M Turing-gép számolási ideje az s inputon a megállásáig végrehajtott lépések száma tárigénye pedig a felhasznált (olvasott) szalagcellák száma. A tárigénybe nem feltétlenül számítjuk bele az inputot és outputot. Definíció. Jelölje T M (n) az M gép maximális számolási idejét az n jelből álló bemeneteken. Az n hosszú szavakon a maximális tárigényt S M (n)-nel jelöljük. Ha van olyan n jelből álló s I szó, amellyel elindítva M nem áll meg véges sok lépés után = T M (n) = Pl. a hárommal oszthatóságot vizsgáló M TG-re: T M (n) = n + 1, S M (n) = n + 1, ha beleszámítjuk az inputot, S M (n) = 0, ha nem. Ha M és N két Turing-gép, melyekre T M (n) < T N (n) teljesül minden elég nagy n-re, akkor az M algoritmust gyorsabbnak mondhatjuk az N algoritmusnál.
82 ALGORITMUSELMÉLET 12. ELŐADÁS 13 Idő- és tárigény Az M Turing-gép számolási ideje az s inputon a megállásáig végrehajtott lépések száma tárigénye pedig a felhasznált (olvasott) szalagcellák száma. A tárigénybe nem feltétlenül számítjuk bele az inputot és outputot. Definíció. Jelölje T M (n) az M gép maximális számolási idejét az n jelből álló bemeneteken. Az n hosszú szavakon a maximális tárigényt S M (n)-nel jelöljük. Ha van olyan n jelből álló s I szó, amellyel elindítva M nem áll meg véges sok lépés után = T M (n) = Pl. a hárommal oszthatóságot vizsgáló M TG-re: T M (n) = n + 1, S M (n) = n + 1, ha beleszámítjuk az inputot, S M (n) = 0, ha nem. Ha M és N két Turing-gép, melyekre T M (n) < T N (n) teljesül minden elég nagy n-re, akkor az M algoritmust gyorsabbnak mondhatjuk az N algoritmusnál. Van-e legjobb TG minden L nyelvhez?
83 ALGORITMUSELMÉLET 12. ELŐADÁS 14 Tétel. [gyorsítási tétel] Van olyan L nyelv, amelyre igazak az alábbiak: 1. Az L felismerhető egy olyan M Turing-géppel, melyre T M (n) véges minden n-re. 2. Tetszőleges, az L-et felismerő N Turing-géphez van olyan N Turing-gép, amelyre L = L N szintén teljesül, továbbá T N (n) = O(log T N (n)).
84 ALGORITMUSELMÉLET 12. ELŐADÁS 15 k-szalagos TG szimulációja 1-szalagossal Tétel. Legyen M egy k-szalagos Turing-gép. Van olyan egyszalagos M Turing-gép, melyre L M = L M (vagy f M = f M ),
85 ALGORITMUSELMÉLET 12. ELŐADÁS 15 k-szalagos TG szimulációja 1-szalagossal Tétel. Legyen M egy k-szalagos Turing-gép. Van olyan egyszalagos M Turing-gép, melyre L M = L M (vagy f M = f M ), továbbá T M (n) 2T 2 M (n),
86 ALGORITMUSELMÉLET 12. ELŐADÁS 15 k-szalagos TG szimulációja 1-szalagossal Tétel. Legyen M egy k-szalagos Turing-gép. Van olyan egyszalagos M Turing-gép, melyre L M = L M (vagy f M = f M ), továbbá T M (n) 2T 2 M (n), S M (n) S M (n) + n.
87 ALGORITMUSELMÉLET 12. ELŐADÁS 15 k-szalagos TG szimulációja 1-szalagossal Tétel. Legyen M egy k-szalagos Turing-gép. Van olyan egyszalagos M Turing-gép, melyre L M = L M (vagy f M = f M ), továbbá T M (n) 2T 2 M (n), S M (n) S M (n) + n. Bizonyítás: M építésekor az M-hez képest alaposan felfújjuk a szalag abc-t, és megnöveljük a belső állapotok számát is. Az M egyetlen szalagján 2k csík lesz. Egy cellája egy oszlop.
88 ALGORITMUSELMÉLET 12. ELŐADÁS 15 k-szalagos TG szimulációja 1-szalagossal Tétel. Legyen M egy k-szalagos Turing-gép. Van olyan egyszalagos M Turing-gép, melyre L M = L M (vagy f M = f M ), továbbá T M (n) 2T 2 M (n), S M (n) S M (n) + n. Bizonyítás: M építésekor az M-hez képest alaposan felfújjuk a szalag abc-t, és megnöveljük a belső állapotok számát is. Az M egyetlen szalagján 2k csík lesz. Egy cellája egy oszlop. 1. szalag D A B 1. fej ü x ü... k. szalag D D B k. fej ü ü x
89 ALGORITMUSELMÉLET 12. ELŐADÁS 15 k-szalagos TG szimulációja 1-szalagossal Tétel. Legyen M egy k-szalagos Turing-gép. Van olyan egyszalagos M Turing-gép, melyre L M = L M (vagy f M = f M ), továbbá T M (n) 2T 2 M (n), S M (n) S M (n) + n. Bizonyítás: M építésekor az M-hez képest alaposan felfújjuk a szalag abc-t, és megnöveljük a belső állapotok számát is. Az M egyetlen szalagján 2k csík lesz. Egy cellája egy oszlop. 1. szalag D A B 1. fej ü x ü... k. szalag D D B k. fej ü ü x = szalagjelek száma: (2t) k
90 ALGORITMUSELMÉLET 12. ELŐADÁS szalag D A B 1. fej ü x ü... k. szalag D D B k. fej ü ü x M az M gép egy lépését egy legfeljebb 2T M (n) lépésből álló menetben utánozza.
91 ALGORITMUSELMÉLET 12. ELŐADÁS szalag D A B 1. fej ü x ü... k. szalag D D B k. fej ü ü x M az M gép egy lépését egy legfeljebb 2T M (n) lépésből álló menetben utánozza. Jobbra elmegy a legmesszebb levő x jelig, és közben leolvassa az x-ek felett található eredeti szalagjeleket. Ezeket a belső állapotaiban tárolja.
92 ALGORITMUSELMÉLET 12. ELŐADÁS szalag D A B 1. fej ü x ü... k. szalag D D B k. fej ü ü x M az M gép egy lépését egy legfeljebb 2T M (n) lépésből álló menetben utánozza. Jobbra elmegy a legmesszebb levő x jelig, és közben leolvassa az x-ek felett található eredeti szalagjeleket. Ezeket a belső állapotaiban tárolja. Közben egy hellyel jobbra mozdítja az x-eket, kivéve az utolsó oszlopban levő(ke)t.
93 ALGORITMUSELMÉLET 12. ELŐADÁS szalag D A B 1. fej ü x ü... k. szalag D D B k. fej ü ü x M az M gép egy lépését egy legfeljebb 2T M (n) lépésből álló menetben utánozza. Jobbra elmegy a legmesszebb levő x jelig, és közben leolvassa az x-ek felett található eredeti szalagjeleket. Ezeket a belső állapotaiban tárolja. Közben egy hellyel jobbra mozdítja az x-eket, kivéve az utolsó oszlopban levő(ke)t. Most a gép ismeri M állapotát és a fejei alatti jeleket, így meghatározhatja a M következő állapotát és a kiírandó jeleket.
94 ALGORITMUSELMÉLET 12. ELŐADÁS szalag D A B 1. fej ü x ü... k. szalag D D B k. fej ü ü x M az M gép egy lépését egy legfeljebb 2T M (n) lépésből álló menetben utánozza. Jobbra elmegy a legmesszebb levő x jelig, és közben leolvassa az x-ek felett található eredeti szalagjeleket. Ezeket a belső állapotaiban tárolja. Közben egy hellyel jobbra mozdítja az x-eket, kivéve az utolsó oszlopban levő(ke)t. Most a gép ismeri M állapotát és a fejei alatti jeleket, így meghatározhatja a M következő állapotát és a kiírandó jeleket. M visszamegy a szalag elejére, közben kiírja az M fejeinek régi helyére a k darab jelet, amiket M írt volna,
95 ALGORITMUSELMÉLET 12. ELŐADÁS szalag D A B 1. fej ü x ü... k. szalag D D B k. fej ü ü x M az M gép egy lépését egy legfeljebb 2T M (n) lépésből álló menetben utánozza. Jobbra elmegy a legmesszebb levő x jelig, és közben leolvassa az x-ek felett található eredeti szalagjeleket. Ezeket a belső állapotaiban tárolja. Közben egy hellyel jobbra mozdítja az x-eket, kivéve az utolsó oszlopban levő(ke)t. Most a gép ismeri M állapotát és a fejei alatti jeleket, így meghatározhatja a M következő állapotát és a kiírandó jeleket. M visszamegy a szalag elejére, közben kiírja az M fejeinek régi helyére a k darab jelet, amiket M írt volna, és az M fejmozgásainak megfelelően áthelyezi az x-eket.
96 ALGORITMUSELMÉLET 12. ELŐADÁS 17 Ha n jelből álló bemenettel kezdjük a munkát, akkor egy meneteben az M feje legfeljebb T M (n) lépést tesz jobbra = legfeljebb ugyanennyit mehet balra.
97 ALGORITMUSELMÉLET 12. ELŐADÁS 17 Ha n jelből álló bemenettel kezdjük a munkát, akkor egy meneteben az M feje legfeljebb T M (n) lépést tesz jobbra = legfeljebb ugyanennyit mehet balra. Az M pontosan akkor álljon meg (fogadja el a bemenetet), ha M ezt teszi.
98 ALGORITMUSELMÉLET 12. ELŐADÁS 17 Ha n jelből álló bemenettel kezdjük a munkát, akkor egy meneteben az M feje legfeljebb T M (n) lépést tesz jobbra = legfeljebb ugyanennyit mehet balra. Az M pontosan akkor álljon meg (fogadja el a bemenetet), ha M ezt teszi. = T M (n) 2T M (n)t M (n) = 2T 2 M (n)
99 ALGORITMUSELMÉLET 12. ELŐADÁS 17 Ha n jelből álló bemenettel kezdjük a munkát, akkor egy meneteben az M feje legfeljebb T M (n) lépést tesz jobbra = legfeljebb ugyanennyit mehet balra. Az M pontosan akkor álljon meg (fogadja el a bemenetet), ha M ezt teszi. = T M (n) 2T M (n)t M (n) = 2T 2 M (n) Ha függvényt számítunk, a végén a felesleget letöröljük.
100 ALGORITMUSELMÉLET 12. ELŐADÁS 17 Ha n jelből álló bemenettel kezdjük a munkát, akkor egy meneteben az M feje legfeljebb T M (n) lépést tesz jobbra = legfeljebb ugyanennyit mehet balra. Az M pontosan akkor álljon meg (fogadja el a bemenetet), ha M ezt teszi. = T M (n) 2T M (n)t M (n) = 2T 2 M (n) Ha függvényt számítunk, a végén a felesleget letöröljük. Ha M-nek kitüntetett input szalagja volt, akkor a bemenet hosszát, ami n, nem számítottuk bele S M (n)-be = S M (n) S M (n) + n.
101 ALGORITMUSELMÉLET 12. ELŐADÁS 17 Ha n jelből álló bemenettel kezdjük a munkát, akkor egy meneteben az M feje legfeljebb T M (n) lépést tesz jobbra = legfeljebb ugyanennyit mehet balra. Az M pontosan akkor álljon meg (fogadja el a bemenetet), ha M ezt teszi. = T M (n) 2T M (n)t M (n) = 2T 2 M (n) Ha függvényt számítunk, a végén a felesleget letöröljük. Ha M-nek kitüntetett input szalagja volt, akkor a bemenet hosszát, ami n, nem számítottuk bele S M (n)-be = S M (n) S M (n) + n. Tétel. Az M k-szalagos Turing-géphez megadható olyan 2-szalagos M Turing-gép, amely az előbbi értelemben szimulálja M-et, T M (n) O(T M (n) log T M (n)), és S M (n) S M (n) + n.
102 ALGORITMUSELMÉLET 12. ELŐADÁS 18 Tétel. Tegyük fel, hogy az M Turing-gép az L nyelvet ismeri fel, és T M (n) cn teljesül egy c > 0 állandóval. Ekkor tetszőleges ɛ > 0-ra van olyan L-et felismerő M Turing-gép is, hogy alkalmas n 0 N számmal T M (n) n(1 + ɛ), ha n n 0.
103 ALGORITMUSELMÉLET 12. ELŐADÁS 18 Tétel. Tegyük fel, hogy az M Turing-gép az L nyelvet ismeri fel, és T M (n) cn teljesül egy c > 0 állandóval. Ekkor tetszőleges ɛ > 0-ra van olyan L-et felismerő M Turing-gép is, hogy alkalmas n 0 N számmal T M (n) n(1 + ɛ), ha n n 0. Bizonyítás: Az M gépet úgy tervezzük, hogy az M gép m lépését az új legfeljebb 7 lépésben elvégzi.
104 ALGORITMUSELMÉLET 12. ELŐADÁS 18 Tétel. Tegyük fel, hogy az M Turing-gép az L nyelvet ismeri fel, és T M (n) cn teljesül egy c > 0 állandóval. Ekkor tetszőleges ɛ > 0-ra van olyan L-et felismerő M Turing-gép is, hogy alkalmas n 0 N számmal T M (n) n(1 + ɛ), ha n n 0. Bizonyítás: Az M gépet úgy tervezzük, hogy az M gép m lépését az új legfeljebb 7 lépésben elvégzi. Osszuk fel az M szalagjait m egymás utáni mezőből álló blokkokra = egy új szalagjel = az új gép t m betűt használ.
105 ALGORITMUSELMÉLET 12. ELŐADÁS 18 Tétel. Tegyük fel, hogy az M Turing-gép az L nyelvet ismeri fel, és T M (n) cn teljesül egy c > 0 állandóval. Ekkor tetszőleges ɛ > 0-ra van olyan L-et felismerő M Turing-gép is, hogy alkalmas n 0 N számmal T M (n) n(1 + ɛ), ha n n 0. Bizonyítás: Az M gépet úgy tervezzük, hogy az M gép m lépését az új legfeljebb 7 lépésben elvégzi. Osszuk fel az M szalagjait m egymás utáni mezőből álló blokkokra = egy új szalagjel = az új gép t m betűt használ. Az M -nek eggyel több szalagja lesz, mint M-nek. Az első input szalag, ezt először átkódolja egy másik szalagra.
106 ALGORITMUSELMÉLET 12. ELŐADÁS 18 Tétel. Tegyük fel, hogy az M Turing-gép az L nyelvet ismeri fel, és T M (n) cn teljesül egy c > 0 állandóval. Ekkor tetszőleges ɛ > 0-ra van olyan L-et felismerő M Turing-gép is, hogy alkalmas n 0 N számmal T M (n) n(1 + ɛ), ha n n 0. Bizonyítás: Az M gépet úgy tervezzük, hogy az M gép m lépését az új legfeljebb 7 lépésben elvégzi. Osszuk fel az M szalagjait m egymás utáni mezőből álló blokkokra = egy új szalagjel = az új gép t m betűt használ. Az M -nek eggyel több szalagja lesz, mint M-nek. Az első input szalag, ezt először átkódolja egy másik szalagra. Mi történik a szalagokkal az M gép m egymást követő lépése során?
107 ALGORITMUSELMÉLET 12. ELŐADÁS 18 Tétel. Tegyük fel, hogy az M Turing-gép az L nyelvet ismeri fel, és T M (n) cn teljesül egy c > 0 állandóval. Ekkor tetszőleges ɛ > 0-ra van olyan L-et felismerő M Turing-gép is, hogy alkalmas n 0 N számmal T M (n) n(1 + ɛ), ha n n 0. Bizonyítás: Az M gépet úgy tervezzük, hogy az M gép m lépését az új legfeljebb 7 lépésben elvégzi. Osszuk fel az M szalagjait m egymás utáni mezőből álló blokkokra = egy új szalagjel = az új gép t m betűt használ. Az M -nek eggyel több szalagja lesz, mint M-nek. Az első input szalag, ezt először átkódolja egy másik szalagra. Mi történik a szalagokkal az M gép m egymást követő lépése során? Ami ezalatt végbemegy, az csak a fejeket tartalmazó blokkoktól és azok közvetlen szomszédaitól függ.
108 ALGORITMUSELMÉLET 12. ELŐADÁS 18 Tétel. Tegyük fel, hogy az M Turing-gép az L nyelvet ismeri fel, és T M (n) cn teljesül egy c > 0 állandóval. Ekkor tetszőleges ɛ > 0-ra van olyan L-et felismerő M Turing-gép is, hogy alkalmas n 0 N számmal T M (n) n(1 + ɛ), ha n n 0. Bizonyítás: Az M gépet úgy tervezzük, hogy az M gép m lépését az új legfeljebb 7 lépésben elvégzi. Osszuk fel az M szalagjait m egymás utáni mezőből álló blokkokra = egy új szalagjel = az új gép t m betűt használ. Az M -nek eggyel több szalagja lesz, mint M-nek. Az első input szalag, ezt először átkódolja egy másik szalagra. Mi történik a szalagokkal az M gép m egymást követő lépése során? Ami ezalatt végbemegy, az csak a fejeket tartalmazó blokkoktól és azok közvetlen szomszédaitól függ. M : szalagonként három szomszédos jel megvizsgálása után a memóriájában" meglépi M következő m lépését.
109 ALGORITMUSELMÉLET 12. ELŐADÁS 18 Tétel. Tegyük fel, hogy az M Turing-gép az L nyelvet ismeri fel, és T M (n) cn teljesül egy c > 0 állandóval. Ekkor tetszőleges ɛ > 0-ra van olyan L-et felismerő M Turing-gép is, hogy alkalmas n 0 N számmal T M (n) n(1 + ɛ), ha n n 0. Bizonyítás: Az M gépet úgy tervezzük, hogy az M gép m lépését az új legfeljebb 7 lépésben elvégzi. Osszuk fel az M szalagjait m egymás utáni mezőből álló blokkokra = egy új szalagjel = az új gép t m betűt használ. Az M -nek eggyel több szalagja lesz, mint M-nek. Az első input szalag, ezt először átkódolja egy másik szalagra. Mi történik a szalagokkal az M gép m egymást követő lépése során? Ami ezalatt végbemegy, az csak a fejeket tartalmazó blokkoktól és azok közvetlen szomszédaitól függ. M : szalagonként három szomszédos jel megvizsgálása után a memóriájában" meglépi M következő m lépését.
110 ALGORITMUSELMÉLET 12. ELŐADÁS 19 = felülírja a szomszédos mezőhármasokat, helyükre teszi a fejeket.
111 ALGORITMUSELMÉLET 12. ELŐADÁS 19 = felülírja a szomszédos mezőhármasokat, helyükre teszi a fejeket. = szimuláció elvégezhető egy bal jobb jobb bal bal lépéssorozatban
112 ALGORITMUSELMÉLET 12. ELŐADÁS 19 = felülírja a szomszédos mezőhármasokat, helyükre teszi a fejeket. = szimuláció elvégezhető egy bal jobb jobb bal bal lépéssorozatban esetleg további 2 jobbralépés szükséges lehet = M feleinek mozgatása = 7 lépés
113 ALGORITMUSELMÉLET 12. ELŐADÁS 19 = felülírja a szomszédos mezőhármasokat, helyükre teszi a fejeket. = szimuláció elvégezhető egy bal jobb jobb bal bal lépéssorozatban esetleg további 2 jobbralépés szükséges lehet = M feleinek mozgatása = 7 lépés A bemenet átkódolása, majd a kódolt szalagon a fejnek a szalag elejére mozgatása = n + n m lépés
114 ALGORITMUSELMÉLET 12. ELŐADÁS 19 = felülírja a szomszédos mezőhármasokat, helyükre teszi a fejeket. = szimuláció elvégezhető egy bal jobb jobb bal bal lépéssorozatban esetleg további 2 jobbralépés szükséges lehet = M feleinek mozgatása = 7 lépés A bemenet átkódolása, majd a kódolt szalagon a fejnek a szalag elejére mozgatása = n + n m lépés n TM (n) T M (n) n n + n 7T (n) + m m m m + 8 n + n m + 7cn m + 8n ( n n m + 7c m + 8 ) n(1 + ɛ), n ha m és n olyan nagyok, hogy 1 m + 7c m + 8 n < ɛ.
115 ALGORITMUSELMÉLET 12. ELŐADÁS 19 = felülírja a szomszédos mezőhármasokat, helyükre teszi a fejeket. = szimuláció elvégezhető egy bal jobb jobb bal bal lépéssorozatban esetleg további 2 jobbralépés szükséges lehet = M feleinek mozgatása = 7 lépés A bemenet átkódolása, majd a kódolt szalagon a fejnek a szalag elejére mozgatása = n + n m lépés n TM (n) T M (n) n n + n 7T (n) + m m m m + 8 n + n m + 7cn m + 8n ( n n m + 7c m + 8 ) n(1 + ɛ), n ha m és n olyan nagyok, hogy 1 m + 7c m + 8 n < ɛ. Komolyabb, hardverrel" könnyebb.
116 ALGORITMUSELMÉLET 12. ELŐADÁS 19 = felülírja a szomszédos mezőhármasokat, helyükre teszi a fejeket. = szimuláció elvégezhető egy bal jobb jobb bal bal lépéssorozatban esetleg további 2 jobbralépés szükséges lehet = M feleinek mozgatása = 7 lépés A bemenet átkódolása, majd a kódolt szalagon a fejnek a szalag elejére mozgatása = n + n m lépés n TM (n) T M (n) n n + n 7T (n) + m m m m + 8 n + n m + 7cn m + 8n ( n n m + 7c m + 8 ) n(1 + ɛ), n ha m és n olyan nagyok, hogy 1 m + 7c m + 8 n < ɛ. Komolyabb, hardverrel" könnyebb. A Turing-gépmodellben a feladatok időigénye függ a jelkészlet méretétől
Turing-gépek. Számításelmélet (7. gyakorlat) Turing-gépek 2009/10 II. félév 1 / 1
Turing-gépek Logika és számításelmélet, 7. gyakorlat 2009/10 II. félév Számításelmélet (7. gyakorlat) Turing-gépek 2009/10 II. félév 1 / 1 A Turing-gép Az algoritmus fogalmának egy intuitív definíciója:
RészletesebbenSzá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
Részletesebbendefiniá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
RészletesebbenA 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
RészletesebbenTuring-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
RészletesebbenAutomaták mint elfogadók (akceptorok)
Automaták mint elfogadók (akceptorok) Ha egy iniciális Moore-automatában a kimenőjelek halmaza csupán kételemű: {elfogadom, nem fogadom el}, és az utolsó kimenőjel dönti el azt a kérdést, hogy elfogadható-e
RészletesebbenA számítógépes nyelvészet elmélete és gyakorlata. Automaták
A számítógépes nyelvészet elmélete és gyakorlata Automaták Nyelvek és automaták A nyelvek automatákkal is jellemezhetőek Automaták hierarchiája Chomsky-féle hierarchia Automata: új eszköz a nyelvek komplexitásának
RészletesebbenDení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,
RészletesebbenAz 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
RészletesebbenAlgoritmuselmé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
RészletesebbenAlgoritmusok 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
RészletesebbenSzá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
RészletesebbenBonyolultsá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
RészletesebbenVéges automaták, reguláris nyelvek
Véges automaták, reguláris nyelvek Kiegészítő anyag az lgoritmuselmélet tárgyhoz (a Rónyai Ivanyos Szabó: lgoritmusok könyv mellé) Friedl Katalin BME SZIT friedl@cs.bme.hu 27. augusztus 3. véges automata
RészletesebbenA Turing-gép. Formális nyelvek III.
Formális nyelvek III. Általános és környezetfüggő nyelvek Fülöp Zoltán SZTE TTIK Informatikai Intézet Számítástudomány Alapjai Tanszék 6720 Szeged, Árpád tér 2. Definíció. Egy Turing-gép egy M = (Q,Σ,Γ,
Részletesebben9. előadás Veremautomaták 1.
9. előadás 1. Dr. Kallós Gábor 2014 2015 1 Tartalom Motiváció Verem és végtelen automata Felépítés, konfigurációk és átmenetek Szavak felismerése, felismert nyelv Az elfogadó állapottal és az üres veremmel
RészletesebbenAlgoritmuselmélet 7. előadás
Algoritmuselmélet 7. 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árcius 11. ALGORITMUSELMÉLET 7. ELŐADÁS 1 Múltkori
RészletesebbenA 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
RészletesebbenLogika é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
RészletesebbenFormális nyelvek és automaták vizsgához statisztikailag igazolt várható vizsgakérdések
1. Feladat Az első feladatban szereplő - kérdések 1 Minden környezet független nyelv felismerhető veremautomatával. Minden környezet független nyelv felismerhető 1 veremmel. Minden 3. típusú nyelv felismerhető
RészletesebbenLogika é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
RészletesebbenAlgoritmuselmé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
RészletesebbenNP-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
RészletesebbenAlgoritmuselmélet 2. előadás
Algoritmuselmélet 2. 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 12. ALGORITMUSELMÉLET 2. ELŐADÁS 1 Buborék-rendezés
RészletesebbenTesztké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
RészletesebbenTuring-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
RészletesebbenÁ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
RészletesebbenLogika és számításelmélet. 7. előadás
Logika és számításelmélet 7. előadás Elérhetőség, fóliasorok, ajánlott irodalom Előadó: Tichler Krisztián Elérhetőség: 2-708, ktichler@inf.elte.hu Előadások itt lesznek: www.cs.elte.hu/ tichlerk Elérhetőség,
RészletesebbenTuring-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
RészletesebbenBonyolultsá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
RészletesebbenBonyolultsá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
RészletesebbenAlgoritmuselmé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
RészletesebbenFormális nyelvek - 9.
Formális nyelvek - 9. Csuhaj Varjú Erzsébet Algoritmusok és Alkalmazásaik Tanszék Informatikai Kar Eötvös Loránd Tudományegyetem H-1117 Budapest Pázmány Péter sétány 1/c E-mail: csuhaj@inf.elte.hu 1 Véges
Részletesebbenf(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
RészletesebbenAlgoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y.
Algoritmuselmélet Legrövidebb utak, Bellmann-Ford, Dijkstra Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 3. előadás Katona Gyula Y. (BME
RészletesebbenInformatika 1 2. el adás: Absztrakt számítógépek
Informatika 1 2. el adás: Budapesti M szaki és Gazdaságtudományi Egyetem 2015-09-08 1 2 3 A egy M = Q, Γ, b, Σ, δ, q 0, F hetes, ahol Q az 'állapotok' nem üres halmaza, Γ a 'szalag ábécé' véges, nem üres
RészletesebbenBonyolultságelmélet. Monday 26 th September, 2016, 18:27. Bonyolultságelmélet
Monday 26 th September, 2016, 18:27 A kurzus teljesítési követelményei Gyakorlat Három kisdolgozat 6 6 pontért kb. a 4., 7. és 10. gyakorlaton Egy nagydolgozat 28 pontért utolsó héten előadáson Pontszám:
RészletesebbenElőfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból
ÜTEMTERV Programozás-elmélet c. tárgyhoz (GEMAK233B, GEMAK233-B) BSc gazdaságinformatikus, programtervező informatikus alapszakok számára Óraszám: heti 2+0, (aláírás+kollokvium, 3 kredit) 2019/20-es tanév
RészletesebbenProgramozási módszertan
1 Programozási módszertan 1. Alapfogalmak Feldhoffer Gergely 2012 Féléves tananyag terve 2 Program helyességének bizonyítása Reprezentáció Logikai-matematikai eszköztár Programozási tételek bizonyítása
RészletesebbenKriptográ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
RészletesebbenAlgoritmuselmé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
RészletesebbenBevezeté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)
RészletesebbenNagysá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
RészletesebbenA 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
RészletesebbenSzámításelmélet Tamás Herendi
Számításelmélet Tamás Herendi Számításelmélet Tamás Herendi Publication date 2014. Table of Contents 1. Előszó... 1 2. Formális nyelvek... 2 3. Függvények növekedési rendje... 8 4. A Turing-gép... 14 1.
RészletesebbenAlgoritmuselmé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
RészletesebbenA 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
RészletesebbenA számítógépes nyelvészet elmélete és gyakorlata. Formális nyelvek elmélete
A számítógépes nyelvészet elmélete és gyakorlata Formális nyelvek elmélete Nyelv Nyelvnek tekintem a mondatok valamely (véges vagy végtelen) halmazát; minden egyes mondat véges hosszúságú, és elemek véges
Részletesebben1. 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,
RészletesebbenMindent 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,
RészletesebbenAlgoritmuselmélet 11. előadás
Algoritmuselmélet 11. 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árcius 26. ALGORITMUSELMÉLET 11. ELŐADÁS 1 Kruskal
RészletesebbenAlgoritmusok 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
RészletesebbenMindent 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
RészletesebbenLogika és számításelmélet. 7. előadás
Logika és számításelmélet 7. előadás Elérhetőség, fóliasorok, ajánlott irodalom Előadó: Kolonits Gábor Elérhetőség: 2-708, kolomax@inf.elte.hu Előadások innen tölthetők le: www.cs.elte.hu/ tichlerk Ajánlott
RészletesebbenLogika é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
RészletesebbenAlgoritmuselmé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
RészletesebbenDiszkrét matematika 2.C szakirány
Diszkrét matematika 2.C szakirány 2017. ősz 1. Diszkrét matematika 2.C szakirány 2. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék 2017.
RészletesebbenAlgoritmuselmélet. Függvények nagyságrendje, elágazás és korlátozás, dinamikus programozás. Katona Gyula Y.
Algoritmuselmélet Függvények nagyságrendje, elágazás és korlátozás, dinamikus programozás Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem
RészletesebbenAlgoritmuselmélet. Függvények nagyságrendje, elágazás és korlátozás, dinamikus programozás. Katona Gyula Y.
Algoritmuselmélet Függvények nagyságrendje, elágazás és korlátozás, dinamikus programozás Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem
RészletesebbenAlgoritmuselmé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
RészletesebbenNagy Gábor compalg.inf.elte.hu/ nagy
Diszkrét matematika 3. estis képzés 2018. ősz 1. Diszkrét matematika 3. estis képzés 2. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék
Részletesebben2018, 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
RészletesebbenValószínűségi változók. Várható érték és szórás
Matematikai statisztika gyakorlat Valószínűségi változók. Várható érték és szórás Valószínűségi változók 2016. március 7-11. 1 / 13 Valószínűségi változók Legyen a (Ω, A, P) valószínűségi mező. Egy X :
RészletesebbenLogika é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
RészletesebbenDr. Schuster György február / 32
Algoritmusok és magvalósítások Dr. Schuster György OE-KVK-MAI schuster.gyorgy@kvk.uni-obuda.hu 2015. február 10. 2015. február 10. 1 / 32 Algoritmus Alapfogalmak Algoritmus Definíció Algoritmuson olyan
RészletesebbenAlgoritmusok helyességének bizonyítása. A Floyd-módszer
Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk
RészletesebbenALAPFOGALMAK 1. A reláció az program programfüggvénye, ha. Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha
ALAPFOGALMAK 1 Á l l a p o t t é r Legyen I egy véges halmaz és legyenek A i, i I tetszőleges véges vagy megszámlálható, nem üres halmazok Ekkor az A= A i halmazt állapottérnek, az A i halmazokat pedig
RészletesebbenFelismerhető nyelvek zártsági tulajdonságai II... slide #30. Véges nemdeterminisztikus automata... slide #21
A számítástudomány alapjai Ésik Zoltán SZTE, Számítástudomány Alapjai Tanszék Bevezetes Bevezetés.................................................... slide #2 Automaták és formális nyelvek Szavak és nyelvek...............................................
RészletesebbenInformációs rendszerek elméleti alapjai. Információelmélet
Információs rendszerek elméleti alapjai Információelmélet Az információ nem növekedés törvénye Adatbázis x (x adatbázis tartalma) Kérdés : y Válasz: a = f(y, x) Mennyi az a információtartalma: 2017. 04.
RészletesebbenFEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI
FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI statisztika 10 X. SZIMULÁCIÓ 1. VÉLETLEN számok A véletlen számok fontos szerepet játszanak a véletlen helyzetek generálásában (pénzérme, dobókocka,
RészletesebbenDicsőségtabló Beadós programozási feladatok
Dicsőségtabló Beadós programozási feladatok Hallgatói munkák 2017 2018 Szavak kiírása ábécé felett Készítő: Maurer Márton (GI, nappali, 2017) Elméleti háttér Adott véges Ʃ ábécé felett megszámlálhatóan
RészletesebbenSzámítógép és programozás 2
Számítógép és programozás 2 8. Előadás Megoldhatóság, hatékonyság http://digitus.itk.ppke.hu/~flugi/ Elméleti áttekintés a SzámProg 1 tárgyból Algoritmikus eldönthetőség kérdése Bizonyíthatóság kérdése,
RészletesebbenDiszkrét matematika 2. estis képzés
Diszkrét matematika 2. estis képzés 2016. tavasz 1. Diszkrét matematika 2. estis képzés 9. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék
RészletesebbenALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára. 3. Előadás
ALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára 3. Előadás Előadó: Hajnal Péter Jegyzetelő: Sallai Gyöngyi 2011. február 15. 1. Eldöntő Turing-gépek Emlékeztető. L Σ nyelv pontosan
RészletesebbenNagyordó, Omega, Theta, Kisordó
A növekedés nagyságrendje, számosság Logika és számításelmélet, 6. gyakorlat 2009/10 II. félév Számításelmélet (6. gyakorlat) A növekedés nagyságrendje, számosság 2009/10 II. félév 1 / 1 Nagyordó, Omega,
RészletesebbenFormális módszerek GM_IN003_1 Program verifikálás, formalizmusok
Formális módszerek GM_IN003_1 Program verifikálás, formalizmusok Program verifikálás Konkurens programozási megoldások terjedése -> verifikálás szükséges, (nehéz) logika Legszélesebb körben alkalmazott
RészletesebbenKibernetika korábbi vizsga zárthelyi dolgozatokból válogatott tesztkérdések Figyelem! Az alábbi tesztek csak mintául szolgálnak a tesztkérdések megoldásához, azaz a bemagolásuk nem jelenti a tananyag elsajátítását
RészletesebbenALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára. 1. Előadás
ALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára 1. Előadás Előadó: Hajnal Péter Jegyzetelő: Hajnal Péter 2011. február 1. Az algoritmus naív fogalma Az algoritmus egy eljárás, ami
RészletesebbenInformációk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása
1 Információk 2 A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin Elérhetőség mesko.katalin@tfk.kefo.hu Fogadóóra: szerda 9:50-10:35 Számonkérés időpontok Április 25. 9 00 Május 17. 9 00 Június
RészletesebbenInformációs rendszerek elméleti alapjai. Információelmélet
Információs rendszerek elméleti alapjai Információelmélet Kolmogorov bonyolultság kiszámítható függvények Bevezetés: A Shannon entrópia szerepe: Ami majd a jövőben bekövetkezhet (üzenet) azt hogyan tudjuk
RészletesebbenA 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
RészletesebbenMérhetőség, σ-algebrák, Lebesgue Stieltjes-integrál, véletlen változók és eloszlásfüggvényeik
Mérhetőség, σ-algebrák, Lebesgue Stieltjes-integrál, véletlen változók és eloszlásfüggvényeik Az A halmazrendszer σ-algebra az Ω alaphalmazon, ha Ω A; A A A c A; A i A, i N, i N A i A. Az A halmazrendszer
RészletesebbenAz R halmazt a valós számok halmazának nevezzük, ha teljesíti az alábbi 3 axiómacsoport axiómáit.
2. A VALÓS SZÁMOK 2.1 A valós számok aximómarendszere Az R halmazt a valós számok halmazának nevezzük, ha teljesíti az alábbi 3 axiómacsoport axiómáit. 1.Testaxiómák R-ben két művelet van értelmezve, az
Részletesebben2014. november 5-7. Dr. Vincze Szilvia
24. november 5-7. Dr. Vincze Szilvia A differenciálszámítás az emberiség egyik legnagyobb találmánya és ez az állítás nem egy matek-szakbarbár fellengzős kijelentése. A differenciálszámítás segítségével
RészletesebbenALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára. Alapok
ALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára Alapok Előadó: Hajnal Péter 2014. 1. Az algoritmus naív fogalma Az algoritmus egy eljárás, ami az adatok megkapása után egy jól definiált
RészletesebbenNagy Gábor compalg.inf.elte.hu/ nagy
Diszkrét matematika 3. estis képzés 2018. ősz 1. Diszkrét matematika 3. estis képzés 10. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék
RészletesebbenALGORITMUSOK É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ő.
RészletesebbenDiszkré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
Részletesebben9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum.
Programozási tételek Programozási feladatok megoldásakor a top-down (strukturált) programtervezés esetén három vezérlési szerkezetet használunk: - szekvencia - elágazás - ciklus Eddig megismertük az alábbi
RészletesebbenAutomaták és formális nyelvek
Automaták és formális nyelvek Bevezetés a számítástudomány alapjaiba 1. Formális nyelvek 2006.11.13. 1 Automaták és formális nyelvek - bevezetés Automaták elmélete: információs gépek általános absztrakt
Részletesebben1. 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
RészletesebbenA sorozat fogalma. függvényeket sorozatoknak nevezzük. Amennyiben az értékkészlet. az értékkészlet a komplex számok halmaza, akkor komplex
A sorozat fogalma Definíció. A természetes számok N halmazán értelmezett függvényeket sorozatoknak nevezzük. Amennyiben az értékkészlet a valós számok halmaza, valós számsorozatról beszélünk, mígha az
RészletesebbenHatárérték. prezentációjából valók ((C)Pearson Education, Inc.) Összeállította: Wettl Ferenc október 11.
Határérték Thomas féle Kalkulus 1 című könyv alapján készült a könyvet használó hallgatóknak. A képek az eredeti könyv szabadon letölthető prezentációjából valók ((C)Pearson Education, Inc.) Összeállította:
RészletesebbenModellek ellenőrzése és tesztelése
Modellek ellenőrzése és tesztelése Rendszermodellezés imsc gyakorlat Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika
RészletesebbenHHF0CX. k darab halmaz sorbarendezésének a lehetősége k! Így adódik az alábbi képlet:
Gábor Miklós HHF0CX 5.7-16. Vegyük úgy, hogy a feleségek akkor vannak a helyükön, ha a saját férjeikkel táncolnak. Ekkor már látszik, hogy azon esetek száma, amikor senki sem táncol a saját férjével, megegyezik
RészletesebbenHardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések
Hardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések 1. Az informatikai rendszereknél mit ellenőriznek validációnál és mit verifikációnál? 2. A szoftver verifikációs technikák
Részletesebbenminden x D esetén, akkor x 0 -at a függvény maximumhelyének mondjuk, f(x 0 )-at pedig az (abszolút) maximumértékének.
Függvények határértéke és folytonossága Egy f: D R R függvényt korlátosnak nevezünk, ha a függvényértékek halmaza korlátos. Ha f(x) f(x 0 ) teljesül minden x D esetén, akkor x 0 -at a függvény maximumhelyének
RészletesebbenNagy 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
RészletesebbenBonyolultsá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,
RészletesebbenFunkcionálanalízis. n=1. n=1. x n y n. n=1
Funkcionálanalízis 2011/12 tavaszi félév - 2. előadás 1.4. Lényeges alap-terek, példák Sorozat terek (Folytatás.) C: konvergens sorozatok tere. A tér pontjai sorozatok: x = (x n ). Ezen belül C 0 a nullsorozatok
Részletesebben