In
computational complexity theory
In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and explores the relationships between these classifications. A computational problem ...
, a probabilistically checkable proof (PCP) is a type of
proof
Proof most often refers to:
* Proof (truth), argument or sufficient evidence for the truth of a proposition
* Alcohol proof, a measure of an alcoholic drink's strength
Proof may also refer to:
Mathematics and formal logic
* Formal proof, a co ...
that can be checked by a
randomized algorithm
A randomized algorithm is an algorithm that employs a degree of randomness as part of its logic or procedure. The algorithm typically uses uniformly random bits as an auxiliary input to guide its behavior, in the hope of achieving good performan ...
using a bounded amount of randomness and reading a bounded number of bits of the proof. The algorithm is then required to accept correct proofs and reject incorrect proofs with very high probability. A standard proof (or
certificate
Certificate may refer to:
* Birth certificate
* Marriage certificate
* Death certificate
* Gift certificate
* Certificate of authenticity, a document or seal certifying the authenticity of something
* Certificate of deposit, or CD, a financial p ...
), as used in the
verifier-based definition of the
complexity class
In computational complexity theory, a complexity class is a set (mathematics), set of computational problems "of related resource-based computational complexity, complexity". The two most commonly analyzed resources are time complexity, time and s ...
NP, also satisfies these requirements, since the checking procedure deterministically reads the whole proof, always accepts correct proofs and rejects incorrect proofs. However, what makes them interesting is the existence of probabilistically checkable proofs that can be checked by reading only a few bits of the proof using randomness in an essential way.
Probabilistically checkable proofs give rise to many complexity classes depending on the number of queries required and the amount of randomness used. The class refers to the set of
decision problem
In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question on a set of input values. An example of a decision problem is deciding whether a given natura ...
s that have probabilistically checkable proofs that can be verified in polynomial time using at most ''r''(''n'') random bits and by reading at most ''q''(''n'') bits of the proof. Unless specified otherwise, correct proofs should always be accepted, and incorrect proofs should be rejected with probability greater than 1/2. The
PCP theorem
In computational complexity theory, the PCP theorem (also known as the PCP characterization theorem) states that every decision problem in the NP complexity class has probabilistically checkable proofs ( proofs that can be checked by a randomiz ...
, a major result in computational complexity theory, states that .
Definition
Given a
decision problem
In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question on a set of input values. An example of a decision problem is deciding whether a given natura ...
''L'' (or a
language
Language is a structured system of communication that consists of grammar and vocabulary. It is the primary means by which humans convey meaning, both in spoken and signed language, signed forms, and may also be conveyed through writing syste ...
L with its alphabet set Σ), a probabilistically checkable proof system for ''L'' with completeness ''c''(''n'') and soundness ''s''(''n''), where , consists of a prover and a verifier. Given a claimed solution x with length n, which might be false, the prover produces a proof ''π'' which states ''x'' solves (, the proof is a string ). And the verifier is a randomized
oracle Turing Machine
In complexity theory and computability theory, an oracle machine is an abstract machine used to study decision problems. It can be visualized as a black box, called an oracle, which is able to solve certain problems in a single operation. The ...
''V'' (the ''verifier'') that checks the proof ''π'' for the statement that ''x'' solves (or ) and decides whether to accept the statement. The system has the following properties:
* Completeness: For any , given the proof ''π'' produced by the prover of the system, the verifier accepts the statement with probability at least ''c''(''n''),
* Soundness: For any , then for any proof ''π'', the verifier mistakenly accepts the statement with probability at most ''s''(''n'').
For the
computational complexity
In computer science, the computational complexity or simply complexity of an algorithm is the amount of resources required to run it. Particular focus is given to computation time (generally measured by the number of needed elementary operations ...
of the verifier, the verifier is polynomial time, and we have the ''randomness complexity'' ''r''(''n'') to measure the maximum number of random bits that ''V'' uses over all ''x'' of length ''n'' and the ''query complexity'' ''q''(''n'') of the verifier is the maximum number of queries that ''V'' makes to π over all ''x'' of length ''n''.
In the above definition, the length of proof is not mentioned since usually it includes the alphabet set and all the witnesses. For the prover, we do not care how it arrives at the solution to the problem; we care only about the proof it gives of the solution's membership in the language.
The verifier is said to be ''non-adaptive'' if it makes all its queries before it receives any of the answers to previous queries.
The complexity class is the class of all decision problems having probabilistically checkable proof systems over binary alphabet of completeness ''c''(''n'') and soundness ''s''(''n''), where the verifier is non-adaptive, runs in polynomial time, and it has randomness complexity ''r''(''n'') and query complexity ''q''(''n'').
The shorthand notation is sometimes used for . The complexity class PCP is defined as .
History and significance
The theory of probabilistically checkable proofs studies the power of probabilistically checkable proof systems under various restrictions of the parameters (completeness, soundness, randomness complexity, query complexity, and alphabet size). It has applications to
computational complexity
In computer science, the computational complexity or simply complexity of an algorithm is the amount of resources required to run it. Particular focus is given to computation time (generally measured by the number of needed elementary operations ...
(in particular
hardness of approximation In computer science, hardness of approximation is a field that studies the algorithmic complexity of finding near-optimal solutions to optimization problems.
Scope
Hardness of approximation complements the study of approximation algorithms by pro ...
) and
cryptography
Cryptography, or cryptology (from "hidden, secret"; and ''graphein'', "to write", or ''-logy, -logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of Adversary (cryptography), ...
.
The definition of a probabilistically checkable proof was explicitly introduced by Arora and Safra in 1992, although their properties were studied earlier. In 1990 Babai, Fortnow, and Lund proved that PCP
oly(''n''), poly(''n'')=
NEXP, providing the first nontrivial equivalence between standard proofs (NEXP) and probabilistically checkable proofs. The
PCP theorem
In computational complexity theory, the PCP theorem (also known as the PCP characterization theorem) states that every decision problem in the NP complexity class has probabilistically checkable proofs ( proofs that can be checked by a randomiz ...
proved in 1992 states that .
The theory of
hardness of approximation In computer science, hardness of approximation is a field that studies the algorithmic complexity of finding near-optimal solutions to optimization problems.
Scope
Hardness of approximation complements the study of approximation algorithms by pro ...
requires a detailed understanding of the role of completeness, soundness, alphabet size, and query complexity in probabilistically checkable proofs.
Properties
From computational complexity point of view, for extreme settings of the parameters, the definition of probabilistically checkable proofs is easily seen to be equivalent to standard
complexity classes
In computational complexity theory, a complexity class is a set of computational problems "of related resource-based complexity". The two most commonly analyzed resources are time and memory.
In general, a complexity class is defined in terms of ...
. For example, we have the following for different setting of :
* ( is defined to have no randomness and no access to a proof.)
* (A logarithmic number of random bits doesn't help a polynomial time Turing machine, since it could try all possibly random strings of logarithmic length in polynomial time.)
* (Without randomness, the proof can be thought of as a fixed logarithmic sized string. A polynomial time machine could try all possible logarithmic sized proofs and constant-length random strings in polynomial time.)
* (By definition of .)
* (By the verifier-based definition of .)
The PCP theorem and
MIP = NEXP can be characterized as follows:
* (the PCP theorem)
*.
It is also known that .
In particular, .
On the other hand, if then
P = NP
The P versus NP problem is a major unsolved problem in theoretical computer science. Informally, it asks whether every problem whose solution can be quickly verified can also be quickly solved.
Here, "quickly" means an algorithm exists that ...
.
Linear PCP
A Linear PCP is a PCP in which the proof is a vector of elements of a finite field
, and such that the PCP oracle is only allowed to do linear operations on the proof. Namely, the response from the oracle to a verifier query
is a linear function
. Linear PCPs have important applications in proof systems that can be compiled into SNARKs.
References
External links
Holographic proofat the
Encyclopedia of Mathematics
The ''Encyclopedia of Mathematics'' (also ''EOM'' and formerly ''Encyclopaedia of Mathematics'') is a large reference work in mathematics.
Overview
The 2002 version contains more than 8,000 entries covering most areas of mathematics at a graduat ...
PCP course notesby
Subhash Khot
Subhash Khot (born 10 June 1978 in Ichalkaranji) is an Indian-American mathematician and theoretical computer scientist who is the Julius Silver Professor of Computer Science in the Courant Institute of Mathematical Sciences at New York Uni ...
at the
New York University
New York University (NYU) is a private university, private research university in New York City, New York, United States. Chartered in 1831 by the New York State Legislature, NYU was founded in 1832 by Albert Gallatin as a Nondenominational ...
, 2008.
PCP course notesan
A history of the PCP theoremby
Ryan O'Donnell and
Venkatesan Guruswami
Venkatesan Guruswami (born 1976) is a senior scientist at the Simons Institute for the Theory of Computing and Professor of EECS and Mathematics at the University of California, Berkeley. He did his high schooling at Padma Seshadri Bala Bhav ...
from the
University of Washington
The University of Washington (UW and informally U-Dub or U Dub) is a public research university in Seattle, Washington, United States. Founded in 1861, the University of Washington is one of the oldest universities on the West Coast of the Uni ...
, 2005.
*
{{ComplexityClasses
Mathematical proofs
Randomized algorithms