Post Correspondence Problem (PCP): Short Notes for Computation Theory
The Post Correspondence Problem (PCP) is a classic problem in theoretical computer science used to show the existence of undecidable problems. In PCP, we are given a finite set of “tiles,” each tile containing two strings over some alphabet. The task is to decide whether there exists a finite sequence of tile indices such that the concatenation of the top strings equals the concatenation of the bottom strings. The key result is that PCP is undecidable (more precisely, semi-decidable/recursively enumerable but not decidable).
type="tip" title="What to remember" content="PCP asks for existence of a matching concatenation. The undecidability comes from the ability to encode the behavior of Turing machines into these string-concatenation constraints."
1) Formal definition (instance, solution, decision question)
Let be an alphabet. An instance of PCP consists of pairs of strings: where each .
A solution is a finite sequence of indices such that
The decision problem asks:
Does there exist such a sequence?
Key keywords: alphabet, string concatenation, decision problem.
2) A small illustrative example (how matching works)
Suppose we use tiles over alphabet :
- Tile 1:
- Tile 2:
We try to form the same final string on top and bottom by choosing a sequence of tile indices.
If we choose sequence , then:
- Top:
- Bottom:
They are not equal, so is not a solution. The idea is to search over all finite sequences and check equality.
Key keywords: tile, index sequence, equality constraint.
type="warning" title="Common pitfall" content="PCP is about matching entire concatenations. Partial matches do not matter unless they can be extended to make full equality."
3) Semi-decidability (recognizing solutions)
Even though PCP is undecidable, it is recursively enumerable: we can enumerate all finite index sequences of length and check whether the resulting top and bottom strings match.
This gives a “search” algorithm:
- generate for increasing
- compute the concatenated top string and bottom string
- accept if they match
If a solution exists, the algorithm eventually finds it; if not, it may run forever.
Key keywords: enumeration algorithm, semi-decision, nontermination.
Brute-force algorithm for PCP (recognizer)
- 1Step 1
Input tiles (u_i, v_i) for i=1..k over alphabet Σ.
- 2Step 2
For n = 1,2,3,... generate all index sequences (i_1,...,i_n) where each i_j ∈ {1..k}.
- 3Step 3
Compute Top = u_{i_1}...u_{i_n} and Bottom = v_{i_1}...v_{i_n}.
- 4Step 4
If Top = Bottom, halt and accept (a solution is found).
- 5Step 5
If no sequence ever matches, the recognizer does not halt.
4) Why PCP is undecidable (high-level reduction idea)
The standard proof strategy for PCP undecidability is to reduce an already-undecidable problem (commonly, the halting problem). The reduction encodes computation history into string concatenation so that:
- a valid sequence of tiles corresponds to a correct “computation trace,” and
- the equality of top and bottom strings forces consistency between successive configurations.
At a high level, PCP acts like a constraint satisfaction engine: the constructed equality forces the simulated machine steps to “line up” correctly.
Key keywords: reduction, computation encoding, undecidability.
How PCP appears in computability theory
Define tiles and matching sequences
Step 1Solutions are sequences of indices where top and bottom concatenations match."
Show recognizability
Step 2Enumerate sequences; accept when a match is found."
Prove undecidability
Step 3Reduce from a known undecidable problem by encoding computations."
Use as a tool
Step 4Many other undecidability results are proved via PCP reductions."
5) Related variants and interpretations (short notes)
- PCP can be generalized or restricted (e.g., constraints on the form of tiles or special starting/ending rules).
- A common way to connect PCP to automata theory is via formal languages: PCP can be shown to generate languages/relations that are recursively enumerable but not decidable.
Key keywords: variant, formal language, recursively enumerable relation.
PCP problem-type landscape (qualitative)
PCP sits in the gap between decidable and fully recognizable complements.
FAQ: Short notes on PCP
Post Correspondence Problem (PCP) - Intro and intuition
Knowledge Check
In PCP, what must be true for a sequence of indices i1,...,in to be accepted?