• Nem Talált Eredményt

Algoritmuselmélet Bonyolultságelmélet Katona Gyula Y.

N/A
N/A
Protected

Academic year: 2022

Ossza meg "Algoritmuselmélet Bonyolultságelmélet Katona Gyula Y."

Copied!
100
0
0

Teljes szövegt

(1)

Algoritmuselmélet

Bonyolultságelmélet

Katona Gyula Y.

Számítástudományi és Információelméleti Tanszék Budapesti M ˝uszaki és Gazdaságtudományi Egyetem

12. el ˝oadás

(2)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn

=⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(3)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek

n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(4)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n

=⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(5)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó

nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(6)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn

=⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(7)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(8)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó n2

=⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(9)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó

n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(10)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3

=⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(11)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó

n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(12)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4

=⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(13)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(14)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó n10

=⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(15)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó

n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(16)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100

=⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(17)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(18)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n

=⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(19)

Algoritmusok hatékonysága

Algoritmus lépésszáma:

logn =⇒remek n =⇒nagyon jó nlogn =⇒egész jó

n2 =⇒nem túl nagyn-re jó n3 =⇒nem túl nagyn-re lehet jó n4 =⇒nem túl nagyn-re néha jó

n10 =⇒50 év múlva, nem túl nagyn-re lehet jó n100 =⇒1 millió év múlva lehet jó

2n =⇒nagyon kisn-re lehet jó, de nagyn-re sohasem

(20)

Algoritmusok hatékonysága

Az eddig tanult algoritmusok általában hatékonyak voltak:

a+bkiszámítása: Input mérete: n=loga+logb, Lépésszám: O(loga+logb) =O(n)

abkiszámítása: Input mérete: n=loga+logb, Lépésszám: O((loga+logb)logb) =O(n2) maradékos osztás, legnagyobb közös osztó: Input mérete: n=loga+logb,Lépésszám: O(n2)

Gráfalgoritmusok (összefügg ˝oség, legrövidebb út, párosítás, . . . ) Input mérete: n=e(G)vagyn=v2(G),

Lépésszám: O(n),O(n2),O(n3)

Van olyan, amit nem lehet hatékonyan kiszámolni: 2akiszámítása: Input mérete: n=loga,

Lépésszám≥output mérete: log(2a) =a= Ω(2n)

(21)

Algoritmusok hatékonysága

Az eddig tanult algoritmusok általában hatékonyak voltak:

a+bkiszámítása: Input mérete: n=loga+logb, Lépésszám: O(loga+logb) =O(n)

abkiszámítása: Input mérete: n=loga+logb, Lépésszám: O((loga+logb)logb) =O(n2) maradékos osztás, legnagyobb közös osztó: Input mérete: n=loga+logb,Lépésszám: O(n2)

Gráfalgoritmusok (összefügg ˝oség, legrövidebb út, párosítás, . . . ) Input mérete: n=e(G)vagyn=v2(G),

Lépésszám: O(n),O(n2),O(n3)

Van olyan, amit nem lehet hatékonyan kiszámolni: 2akiszámítása: Input mérete: n=loga,

Lépésszám≥output mérete: log(2a) =a= Ω(2n)

(22)

Algoritmusok hatékonysága

Az eddig tanult algoritmusok általában hatékonyak voltak:

a+bkiszámítása: Input mérete: n=loga+logb, Lépésszám: O(loga+logb) =O(n)

abkiszámítása: Input mérete: n=loga+logb, Lépésszám: O((loga+logb)logb) =O(n2)

maradékos osztás, legnagyobb közös osztó: Input mérete: n=loga+logb,Lépésszám: O(n2)

Gráfalgoritmusok (összefügg ˝oség, legrövidebb út, párosítás, . . . ) Input mérete: n=e(G)vagyn=v2(G),

Lépésszám: O(n),O(n2),O(n3)

Van olyan, amit nem lehet hatékonyan kiszámolni: 2akiszámítása: Input mérete: n=loga,

Lépésszám≥output mérete: log(2a) =a= Ω(2n)

(23)

Algoritmusok hatékonysága

Az eddig tanult algoritmusok általában hatékonyak voltak:

a+bkiszámítása: Input mérete: n=loga+logb, Lépésszám: O(loga+logb) =O(n)

abkiszámítása: Input mérete: n=loga+logb, Lépésszám: O((loga+logb)logb) =O(n2) maradékos osztás, legnagyobb közös osztó:

Input mérete: n=loga+logb,Lépésszám: O(n2)

Gráfalgoritmusok (összefügg ˝oség, legrövidebb út, párosítás, . . . ) Input mérete: n=e(G)vagyn=v2(G),

Lépésszám: O(n),O(n2),O(n3)

Van olyan, amit nem lehet hatékonyan kiszámolni: 2akiszámítása: Input mérete: n=loga,

Lépésszám≥output mérete: log(2a) =a= Ω(2n)

(24)

Algoritmusok hatékonysága

Az eddig tanult algoritmusok általában hatékonyak voltak:

a+bkiszámítása: Input mérete: n=loga+logb, Lépésszám: O(loga+logb) =O(n)

abkiszámítása: Input mérete: n=loga+logb, Lépésszám: O((loga+logb)logb) =O(n2) maradékos osztás, legnagyobb közös osztó:

Input mérete: n=loga+logb,Lépésszám: O(n2)

Gráfalgoritmusok (összefügg ˝oség, legrövidebb út, párosítás, . . . ) Input mérete: n=e(G)vagyn=v2(G),

Lépésszám: O(n),O(n2),O(n3)

Van olyan, amit nem lehet hatékonyan kiszámolni: 2akiszámítása: Input mérete: n=loga,

Lépésszám≥output mérete: log(2a) =a= Ω(2n)

(25)

Algoritmusok hatékonysága

Az eddig tanult algoritmusok általában hatékonyak voltak:

