+ All Categories
Home > Documents > [12] Alte Clase de Compl

[12] Alte Clase de Compl

Date post: 18-Sep-2015
Category:
Upload: eirdnocotim
View: 226 times
Download: 0 times
Share this document with a friend
Description:
[12] Alte Clase de Compl
25
Proiectarea algoritmilor: Alte clase de complexitate Dorel Lucanu Faculty of Computer Science Alexandru Ioan Cuza University, Ia¸ si, Romania [email protected] PA 2014/2015 D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 1 / 25
Transcript
  • Proiectarea algoritmilor: Alte clase de complexitate

    Dorel Lucanu

    Faculty of Computer ScienceAlexandru Ioan Cuza University, Iasi, Romania

    [email protected]

    PA 2014/2015

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 1 / 25

  • Outline

    1 co-NP

    2 Clase fundamentale

    3 Clase canoniceO problema PSPACE-completa

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 2 / 25

  • co-NP

    Plan

    1 co-NP

    2 Clase fundamentale

    3 Clase canoniceO problema PSPACE-completa

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 3 / 25

  • co-NP

    co-probleme

    Definitie

    Daca P este o problema de decizie, atunci P desemneaza problemadefinita prin P(p) = P(p). Cu alte cuvinte, daca P(p) = true atunciP(p) = false si daca P(p) = false atunci P(p) = true.

    Definitie

    Fie C o clasa de probleme de decizie. co-C este clasa problemelor{P | P NP}.

    Cazuri particulare:co-P = {P | P P}co-NP = {P | P NP}

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 4 / 25

  • co-NP

    Exemplu

    SATInstance O formula propozitionala F cu variabile din X = {x1, . . . , xn}.Question Exista o atribuire a : X {0, 1} (sau a : X {false, true})

    care satisface F?

    Formularea matematica a ntrebarii: (a) a(F ) = 1Intrebarea negata: (a) a(F ) = 0O formula F cu proprietatea (a) a(F ) = 0 se numeste nesatisfiabila.

    SATInstance O formula propozitionala F cu variabile din X = {x1, . . . , xn}.Question Este F nesatisfiabila?

    De remarcat dihotomia exists - for all.

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 5 / 25

  • co-NP

    Exemplu

    INDEPENDENT-SETInstance Un graf G = (V ,E ), un numar ntreg k 0.Question Exista o submultime U V independenta cu cel putin k

    elemente?.

    INDEPENDENT-SETInstance Un graf G = (V ,E ), un numar ntreg k 0.Question Este valida urmatoarea afirmatie: pentru orice submultime

    U V , U nu este independenta sau are cel mult k 1elemente?.

    De remarcat din nou dihotomia exists - for all.

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 6 / 25

  • co-NP

    Exemplu

    Urmatoarele probleme sunt reprezentate ca limbaje.

    PRIME = {n | n este numar ntreg prim}PRIME = {n | n NU este numar ntreg prim}COMPOSITE = {n | n este numar ntreg compus}De multe ori se afirma PRIME = COMPOSITE. . . totusi 1 nu este nici prim si nici compus. . .

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 7 / 25

  • co-NP

    co-P

    Theorem

    co-P = P.

    Se arata ca o problema P este n P daca si numai daca este n co-NP.Exercitiu. De verificat afirmatia de mai sus.

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 8 / 25

  • co-NP

    NP versus co-NP

    NP- clasa problemelor de decize pentru care raspunsul DA estecertificat n timp polinomial

    co-NP- clasa problemelor de decize pentru care raspunsul NU estecertificat n timp polinomial

    de regula ntrebarile pentru problemele din NP ncep cu exista ()iar cele din co-NP ncep cu pentru toate/toti ()urmatoare problema este una tipica pentru co-NP:

    TAUTOLOGYInstance O formula propozitionala F cu variabile din

    X = {x1, . . . , xn}.Question Pentru toate atribuirile a : X {0, 1}, a(F ) = 1?

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 9 / 25

  • co-NP

    NP versus co-NP

    Nu se stie daca NP = co-NP.Se stie doar:

    Propozitie

    Daca P = NP atunci NP = co-NP.

    Intersectia dintre NP si co-NP este nevida:

    Propozitie

    P NP co-NP.

    Propozitie

    O problema P este co-NP-completa daca si numai daca P esteNP-completa.

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 10 / 25

  • co-NP

    P, NP, co-NP

    PNP co-NP

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 11 / 25

  • co-NP

    Cautare versus decizie

    Reamintim:

    problema de decizie: raspuns DA/NU

    problema de cautare: gasirea unei solutii care da raspunsul DA

    SAT:decizie: este F satisfiabila?cautare: sa se gaseasca o atribuire care satisface F .

    Definitie

    O problema P se numeste auto-reductibila daca versiunea sa de cautare sereduce Turing/Cook polinomial la versiunea sa de decizie.

    Exercitiu. Sa se arate ca SAT este auto-reductibila.

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 12 / 25

  • co-NP

    Cautare versus decizie

    un algoritm eficient pentru cautare implica un algoritm eficient pentrudecizie;

    daca problema de decizie este dificila atunci problema de cautare estedificila;

    cand un algoritm eficient pentru cautare implica un algoritm eficientpentru cautare? (e.g. cazul problemelor NP-complete).

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 13 / 25

  • Clase fundamentale

    Plan

    1 co-NP

    2 Clase fundamentale

    3 Clase canoniceO problema PSPACE-completa

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 14 / 25

  • Clase fundamentale

    Clase fundamentale (incomplet)

    DTIME(t(n)) - clasa problemelor decise de algoritmi deterministi cucomplexitatea timp O(t(n)).

    NTIME(t(n)) - clasa problemelor decise de algoritmi nedeterministi cucomplexitatea timp O(t(n)).

    DSPACE(s(n)) - clasa problemelor decise de algoritmi deterministi cucomplexitatea spatiu O(s(n)).

    NSPACE(s(n)) - clasa problemelor decise de algoritmi nedeterministi cucomplexitatea spatiu O(s(n)).

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 15 / 25

  • Clase canonice

    Plan

    1 co-NP

    2 Clase fundamentale

    3 Clase canoniceO problema PSPACE-completa

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 16 / 25

  • Clase canonice

    Clase canonice (incomplet)

    L = DTIME(log n)NL = NTIME(log n)P = DTIME(nO(1)) =

    k0DTIME(n

    k)

    NP = NTIME(nO(1)) =

    k0NTIME(nk)

    PSPACE = DSPACE(nO(1)) =

    k0DSPACE(nk)

    NPSPACE = NSPACE(nO(1)) =

    k0NSPACE(nk)

    EXP = DTIME(2nO(1)) =

    k0DTIME(2nk )

    NEXP = NTIME(2nO(1)) =

    k0NTIME(2nk )

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 17 / 25

  • Clase canonice

    PSPACE versus NPSPACE

    Teorema (Savitch, 1970)

    PSPACE = NPSPACE

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 18 / 25

  • Clase canonice

    P, NP, co-NP, PSPACE

    PNP co-NP

    PSPACE

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 19 / 25

  • Clase canonice O problema PSPACE-completa

    Plan

    1 co-NP

    2 Clase fundamentale

    3 Clase canoniceO problema PSPACE-completa

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 20 / 25

  • Clase canonice O problema PSPACE-completa

    Formule booleene cuantificate

    Fie F o formula booleana (propozitionala) care include variabila x .

    Cuantificarea universala cu privire la x : (x)Fsemnificatie: (x)F are loc daca si numai daca pentru orice v {0, 1},F [v/x ] are loc.

    Cuantificarea existentiala cu privire la x : (x)Fsemnificatie: (x)F are loc daca si numai daca exista v {0, 1}, F [v/x ]are loc.

    Formula complet cuatificata: o formula prefixata cu un cuantificator (x)sau (x) pentru orice variabila x care apare n formula.Exemple:(x)(y)x y(x)(y)x y(x)(y)(z)(x y) (y (x z))Exrecitiu: Aratati ca orice formula booleana complet cuantificata este sauadevarata sau falsa.

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 21 / 25

  • Clase canonice O problema PSPACE-completa

    TQBF

    TQBF (True Quantified Booolean Formula)Instance O formula booleana complet cuantificata .Question Este adevarata

    Teorema

    TQBF este PSPACE-completa

    Daca x1, . . . , xn sunt toate variabilele care apar n formula booleana F ,notam F (x1, . . . , xn).Presupunem ca este de forma Q1 . . .QnF (x1, . . . , xn), unde Qi este sau(xi ) sau (xi ).

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 22 / 25

  • Clase canonice O problema PSPACE-completa

    TQBF este n PSPACE

    Construim un algoritm recursiv val() astfel:

    1 daca nu are cuantificatori (si deci F = nu are variabile), ntoarcevaloarea lui F

    2 altfel1 A = val(Q2 . . .Qn(0, x2, . . . , xn))2 B = val(Q2 . . .Qn(1, x2, . . . , xn))3 daca Q1 (x1), atunci ntoarce A B4 daca Q1 (x1), atunci ntoarce A B

    Exrecitiu: Sa se determine complexitatile timp si spatiu pentru val().

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 23 / 25

  • Clase canonice O problema PSPACE-completa

    TQBF este PSPACE-dificila

    Fie P o problema n PSPACE si A un algoritm care rezolva P utilizandspatiu polinomial.Peste configuratiile lui A consieram formula parametrizata c1,c2,t cusemnificatia:c1,c2,t = true daca si numai daca din configuratia c1 se poate ajunge nconfiguratia c2 in cel mult t pasi.Asociem lui A si instantei p P o formula c1,c2,t , unde:

    c1 = starea initiala corespunzatoare lui p

    c2 = starea finala

    t = timpul dat de algoritmul A pentru rezolvarea lui p (exponential,marginit de un T )

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 24 / 25

  • Clase canonice O problema PSPACE-completa

    TQBF este PSPACE-dificila

    Cum poate fi calculata c1,c2,t n timp polinomial?

    1 t = 1, trivial

    2 t > 1 : c1,c2,t = (m)c1,m,t/2 m,c2,t/2Din pacate timpul este exponential pentru calculul formulei de mai sus.O solutie este sa o rescriem astfel ncat sa existe un singur apel recursiv:

    c1,c2,t = (m)((c3, c4) {(c1,m), (m, c2)})c3,c4,t/2= (m)(m, c1, c2, c3, c4) = c3,c4,t/2= (m)(m, c1, c2, c3, c4) c3,c4,t/2

    D. Lucanu (FII - UAIC) Alte clase de complexitate PA 2014/2015 25 / 25

    co-NPClase fundamentaleClase canoniceO problema PSPACE-completa


Recommended