LearnViz CompSci
Home / Learn / Theory & Discrete Math / PCP Theorem

Advanced Topic 50 of 51 Theory & Discrete Math

PCP Theorem

Characterization of NP by probabilistically checkable proofs.

How it works

The PCP theorem, probabilistically checkable proofs, states that every NP statement has a proof that can be verified by reading only a constant number of bits chosen at random, with high confidence: valid proofs are always accepted, and invalid statements are rejected with probability at least one half for any proof. NP equals PCP with logarithmic randomness and constant queries. The proof is deep, combining algebraic coding, low-degree testing and composition of verifiers.

Step-by-step walkthrough

  1. Every NP proof can be rewritten in a special robust format.
  2. A verifier reads only a constant number of random bits of it.
  3. It still detects false claims with high probability.
  4. The theorem is the basis for hardness of approximation.
  5. It shows proofs can be checked by sampling.

Where it is used

Its main consequence is hardness of approximation: it implies that many optimization problems, such as MAX-3SAT and clique, cannot be approximated beyond certain ratios unless P equals NP. It also inspired succinct proof systems used in cryptography.

Common pitfall

The theorem is nonconstructive in practical terms; the proofs are huge and encoding is heavy. Misreading it as saying proofs can be checked by reading almost nothing in the real world ignores the encoding step. Understanding requires background in coding theory. Use it mostly through its inapproximability consequences and gap-preserving reductions.

Where it fits in the course

PCP Theorem is topic 50 of 51 in Theory & Discrete Math, rated Advanced. It follows Interactive Proofs. The next topic is Category Theory for Programmers.

Practice and explore

How to study this topic

  1. Read the explanation above and restate the definition in your own words.
  2. Open the interactive lesson and answer its mini quiz.
  3. Read the common pitfall, then write a short example that avoids it.
  4. Check your understanding in the Theory & Discrete Math quiz, and revisit the topic if you miss a question.

Frequently asked questions

What is PCP Theorem?
Characterization of NP by probabilistically checkable proofs. It belongs to Theory & Discrete Math and is an advanced-level topic.
Where do people use PCP Theorem?
Its main consequence is hardness of approximation: it implies that many optimization problems, such as MAX-3SAT and clique, cannot be approximated beyond certain ratios unless P equals NP.
What is the most common mistake with PCP Theorem?
The theorem is nonconstructive in practical terms; the proofs are huge and encoding is heavy.
What should I learn before this topic?
Start with Interactive Proofs, the topic just before it in Theory & Discrete Math.
How can I practice it?
Answer the mini quiz in the interactive lesson, then take the Theory & Discrete Math quiz.
Is PCP Theorem hard to learn?
It is an Advanced topic. Expect to read the explanation more than once and to connect it with earlier topics. Working through a small example by hand helps most.
How long does it take to learn PCP Theorem?
Most learners can read the explanation and finish the interactive lesson in under an hour. Fluency comes from applying the idea, so plan a few short practice sessions with the quiz.
Which topics are related to PCP Theorem?
Interactive Proofs, Category Theory for Programmers, Communication Complexity are closely connected. The full list is in the related topics section of this page.
What should I study after PCP Theorem?
Continue with Category Theory for Programmers, the next topic in Theory & Discrete Math.

Related topics