a+bkiszámítása: Input mérete: n=loga+logb, Lépésszám: O(loga+logb) =O(n)

abkiszámítása: Input mérete: n=loga+logb, Lépésszám: O((loga+logb)logb) =O(n2) maradékos osztás, legnagyobb közös osztó:

Input mérete: n=loga+logb,Lépésszám: O(n2)

Gráfalgoritmusok (összefügg ˝oség, legrövidebb út, párosítás, . . . ) Input mérete: n=e(G)vagyn=v2(G),

Lépésszám: O(n),O(n2),O(n3)

Van olyan, amit nem lehet hatékonyan kiszámolni:

2akiszámítása: Input mérete: n=loga,

Lépésszám≥output mérete: log(2a) =a= Ω(2n)

(26)

Algoritmusok hatékonysága

Az eddig tanult algoritmusok általában hatékonyak voltak:

a+bkiszámítása: Input mérete: n=loga+logb, Lépésszám: O(loga+logb) =O(n)

abkiszámítása: Input mérete: n=loga+logb, Lépésszám: O((loga+logb)logb) =O(n2) maradékos osztás, legnagyobb közös osztó:

Input mérete: n=loga+logb,Lépésszám: O(n2)

Gráfalgoritmusok (összefügg ˝oség, legrövidebb út, párosítás, . . . ) Input mérete: n=e(G)vagyn=v2(G),

Lépésszám: O(n),O(n2),O(n3)

Van olyan, amit nem lehet hatékonyan kiszámolni:

2akiszámítása: Input mérete: n=loga,

Lépésszám≥output mérete: log(2a) =a= Ω(2n)

(27)

Eldöntési problémák

Mostantól csak olyan típusú feladatokkal foglalkozunk, melyekre a válasz 1 bit: IGENvagyNEM, ezek az úgynevezetteldöntési problémák.

PRÍM

Bemenet:m>0 egész. Kérdés: mprímszám?

ÚT

Bemenet: G= (V,E) irányítatlan gráf és két kitüntetett csúcs,s,t ∈V.

Kérdés: Van-eséstközött út a gráfban?

MINÚT

Bemenet: G= (V,E) irányítatlan gráf és két kitüntetett csúcs,s,t ∈V,k egész.

Kérdés: Van-e s és t között legfeljebb k hosszú út a gráfban?

(28)

Eldöntési problémák

Mostantól csak olyan típusú feladatokkal foglalkozunk, melyekre a válasz 1 bit: IGENvagyNEM, ezek az úgynevezetteldöntési problémák.

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

ÚT

Bemenet: G= (V,E) irányítatlan gráf és két kitüntetett csúcs,s,t ∈V.

Kérdés: Van-eséstközött út a gráfban?

MINÚT

Bemenet: G= (V,E) irányítatlan gráf és két kitüntetett csúcs,s,t ∈V,k egész.

Kérdés: Van-e s és t között legfeljebb k hosszú út a gráfban?

(29)

Eldöntési problémák

Mostantól csak olyan típusú feladatokkal foglalkozunk, melyekre a válasz 1 bit: IGENvagyNEM, ezek az úgynevezetteldöntési problémák.

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

ÚT

Bemenet: G= (V,E) irányítatlan gráf és két kitüntetett csúcs,s,t ∈V.

Kérdés: Van-eséstközött út a gráfban?

MINÚT

Bemenet: G= (V,E) irányítatlan gráf és két kitüntetett csúcs,s,t ∈V,k egész.

Kérdés: Van-e s és t között legfeljebb k hosszú út a gráfban?

(30)

Eldöntési problémák

Mostantól csak olyan típusú feladatokkal foglalkozunk, melyekre a válasz 1 bit: IGENvagyNEM, ezek az úgynevezetteldöntési problémák.

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

ÚT

Bemenet: G= (V,E) irányítatlan gráf és két kitüntetett csúcs,s,t ∈V.

Kérdés: Van-eséstközött út a gráfban?

MINÚT

Bemenet: G= (V,E) irányítatlan gráf és két kitüntetett csúcs,s,t ∈V,k egész.

Kérdés: Van-e s és t között legfeljebb k hosszú út a gráfban?

(31)

Eldöntési problémák

Legtöbbször igaz, hogy egy optimalizálási feladat megoldható egy megfelel ˝o eldöntési feladat algoritmusának néhány futtatásával.

Például:

HaMINÚT-ra van egy gyors algoritmusunk, akkor bináris kereséssel O(loge)db futtatással meghatározhatjuk a legrövidebb út hosszát. Elég az eldöntési problémákat vizsgálni.

Definíció

Egy eldöntési problémához tartozóLnyelvazoknak a bemeneteknek a halmaza, amelyekre a válaszIGEN. A lehetséges bemeneteket

(amelyek tehát vagy beletartoznak L-be vagy nem),szavaknakhívjuk. Egy X eldöntési probléma és x bemenet eseténx ∈X jelöli, hogy az x bemenetre a válaszIGEN.

(32)

Eldöntési problémák

Legtöbbször igaz, hogy egy optimalizálási feladat megoldható egy megfelel ˝o eldöntési feladat algoritmusának néhány futtatásával.

Például:

HaMINÚT-ra van egy gyors algoritmusunk, akkor bináris kereséssel O(loge)db futtatással meghatározhatjuk a legrövidebb út hosszát.

Elég az eldöntési problémákat vizsgálni.

Definíció

Egy eldöntési problémához tartozóLnyelvazoknak a bemeneteknek a halmaza, amelyekre a válaszIGEN. A lehetséges bemeneteket

(amelyek tehát vagy beletartoznak L-be vagy nem),szavaknakhívjuk. Egy X eldöntési probléma és x bemenet eseténx ∈X jelöli, hogy az x bemenetre a válaszIGEN.

(33)

Eldöntési problémák

Legtöbbször igaz, hogy egy optimalizálási feladat megoldható egy megfelel ˝o eldöntési feladat algoritmusának néhány futtatásával.

