(definition)

**Definition:**
The class of *languages* for which membership can be determined in *polynomial time* by a *probabilistic Turing machine* with no false acceptances and less than half false rejections. "RP" means "**R**andomized **P**olynomial" time.

**Formal Definition:** For a language, S, there exists a *probabilistic Turing machine*, M, that *accepts* or rejects any string in *polynomial time*. If w ∉ S, M rejects w. If w ∈ S, M accepts w with a probability at least 1/2.

**Also known as** randomized polynomial time.

**See also**
*NP*, *ZPP*, *BPP*, *Monte Carlo algorithm*.

*Note:
By repeating the run, the chance of incorrect rejection may be arbitrarily reduced. *

* After [Hirv01, page 19].*

Author: PEB

Go to the Dictionary of Algorithms and Data Structures home page.

If you have suggestions, corrections, or comments, please get in touch with Paul Black.

Entry modified 17 December 2004.

HTML page formatted Fri Feb 23 10:06:08 2018.

Cite this as:

Paul E. Black, "RP", in
*Dictionary of Algorithms and Data Structures* [online], Vreda Pieterse and Paul E. Black, eds. 17 December 2004. (accessed TODAY)
Available from: https://www.nist.gov/dads/HTML/rp.html