In computational complexity theory, randomized polynomial time (RP) is the complexity class of problems for which a probabilistic Turing machine exists with these properties: It always runs in polynomial time in the input size If the correct answer is NO, it always returns NO If the correct answer is YES, then it returns YES with probability at least 1/2 (otherwise, it returns NO). In other words, the algorithm is allowed to flip a truly random coin while it is running. The only case in which the algorithm can return YES is if the actual answer is YES; therefore if the algorithm terminates and produces YES, then the correct answer is definitely YES; however, the algorithm can terminate with NO regardless of the actual answer. That is, if the algorithm returns NO, it might be wrong. Some authors call this class R, although this name is more commonly used for the class of recursive languages. If the correct answer is YES and the algorithm is run n times with the result of each run statistically
En la teoría de la complejidad computacional, el tiempo polinomial aleatorio (RP) es la clase de complejidad de los problemas para los que existe una máquina de Turing probabilística con estas propiedades: Si la respuesta correcta es NO, siempre devuelve NO Si la respuesta correcta es YES, entonces devuelve YES con probabilidad de al menos 1/2 (sin embargo, devuelve NO). En otras palabras, el algoritmo se permite girar una moneda realmente aleatoria mientras está en funcionamiento. El único caso en el que el algoritmo puede devolver YES es si la respuesta real es YES; por lo tanto, si el algoritmo termina y produce YES, entonces la respuesta correcta es definitivamente YES; sin embargo, el algoritmo puede terminar con NO independientemente de la respuesta real. Es decir, si el algoritmo devuelve NO, puede estar equivocado. Algunos autores llaman esta clase R, aunque este nombre es más comúnmente utilizado para la correcta clase de lenguajes recurrentes.