Például:

HaMINÚT-ra van egy gyors algoritmusunk, akkor bináris kereséssel O(loge)db futtatással meghatározhatjuk a legrövidebb út hosszát.

Elég az eldöntési problémákat vizsgálni.

Definíció

Egy eldöntési problémához tartozóLnyelvazoknak a bemeneteknek a halmaza, amelyekre a válaszIGEN. A lehetséges bemeneteket

(amelyek tehát vagy beletartoznak L-be vagy nem),szavaknakhívjuk. Egy X eldöntési probléma és x bemenet eseténx ∈X jelöli, hogy az x bemenetre a válaszIGEN.

(34)

Eldöntési problémák

Legtöbbször igaz, hogy egy optimalizálási feladat megoldható egy megfelel ˝o eldöntési feladat algoritmusának néhány futtatásával.

Például:

HaMINÚT-ra van egy gyors algoritmusunk, akkor bináris kereséssel O(loge)db futtatással meghatározhatjuk a legrövidebb út hosszát.

Elég az eldöntési problémákat vizsgálni.

Definíció

Egy eldöntési problémához tartozóLnyelvazoknak a bemeneteknek a halmaza, amelyekre a válaszIGEN. A lehetséges bemeneteket

(amelyek tehát vagy beletartoznak L-be vagy nem),szavaknakhívjuk.

Egy X eldöntési probléma és x bemenet eseténx ∈X jelöli, hogy az x bemenetre a válaszIGEN.

(35)

Eldöntési problémák

Legtöbbször igaz, hogy egy optimalizálási feladat megoldható egy megfelel ˝o eldöntési feladat algoritmusának néhány futtatásával.

Például:

HaMINÚT-ra van egy gyors algoritmusunk, akkor bináris kereséssel O(loge)db futtatással meghatározhatjuk a legrövidebb út hosszát.

Elég az eldöntési problémákat vizsgálni.

Definíció

Egy eldöntési problémához tartozóLnyelvazoknak a bemeneteknek a halmaza, amelyekre a válaszIGEN. A lehetséges bemeneteket

(amelyek tehát vagy beletartoznak L-be vagy nem),szavaknakhívjuk.

(36)

Polinom id ˝oben eldönthet ˝o problémák

Definíció

JelöljePazoknak az eldöntési problémáknak a halmazát, amelyekhez van olyanAalgoritmus, amely minden x bemenetre helyesen

megválaszolja a kérdést, és az algoritmus lépésszámapolinomiális, azaz O(|x|k)valamely k pozitív konstansra.

(Itt|x|az x bemenet hosszát jelöli, k független x -t ˝ol.) Az eddig tanult algoritmusok eldöntési változataP-ben van.

Probléma

Milyen tulajdonsága lehet olyan problémáknak, amikr ˝ol nem tudjuk, hogyP-ben van-e?

(37)

Polinom id ˝oben eldönthet ˝o problémák

Definíció

JelöljePazoknak az eldöntési problémáknak a halmazát, amelyekhez van olyanAalgoritmus, amely minden x bemenetre helyesen

megválaszolja a kérdést, és az algoritmus lépésszámapolinomiális, azaz O(|x|k)valamely k pozitív konstansra.

(Itt|x|az x bemenet hosszát jelöli, k független x -t ˝ol.)

Az eddig tanult algoritmusok eldöntési változataP-ben van.

Probléma

Milyen tulajdonsága lehet olyan problémáknak, amikr ˝ol nem tudjuk, hogyP-ben van-e?

(38)

Polinom id ˝oben eldönthet ˝o problémák

Definíció

JelöljePazoknak az eldöntési problémáknak a halmazát, amelyekhez van olyanAalgoritmus, amely minden x bemenetre helyesen

megválaszolja a kérdést, és az algoritmus lépésszámapolinomiális, azaz O(|x|k)valamely k pozitív konstansra.

(Itt|x|az x bemenet hosszát jelöli, k független x -t ˝ol.) Az eddig tanult algoritmusok eldöntési változataP-ben van.

Probléma

Milyen tulajdonsága lehet olyan problémáknak, amikr ˝ol nem tudjuk, hogyP-ben van-e?

(39)

Polinom id ˝oben eldönthet ˝o problémák

Definíció

JelöljePazoknak az eldöntési problémáknak a halmazát, amelyekhez van olyanAalgoritmus, amely minden x bemenetre helyesen

megválaszolja a kérdést, és az algoritmus lépésszámapolinomiális, azaz O(|x|k)valamely k pozitív konstansra.

(Itt|x|az x bemenet hosszát jelöli, k független x -t ˝ol.) Az eddig tanult algoritmusok eldöntési változataP-ben van.

Probléma

Milyen tulajdonsága lehet olyan problémáknak, amikr ˝ol nem tudjuk,

(40)

Hatékony tanúsítvány

Definíció

Azt mondjuk, hogy azX eldöntési problémához vanhatékony tanúsítvány, ha van olyanT algoritmus, melynek a bemenete(x,t) párokból áll, aholx azX probléma egy lehetséges bemenete és a következ ˝o feltételek teljesülnek: léteznek olyan c és k pozitív konstansok, hogy

hax ∈X, akkorvanolyant, aminek hossza|t|=O(|x|c)és T(x,t) =IGEN,

hax 6∈X, akkornincsolyant, aminek hossza|t|=O(|x|c)és T(x,t) =IGEN.

AT algoritmus polinomiális, azaz a lépésszáma O((|x|+|t|)k).

Röviden:Hax bemenet esetén az eldöntési problémára a válasz

IGEN, akkor erre van olyan polinom hosszú tanú (t), amir ˝olT-vel polinom id ˝oben ellen ˝orizhet ˝o, hogy valóbanIGEN. Ha a válaszNEM, akkor viszont nincs olyan rövid érvelés, amivel be lehet minket csapni.

