FP (clasă de complexitate)

De la testwiki
Sari la navigare Sari la căutare

În teoria complexității, clasa de complexitate FP este ansamblul problemelor funcție care pot fi rezolvate de o mașină Turing deterministă în timp polinomial. Este versiunea cu probleme funcție a clasei P de Format:Ill-wd. În linii mari, este clasa de funcții care poate fi eficient calculate pe calculatoarele clasice fără randomizare.

Diferența dintre FP și P este că problemele din P au răspunsuri pe un bit, da/nu, în timp ce problemele din FP pot produce orice ieșire care poate fi însă calculată în timp polinomial. De exemplu, adunarea a două numere este o problemă din FP, în timp ce a determina dacă suma lor este impară este o problemă din P.[1]

Problemele funcție în timp polinomial sunt fundamentale în definirea Format:Ill-wd, care sunt utilizate la rândul lor pentru a defini clasa de probleme NP-complete.[2]

Definiție formală

FP se definește formal după cum urmează:

O relație binară P(x,y) este în FP dacă și numai dacă există un algoritm determinist în timp polinomial care, dacă i se dă x, fie găsește un y astfel încât P(x,y) este adevărat, fie semnalează că nu există un astfel de y.

Clase de complexitate asociate

  • Format:Ill-wd este mulțimea relațiilor binare pentru care există un algoritm în timp polinomial care, date fiind x și y, verifică dacă P(x, y) este adevărat. La fel cum P și FP sunt strâns legate, NP este strâns legată de FNP. FP = FNP dacă și numai dacă P = NP.
  • Deoarece o mașină care utilizează spațiu logaritmic are un număr de configurații care crește cel mult polinomial, Format:Ill-wd, mulțimea de probleme funcție care pot fi calculate în spațiu logaritmic, este inclusă în FP. Nu se știe dacă FL = FP; aceasta este analogă cu problema de a determina dacă clasele de decizie P și L sunt egale.

Bibliografie

Format:Listănote

Legături externe