UP (Complexitat)
En teoria de complexitat, la classe de complexitat UP és la classe de problemes de decisió que es poden resoldre en temps polinòmic en una màquina de Turing no ambigua per almenys un camí que accepte per cada entrada.[1]
Una reformulació de la definició de la classe NP s'expressa dient que un llenguatge és a NP si i només si donada una resposta, es pot verificar en un temps polinòmic per una màquina de Turing determinista. De manera similar, un llenguatge és a UP si donada una resposta es pot verificar en un temps polinòmic, i el verificador només accepta com a molt una resposta per cada instància del problema.[2] Més formalment, un llenguatge L pertany a UP si existeix un algorisme de dues entrades i temps polinòmic A i una constant c tal que:
- si x és de L, llavors existeix un únic certificat y amb tal que
- si x no és de L, llavors no existeix un certificat y amb tal que
- l'algorisme A verifica L en un temps polinòmic
Relació amb d'altres classes
[modifica]UP conté a la classe P i està continguda dins de NP.
Es coneix que la classe UP conté tots els problemes complets.[3]
La classe NP està dins de la classe RPUP-promesa, que vol dir que existeix una reducció de qualsevol problema dins de NP cap a un problema a la classe UP-promesa.[4]
Referències
[modifica]- ↑ Valiant, Leslie G. «Relative complexity of checking and evaluating». Information Processing Letters, 5, 1, 5-1976, pàg. 20–23. DOI: 10.1016/0020-0190(76)90097-1. ISSN: 0020-0190.
- ↑ Hartmanis, Juris; Hemachandra, Lane A. «Complexity classes without machines: On complete languages for UP». Theoretical Computer Science, 58, 1-3, 6-1988, pàg. 129–142. DOI: 10.1016/0304-3975(88)90022-9. ISSN: 0304-3975.
- ↑ «Complexity Zoo:U - Complexity Zoo» (en anglès). Arxivat de l'original el 2019-07-09. [Consulta: 3 desembre 2018].
- ↑ Valiant, L.G.; Vazirani, V.V. «NP is as easy as detecting unique solutions». Theoretical Computer Science, 47, 1986, pàg. 85–93. DOI: 10.1016/0304-3975(86)90135-0. ISSN: 0304-3975.