(41)

Hatékony tanúsítvány

Definíció

Azt mondjuk, hogy azX eldöntési problémához vanhatékony tanúsítvány, ha van olyanT algoritmus, melynek a bemenete(x,t) párokból áll, aholx azX probléma egy lehetséges bemenete és a következ ˝o feltételek teljesülnek: léteznek olyan c és k pozitív konstansok, hogy

hax ∈X, akkorvanolyant, aminek hossza|t|=O(|x|c)és T(x,t) =IGEN,

hax 6∈X, akkornincsolyant, aminek hossza|t|=O(|x|c)és T(x,t) =IGEN.

AT algoritmus polinomiális, azaz a lépésszáma O((|x|+|t|)k).

Röviden:Hax bemenet esetén az eldöntési problémára a válasz

Ha a válaszNEM, akkor viszont nincs olyan rövid érvelés, amivel be lehet minket csapni.

(42)

Hatékony tanúsítvány

Definíció

Azt mondjuk, hogy azX eldöntési problémához vanhatékony tanúsítvány, ha van olyanT algoritmus, melynek a bemenete(x,t) párokból áll, aholx azX probléma egy lehetséges bemenete és a következ ˝o feltételek teljesülnek: léteznek olyan c és k pozitív konstansok, hogy

hax ∈X, akkorvanolyant, aminek hossza|t|=O(|x|c)és T(x,t) =IGEN,

hax 6∈X, akkornincsolyant, aminek hossza|t|=O(|x|c)és T(x,t) =IGEN.

AT algoritmus polinomiális, azaz a lépésszáma O((|x|+|t|)k).

Röviden:Hax bemenet esetén az eldöntési problémára a válasz

IGEN, akkor erre van olyan polinom hosszú tanú (t), amir ˝olT-vel polinom id ˝oben ellen ˝orizhet ˝o, hogy valóbanIGEN. Ha a válaszNEM,

(43)

NP-beli problémák

Definíció

JelöljeNPazoknak az eldöntési problémáknak a halmazát, amelyekre van hatékony tanúsítvány.

Megjegyzés

AzNPanemdeterminisztikus polinom id ˝orövidítése, ami arra utal, hogyt „megtalálása" nem feltétlenül determinisztikusan történik, egy x ∈X esetén elég, ha megsejtjük, mi lesz jó. Viszont utána az

ellen ˝orzés, hogy valóban jó at, amit választottunk (kaptunk valakit ˝ol), már polinom id ˝oben megy.

(44)

NP-beli problémák

Definíció

JelöljeNPazoknak az eldöntési problémáknak a halmazát, amelyekre van hatékony tanúsítvány.

Megjegyzés

AzNPanemdeterminisztikus polinom id ˝orövidítése, ami arra utal, hogyt „megtalálása" nem feltétlenül determinisztikusan történik, egy x ∈X esetén elég, ha megsejtjük, mi lesz jó. Viszont utána az

ellen ˝orzés, hogy valóban jó at, amit választottunk (kaptunk valakit ˝ol), már polinom id ˝oben megy.

(45)

coNP-beli problémák

Definíció

EgyX eldöntési problémakomplementereaz azX-sal jelölt probléma, melynek bemenete ugyanolyan mint az X esetén, de a válasz

ellentétes. Azaz minden lehetséges x bemenetre x ∈X ⇔x 6∈X.

Például: ÖSSZETETT=PRÍM

Definíció

JelöljecoNPazNP-beli problémákkomplementereib ˝olálló halmazt, azaz X ∈coNP⇔X ∈NP.

Vagyis:AzNP-beli problémák esetében a definíció szerint azIGEN

válaszra van polinom hosszú, polinom id ˝oben ellen ˝orizhet ˝o bizonyíték, acoNP-beli problémák azok, ahol aNEMválaszra van polinom hosszú, polinom id ˝oben ellen ˝orizhet ˝o bizonyíték.

(46)

coNP-beli problémák

Definíció

EgyX eldöntési problémakomplementereaz azX-sal jelölt probléma, melynek bemenete ugyanolyan mint az X esetén, de a válasz

ellentétes. Azaz minden lehetséges x bemenetre x ∈X ⇔x 6∈X. Például: ÖSSZETETT=PRÍM

Definíció

JelöljecoNPazNP-beli problémákkomplementereib ˝olálló halmazt, azaz X ∈coNP⇔X ∈NP.

Vagyis:AzNP-beli problémák esetében a definíció szerint azIGEN

válaszra van polinom hosszú, polinom id ˝oben ellen ˝orizhet ˝o bizonyíték, acoNP-beli problémák azok, ahol aNEMválaszra van polinom hosszú, polinom id ˝oben ellen ˝orizhet ˝o bizonyíték.

(47)

coNP-beli problémák

Definíció

EgyX eldöntési problémakomplementereaz azX-sal jelölt probléma, melynek bemenete ugyanolyan mint az X esetén, de a válasz

ellentétes. Azaz minden lehetséges x bemenetre x ∈X ⇔x 6∈X. Például: ÖSSZETETT=PRÍM

Definíció

JelöljecoNPazNP-beli problémákkomplementereib ˝olálló halmazt, azaz X ∈coNP⇔X ∈NP.

Vagyis:AzNP-beli problémák esetében a definíció szerint azIGEN

válaszra van polinom hosszú, polinom id ˝oben ellen ˝orizhet ˝o bizonyíték, acoNP-beli problémák azok, ahol aNEMválaszra van polinom hosszú, polinom id ˝oben ellen ˝orizhet ˝o bizonyíték.

(48)

coNP-beli problémák

Definíció

EgyX eldöntési problémakomplementereaz azX-sal jelölt probléma, melynek bemenete ugyanolyan mint az X esetén, de a válasz

ellentétes. Azaz minden lehetséges x bemenetre x ∈X ⇔x 6∈X. Például: ÖSSZETETT=PRÍM

