Lax251941.PostCorrespondenceUndecidable
The Post correspondence problem is undecidable
concepts/Lax251941/PostCorrespondenceUndecidable.lean · lax-251941
No public endorsements yet.
Loading review…
Sign in with ORCIDConcept map
Evidence
Each proof establishes this claim relative to its assumptions.
Theorem
No algorithm decides whether an instance of the Post correspondence problem has a match (Post 1946; Sipser, Theorem 5.15). It follows from the reduction of the acceptance problem for Turing machines to the Post correspondence problem () and the undecidability of that acceptance problem ().
Lean source view on GitHub
| 1 | import Mathlib.Computability.Halting |
| 2 | import Lax251941.PostCorrespondence |
| 3 | |
| 4 | /-! |
| 5 | --- |
| 6 | title: The Post correspondence problem is undecidable |
| 7 | type: theorem |
| 8 | --- |
| 9 | No algorithm decides whether an instance of the Post correspondence problem has |
| 10 | a match (Post 1946; Sipser, Theorem 5.15). It follows from the reduction of |
| 11 | the acceptance problem for Turing machines to the Post correspondence problem |
| 12 | (`PostCorrespondenceReduction`) and the undecidability of that acceptance |
| 13 | problem (`TapeAcceptanceUndecidable`). |
| 14 | |
| 15 | # Formalization notes |
| 16 | |
| 17 | Stated for instances over the alphabet `ℕ`, in the domino form `HasMatch`, with |
| 18 | mathlib's `ComputablePred`. The index form the book *Transducers* uses is |
| 19 | `PostCorrespondenceIndexUndecidable`. |
| 20 | -/ |
| 21 | |
| 22 | namespace Lax251941.PostCorrespondenceUndecidable |
| 23 | |
| 24 | open Lax251941.PostCorrespondence |
| 25 | |
| 26 | /-- The Post correspondence problem over `ℕ` is undecidable. -/ |
| 27 | axiom not_computablePred_hasMatch : ¬ ComputablePred fun P : Inst ℕ => HasMatch P |
| 28 | |
| 29 | end Lax251941.PostCorrespondenceUndecidable |
| 30 |
Formalization notes
Stated for instances over the alphabet , in the domino form , with mathlib's . The index form the book Transducers uses is .
Community review
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above; your ORCID profile must share a public name.
0 comments