Post-Correspondence Problem (PCP): A Structured “Short Note” for Learning
The Post Correspondence Problem (PCP) is a classic question in theoretical computer science used to demonstrate limits of computation. Given a finite set of “dominoes,” each with an upper string and a lower string over some alphabet, PCP asks whether there exists a nonempty sequence of domino indices such that the concatenation of upper strings equals the concatenation of lower strings.
Formally, an instance of PCP consists of pairs of strings over an alphabet . The problem asks whether there exists a length- sequence of indices such that
This simple-looking “string matching by concatenation” problem is undecidable: there is no general algorithm that decides PCP for every possible domino set. The undecidability result is attributed to Emil Post (and PCP is widely presented as a foundational stepping stone toward later undecidability theorems).2
Key learning terms:
- instance: the domino list
- concatenation:
- solution (witness):
Mermaid view of what PCP is trying to “align”:
Footnotes
-
Post correspondence problem - Defines PCP and states undecidability context. ↩
-
Emil Post - Background on Post and the historical place of PCP in computability. ↩
Post Correspondence Problem (PCP) explained
Why PCP matters (high-level intuition)
PCP acts as a “universal template” for encoding computations. The undecidability proof shows that the question “does there exist a matching concatenation?” can simulate arbitrary computation steps. In other words, a hypothetical PCP-decider would enable solving other problems known to be undecidable (e.g., certain halting-type problems). This is why PCP is used as a standard reduction target in computability theory.2
reduction is the key idea: prove PCP undecidable by reducing from a known undecidable problem. Once you can embed computations into domino concatenations, any algorithm for PCP would indirectly solve the embedded source problem—impossible if the source is undecidable.
Footnotes
-
Post correspondence problem - Defines PCP and states undecidability context. ↩
-
Emil Post - Background on Post and the historical place of PCP in computability. ↩
How to reason about PCP instances
- 1Step 1
List for each domino . Ensure all strings are over a common alphabet .
- 2Step 2
Choose indices with (a witness).
- 3Step 3
Compute .
- 4Step 4
Compute .
- 5Step 5
If the two concatenations are identical, the instance is a YES-instance; otherwise, the chosen sequence is not a solution.
Pro Tip: think in terms of witnesses
PCP is existential: a solution is a finite witness sequence of indices. For small instances you can brute-force search, but undecidability says no strategy works in general.
Example of a PCP “matching sequence” (concrete computation)
Suppose the instance includes dominoes: Consider the sequence . Then:
- Top concatenation:
- Bottom concatenation:
These are not equal, so is not a solution.
If instead there existed some sequence with equal concatenations, that sequence would be a witness for a YES answer.
This is exactly the behavior the PCP decision question asks about, for arbitrary domino sets.2
Footnotes
-
Post correspondence problem - Defines PCP and states undecidability context. ↩
-
Emil Post - Background on Post and the historical place of PCP in computability. ↩
Modified variants (brief context)
A common closely related variant is the Modified Post Correspondence Problem (MPCP) (sometimes called “modified PCP”). MPCP changes boundary conditions (e.g., fixed first/last domino constraints) but remains central in reductions and undecidability arguments. While different texts define MPCP constraints slightly differently, the overall theme is the same: enforce structured matching while retaining undecidability.
boundary condition: what MPCP alters relative to PCP.
Footnotes
-
Modified Post correspondence problem - Defines MPCP as a related variant used in undecidability arguments. ↩
PCP reasoning modes
Comparing practical checking vs. general decision capability
How PCP fits into computability theory (conceptual timeline)
Domino matching as a decision problem
FormulationConvert string-concatenation equality into a yes/no existence question."
Encode computations into domino concatenations
Undecidability proof ideaUse reductions to show that solving PCP would imply solving a known undecidable problem."
Reduction target for other theorems
Use in later resultsMany undecidability proofs reduce from PCP or MPCP to the problem of interest."
Common pitfalls & edge cases
Knowledge Check
In PCP, what does a YES-instance mean?