Definíció

JelöljecoNPazNP-beli problémákkomplementereib ˝olálló halmazt, azaz X ∈coNP⇔X ∈NP.

Vagyis:AzNP-beli problémák esetében a definíció szerint azIGEN

válaszra van polinom hosszú, polinom id ˝oben ellen ˝orizhet ˝o bizonyíték, acoNP-beli problémák azok, ahol aNEMválaszra van polinom hosszú, polinom id ˝oben ellen ˝orizhet ˝o bizonyíték.

(49)

Példák

ÖSSZEFÜGG ˝OSÉG

Bemenet:G= (V,E)irányítatlan gráf.

Kérdés: Gösszefügg ˝o?

∈NP: t→Gegy feszít ˝ofája:F;

T→ellen ˝orzi, hogyF tényleg feszít ˝ofa-eG-ben.

∈coNP:

t→U⊂V

T→ellen ˝orzi, hogy nincs élUésV−U-beli pontok között

(50)

Példák

ÖSSZEFÜGG ˝OSÉG

Bemenet:G= (V,E)irányítatlan gráf.

Kérdés: Gösszefügg ˝o?

∈NP:

t→Gegy feszít ˝ofája:F;

T→ellen ˝orzi, hogyF tényleg feszít ˝ofa-eG-ben.

∈coNP:

t→U⊂V

T→ellen ˝orzi, hogy nincs élUésV−U-beli pontok között

(51)

Példák

ÖSSZEFÜGG ˝OSÉG

Bemenet:G= (V,E)irányítatlan gráf.

Kérdés: Gösszefügg ˝o?

∈NP: t→Gegy feszít ˝ofája:F;

T→ellen ˝orzi, hogyF tényleg feszít ˝ofa-eG-ben.

∈coNP:

t→U⊂V

T→ellen ˝orzi, hogy nincs élUésV−U-beli pontok között

(52)

Példák

ÖSSZEFÜGG ˝OSÉG

Bemenet:G= (V,E)irányítatlan gráf.

Kérdés: Gösszefügg ˝o?

∈NP: t→Gegy feszít ˝ofája:F;

T→ellen ˝orzi, hogyF tényleg feszít ˝ofa-eG-ben.

∈coNP:

t→U⊂V

T→ellen ˝orzi, hogy nincs élUésV−U-beli pontok között

(53)

Példák

ÖSSZEFÜGG ˝OSÉG

Bemenet:G= (V,E)irányítatlan gráf.

Kérdés: Gösszefügg ˝o?

∈NP: t→Gegy feszít ˝ofája:F;

T→ellen ˝orzi, hogyF tényleg feszít ˝ofa-eG-ben.

∈coNP:

t→U⊂V

T→ellen ˝orzi, hogy nincs élUésV−U-beli pontok között

(54)

Példák

ÖSSZEFÜGG ˝OSÉG

Bemenet:G= (V,E)irányítatlan gráf.

Kérdés: Gösszefügg ˝o?

∈NP: t→Gegy feszít ˝ofája:F;

T→ellen ˝orzi, hogyF tényleg feszít ˝ofa-eG-ben.

∈coNP:

t→U ⊂V

T→ellen ˝orzi, hogy nincs élUésV−U-beli pontok között

(55)

Példák

ÖSSZEFÜGG ˝OSÉG

Bemenet:G= (V,E)irányítatlan gráf.

Kérdés: Gösszefügg ˝o?

∈NP: t→Gegy feszít ˝ofája:F;

T→ellen ˝orzi, hogyF tényleg feszít ˝ofa-eG-ben.

∈coNP:

t→U ⊂V

T→ellen ˝orzi, hogy nincs élUésV−U-beli pontok között

(56)

Példák

PÁROS-GRÁF-PÁROSÍTÁS

Bemenet:G= (A,B;E)páros gráf Kérdés: Van-eG-ben teljes párosítás?

∈NP:

t→élekE0 részhalmaza;

T→ ellen ˝orzi, hogy E0 tényleg teljes párosítás-e G-ben.

∈coNP: t→X ⊆A

T→ellen ˝orzi, hogy teljesül-e|X|>|N(X)|.

(57)

Példák

PÁROS-GRÁF-PÁROSÍTÁS

Bemenet:G= (A,B;E)páros gráf Kérdés: Van-eG-ben teljes párosítás?

∈NP:

t→élekE0 részhalmaza;

T→ ellen ˝orzi, hogy E0 tényleg teljes párosítás-e G-ben.

∈coNP: t→X ⊆A

T→ellen ˝orzi, hogy teljesül-e|X|>|N(X)|.

(58)

Példák

PÁROS-GRÁF-PÁROSÍTÁS

Bemenet:G= (A,B;E)páros gráf Kérdés: Van-eG-ben teljes párosítás?

∈NP:

t→élekE0 részhalmaza;

T→ ellen ˝orzi, hogy E0 tényleg teljes párosítás-e G-ben.

∈coNP: t→X ⊆A

T→ellen ˝orzi, hogy teljesül-e|X|>|N(X)|.

(59)

Példák

PÁROS-GRÁF-PÁROSÍTÁS

Bemenet:G= (A,B;E)páros gráf Kérdés: Van-eG-ben teljes párosítás?

∈NP:

t→élekE0 részhalmaza;

T→ ellen ˝orzi, hogy E0 tényleg teljes párosítás-e G-ben.

∈coNP: t→X ⊆A

T→ellen ˝orzi, hogy teljesül-e|X|>|N(X)|.

(60)

Példák

PÁROS-GRÁF-PÁROSÍTÁS

Bemenet:G= (A,B;E)páros gráf Kérdés: Van-eG-ben teljes párosítás?

∈NP:

t→élekE0 részhalmaza;

T→ ellen ˝orzi, hogy E0 tényleg teljes párosítás-e G-ben.

∈coNP:

t→X ⊆A

T→ellen ˝orzi, hogy teljesül-e|X|>|N(X)|.

(61)

Példák

PÁROS-GRÁF-PÁROSÍTÁS

Bemenet:G= (A,B;E)páros gráf Kérdés: Van-eG-ben teljes párosítás?

∈NP:

t→élekE0 részhalmaza;

T→ ellen ˝orzi, hogy E0 tényleg teljes párosítás-e G-ben.

∈coNP: t→X ⊆A

T→ellen ˝orzi, hogy teljesül-e|X|>|N(X)|.

(62)

Példák

PÁROS-GRÁF-PÁROSÍTÁS

Bemenet:G= (A,B;E)páros gráf Kérdés: Van-eG-ben teljes párosítás?

∈NP:

t→élekE0 részhalmaza;

T→ ellen ˝orzi, hogy E0 tényleg teljes párosítás-e G-ben.

∈coNP: t→X ⊆A

T→ellen ˝orzi, hogy teljesül-e|X|>|N(X)|.

(63)

Példák

SÍKGRÁF

Bemenet:G= (V,E)gráf.

Kérdés: Igaz-e, hogyGsíkbarajzolható?

∈NP:

t→ egy síkbarajzolásának leírása egy alkalmas számsorozattal; (Nem nyilvánvaló, hogy van ilyen polinom méret ˝u t, de a Fáry-Wagner tételb ˝ol kö- vetkezik, hogy igaz.)

T→ellen ˝orzi, hogyt ténylegGsíkbarajzolása.

∈coNP:

t→egyK5-tel vagyK3,3-mal topologikusan izomorf részgráfG-ben;

T→ellen ˝orzi, hogyttényleg ilyen részgráf.

(64)

Példák

SÍKGRÁF

Bemenet:G= (V,E)gráf.

Kérdés: Igaz-e, hogyGsíkbarajzolható?

∈NP:

t→ egy síkbarajzolásának leírása egy alkalmas számsorozattal; (Nem nyilvánvaló, hogy van ilyen polinom méret ˝u t, de a Fáry-Wagner tételb ˝ol kö- vetkezik, hogy igaz.)

T→ellen ˝orzi, hogyt ténylegGsíkbarajzolása.

∈coNP:

t→egyK5-tel vagyK3,3-mal topologikusan izomorf részgráfG-ben;

T→ellen ˝orzi, hogyttényleg ilyen részgráf.

(65)

Példák

SÍKGRÁF

Bemenet:G= (V,E)gráf.

Kérdés: Igaz-e, hogyGsíkbarajzolható?

∈NP:

t→ egy síkbarajzolásának leírása egy alkalmas számsorozattal; (Nem nyilvánvaló, hogy van ilyen polinom méret ˝u t, de a Fáry-Wagner tételb ˝ol kö- vetkezik, hogy igaz.)

T→ellen ˝orzi, hogyt ténylegGsíkbarajzolása.

∈coNP:

t→egyK5-tel vagyK3,3-mal topologikusan izomorf részgráfG-ben;

T→ellen ˝orzi, hogyttényleg ilyen részgráf.

(66)

Példák

SÍKGRÁF

Bemenet:G= (V,E)gráf.

Kérdés: Igaz-e, hogyGsíkbarajzolható?

∈NP:

t→ egy síkbarajzolásának leírása egy alkalmas számsorozattal; (Nem nyilvánvaló, hogy van ilyen polinom méret ˝u t, de a Fáry-Wagner tételb ˝ol kö- vetkezik, hogy igaz.)

T→ellen ˝orzi, hogyt ténylegGsíkbarajzolása.

∈coNP:

t→egyK5-tel vagyK3,3-mal topologikusan izomorf részgráfG-ben;

T→ellen ˝orzi, hogyttényleg ilyen részgráf.

(67)

Példák

SÍKGRÁF

Bemenet:G= (V,E)gráf.

Kérdés: Igaz-e, hogyGsíkbarajzolható?

∈NP:

t→ egy síkbarajzolásának leírása egy alkalmas számsorozattal; (Nem nyilvánvaló, hogy van ilyen polinom méret ˝u t, de a Fáry-Wagner tételb ˝ol kö- vetkezik, hogy igaz.)

T→ellen ˝orzi, hogyt ténylegGsíkbarajzolása.

∈coNP:

t→egyK5-tel vagyK3,3-mal topologikusan izomorf részgráfG-ben;

T→ellen ˝orzi, hogyttényleg ilyen részgráf.

(68)

Példák

SÍKGRÁF

Bemenet:G= (V,E)gráf.

Kérdés: Igaz-e, hogyGsíkbarajzolható?

∈NP:

t→ egy síkbarajzolásának leírása egy alkalmas számsorozattal; (Nem nyilvánvaló, hogy van ilyen polinom méret ˝u t, de a Fáry-Wagner tételb ˝ol kö- vetkezik, hogy igaz.)

T→ellen ˝orzi, hogyt ténylegGsíkbarajzolása.

∈coNP:

t→egyK5-tel vagyK3,3-mal topologikusan izomorf részgráfG-ben;

T→ellen ˝orzi, hogyttényleg ilyen részgráf.

(69)

Példák

SÍKGRÁF

Bemenet:G= (V,E)gráf.

Kérdés: Igaz-e, hogyGsíkbarajzolható?

∈NP:

t→ egy síkbarajzolásának leírása egy alkalmas számsorozattal; (Nem nyilvánvaló, hogy van ilyen polinom méret ˝u t, de a Fáry-Wagner tételb ˝ol kö- vetkezik, hogy igaz.)

T→ellen ˝orzi, hogyt ténylegGsíkbarajzolása.

∈coNP:

t→egyK5-tel vagyK3,3-mal topologikusan izomorf részgráfG-ben;

T→ellen ˝orzi, hogyttényleg ilyen részgráf.

(70)

Példák

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

∈NP: t→Bonyolult, de van ilyen;

T→ellen ˝orzi, hogyt tényleg tanúsítvány.

∈coNP: t→1<k <mszám, amimosztója; T→ellen ˝orzi, hogyk osztja-em-et.

(71)

Példák

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

∈NP:

t→Bonyolult, de van ilyen;

T→ellen ˝orzi, hogyt tényleg tanúsítvány.

∈coNP: t→1<k <mszám, amimosztója; T→ellen ˝orzi, hogyk osztja-em-et.

(72)

Példák

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

∈NP: t→Bonyolult, de van ilyen;

T→ellen ˝orzi, hogyt tényleg tanúsítvány.

∈coNP: t→1<k <mszám, amimosztója; T→ellen ˝orzi, hogyk osztja-em-et.

(73)

Példák

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

∈NP: t→Bonyolult, de van ilyen;

T→ellen ˝orzi, hogyt tényleg tanúsítvány.

∈coNP: t→1<k <mszám, amimosztója; T→ellen ˝orzi, hogyk osztja-em-et.

(74)

Példák

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

∈NP: t→Bonyolult, de van ilyen;

T→ellen ˝orzi, hogyt tényleg tanúsítvány.

∈coNP:

t→1<k <mszám, amimosztója; T→ellen ˝orzi, hogyk osztja-em-et.

(75)

Példák

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

∈NP: t→Bonyolult, de van ilyen;

T→ellen ˝orzi, hogyt tényleg tanúsítvány.

∈coNP: t→1<k <mszám, amimosztója;

T→ellen ˝orzi, hogyk osztja-em-et.

(76)

Példák

PRÍM

Bemenet:m>0 egész.

Kérdés: mprímszám?

∈NP: t→Bonyolult, de van ilyen;

T→ellen ˝orzi, hogyt tényleg tanúsítvány.

∈coNP: t→1<k <mszám, amimosztója;

T→ellen ˝orzi, hogyk osztja-em-et.

(77)

Példák

H

Bemenet:Ggráf.

Kérdés: Van-eG-ben Hamilton-kör?

∈NP: t→egyCHamilton-körG-ben;

T→ellen ˝orzi, hogyC Hamilton-kör-e.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(78)

Példák

H

Bemenet:Ggráf.

Kérdés: Van-eG-ben Hamilton-kör?

∈NP:

t→egyCHamilton-körG-ben;

T→ellen ˝orzi, hogyC Hamilton-kör-e.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(79)

Példák

H

Bemenet:Ggráf.

Kérdés: Van-eG-ben Hamilton-kör?

∈NP: t→egyCHamilton-körG-ben;

T→ellen ˝orzi, hogyC Hamilton-kör-e.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(80)

Példák

H

Bemenet:Ggráf.

Kérdés: Van-eG-ben Hamilton-kör?

∈NP: t→egyCHamilton-körG-ben;

T→ellen ˝orzi, hogyCHamilton-kör-e.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(81)

Példák

H

Bemenet:Ggráf.

Kérdés: Van-eG-ben Hamilton-kör?

∈NP: t→egyCHamilton-körG-ben;

T→ellen ˝orzi, hogyCHamilton-kör-e.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(82)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGszínezhet ˝o 3 színnel?

∈NP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ ellen ˝orzi, hogyf tényleg egy 3-színezése G- nek.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(83)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGszínezhet ˝o 3 színnel?

∈NP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ ellen ˝orzi, hogyf tényleg egy 3-színezése G- nek.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(84)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGszínezhet ˝o 3 színnel?

∈NP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ ellen ˝orzi, hogyf tényleg egy 3-színezése G- nek.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(85)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGszínezhet ˝o 3 színnel?

∈NP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ ellen ˝orzi, hogyf tényleg egy 3-színezése G- nek.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(86)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGszínezhet ˝o 3 színnel?

∈NP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ ellen ˝orzi, hogyf tényleg egy 3-színezése G- nek.

∈coNP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

(87)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGnemszínezhet ˝o 3 színnel?

∈NP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

∈coNP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ellen ˝orzi, hogy f tényleg egy 3-színezéseG- nek.

(88)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGnemszínezhet ˝o 3 színnel?

∈NP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

∈coNP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ellen ˝orzi, hogy f tényleg egy 3-színezéseG- nek.

(89)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGnemszínezhet ˝o 3 színnel?

∈NP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

∈coNP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ellen ˝orzi, hogy f tényleg egy 3-színezéseG- nek.

(90)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGnemszínezhet ˝o 3 színnel?

∈NP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

∈coNP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ellen ˝orzi, hogy f tényleg egy 3-színezéseG- nek.

(91)

Példák

3SZÍN

Bemenet:Ggráf.

Kérdés: Igaz-e, hogyGnemszínezhet ˝o 3 színnel?

∈NP: Nem tudjuk, hogy van-e hatékony tanúsítvány.

∈coNP:

t→ egy színezés megadása G-ben; (azaz egy f:V(G)→ {p,k,s}függvény)

T→ellen ˝orzi, hogy f tényleg egy 3-színezéseG- nek.

(92)

Hatékony tanúsítvány P-beli problémákra

AÖSSZEFÜGG ˝OSÉG,PÁROS-GRÁF-PÁROSÍTÁS,SÍKGRÁF,PRÍM

problémákra ismert polinomiális algoritmus is.

=⇒

Az algoritmus lefutásának leírása egy hatékony tanúsítvány arra is, hogy a problémaNP-ben van, és arra is, hogycoNP-ben van, hiszen a végén a válasz vagyIGENvagy NEM, a leírás pedig polinom

hosszú.=⇒ Tétel

P ⊆ NP és P ⊆ coNP

Azaz: P⊆NP∩coNP

(93)

Hatékony tanúsítvány P-beli problémákra

AÖSSZEFÜGG ˝OSÉG,PÁROS-GRÁF-PÁROSÍTÁS,SÍKGRÁF,PRÍM

problémákra ismert polinomiális algoritmus is.=⇒

Az algoritmus lefutásának leírása egy hatékony tanúsítvány arra is, hogy a problémaNP-ben van, és arra is, hogycoNP-ben van, hiszen a végén a válasz vagyIGENvagy NEM, a leírás pedig polinom

hosszú.

=⇒ Tétel

P ⊆ NP és P ⊆ coNP

Azaz: P⊆NP∩coNP

(94)

Hatékony tanúsítvány P-beli problémákra

AÖSSZEFÜGG ˝OSÉG,PÁROS-GRÁF-PÁROSÍTÁS,SÍKGRÁF,PRÍM

problémákra ismert polinomiális algoritmus is.=⇒

Az algoritmus lefutásának leírása egy hatékony tanúsítvány arra is, hogy a problémaNP-ben van, és arra is, hogycoNP-ben van, hiszen a végén a válasz vagyIGENvagy NEM, a leírás pedig polinom

hosszú.=⇒ Tétel

P ⊆ NP és P ⊆ coNP

Azaz: P⊆NP∩coNP

(95)

Hatékony tanúsítvány P-beli problémákra

AÖSSZEFÜGG ˝OSÉG,PÁROS-GRÁF-PÁROSÍTÁS,SÍKGRÁF,PRÍM

problémákra ismert polinomiális algoritmus is.=⇒

Az algoritmus lefutásának leírása egy hatékony tanúsítvány arra is, hogy a problémaNP-ben van, és arra is, hogycoNP-ben van, hiszen a végén a válasz vagyIGENvagy NEM, a leírás pedig polinom

hosszú.=⇒ Tétel

P ⊆ NP és P ⊆ coNP

(96)

A legfontosabb nyitott kérdések

Sejtés

P 6= NP

HaP=NPteljesülne, akkor minden olyan problémára, amelyre van hatékony tanúsítvány (azazNP-beli), lenne polinomiális algoritmus is. Fogunk mutatni olyan problámákat, amikNP-beliek, de senki nem tud rájuk polinomiális algoritmust.

Sejtés

P = NP ∩ coNP

Eddig minden fontosNP∩coNP-beli problémáról kiderült, hogy van rá polinomiális algoritmus, azazP-beli.

(97)

A legfontosabb nyitott kérdések

Sejtés

P 6= NP

HaP=NPteljesülne, akkor minden olyan problémára, amelyre van hatékony tanúsítvány (azazNP-beli), lenne polinomiális algoritmus is.

Fogunk mutatni olyan problámákat, amikNP-beliek, de senki nem tud rájuk polinomiális algoritmust.

Sejtés

P = NP ∩ coNP

Eddig minden fontosNP∩coNP-beli problémáról kiderült, hogy van rá polinomiális algoritmus, azazP-beli.

(98)

A legfontosabb nyitott kérdések

Sejtés

P 6= NP

HaP=NPteljesülne, akkor minden olyan problémára, amelyre van hatékony tanúsítvány (azazNP-beli), lenne polinomiális algoritmus is.

Fogunk mutatni olyan problámákat, amikNP-beliek, de senki nem tud rájuk polinomiális algoritmust.

Sejtés

P = NP ∩ coNP

Eddig minden fontosNP∩coNP-beli problémáról kiderült, hogy van rá polinomiális algoritmus, azazP-beli.

(99)

A legfontosabb nyitott kérdések

Sejtés

P 6= NP

HaP=NPteljesülne, akkor minden olyan problémára, amelyre van hatékony tanúsítvány (azazNP-beli), lenne polinomiális algoritmus is.

Fogunk mutatni olyan problámákat, amikNP-beliek, de senki nem tud rájuk polinomiális algoritmust.

Sejtés

P = NP ∩ coNP

Eddig minden fontosNP∩coNP-beli problémáról kiderült, hogy van rá polinomiális algoritmus, azazP-beli.

(100)

A legfontosabb nyitott kérdések

Sejtés

P 6= NP

HaP=NPteljesülne, akkor minden olyan problémára, amelyre van hatékony tanúsítvány (azazNP-beli), lenne polinomiális algoritmus is.

Fogunk mutatni olyan problámákat, amikNP-beliek, de senki nem tud rájuk polinomiális algoritmust.

Sejtés

P = NP ∩ coNP

Eddig minden fontosNP∩coNP-beli problémáról kiderült, hogy van rá

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

(2) Elkészítjük a G ford gráfot, melyet úgy kapunk G-b ˝ol, hogy minden él irányítását megfordítjuk. (4) Ha mindkét bejárás során minden pontot bejártunk, akkor

Ha egy ilyen nyelvr ˝ol kiderülne, hogy P-beli (coNP-beli), akkor ugyanez igaz lenne minden NP-beli nyelvre.. Van-e

Számítástudományi és Információelméleti Tanszék Budapesti M ˝uszaki és Gazdaságtudományi

Ha bármelyik NP-teljes problémára létezik polinom idejű algoritmus, akkor az összesre is létezik?. P = NP: összes ilyen problémára létezik polinom idejű algoritmus és sok

Ha teh´ at volna optim´ alisan ¨ utemez˝ o polinomidej˝ u algoritmus, akkor polinomid˝ oben tudn´ ank megoldani egy NP-teljes probl´ em´ at... Ha teh´ at volna optim´ alisan

Ha az optimális Hamilton-körb ˝ol elhagyunk egy élet = ⇒ egy legalább s súlyú feszít ˝ofát kapunk.. A módszer legfeljebb 2-szer akkora utat ad, mint

Ez optimális, nincs olyan keres ˝o algoritmus, ami minden esetben kevesebb mint dlog 2 (n + 1)e kérdést

A pótlási héten lesz még egy alkalom kizárólag azoknak, akik még nem szerezték meg az aláírást (anyaga ugyanaz, mint a