Draft — mutable and not usable as a dependency; its citation marks the draft state.

Lax251941.AcceptanceUndecidable

The acceptance problem is undecidable

concepts/Lax251941/AcceptanceUndecidable.lean · lax-251941

proven

Loading review…

Sign in with ORCID

Community review

Flags

Each flag is tied to a public ORCID identity and explains why this concept may be incorrect.

No flags have been submitted.

    Community review

    Flag this concept

    State precisely what appears incorrect. This explanation will be public under your ORCID name.

    No source line selected.

    Concept map

    Proven claimDefinitionThis conceptRelated conceptA → B: B builds on A

    Evidence

    Each proof establishes this claim relative to its assumptions.

    Theorem

    No machine decides the acceptance problem ATMA_{TM} (Sipser, Theorem 4.11). The proof is the diagonalisation argument: a decider HH for ATMA_{TM} would give a machine DD that, on the description N\langle N\rangle of a machine NN, runs HH on N,N\langle N, \langle N\rangle\rangle and answers the opposite; running DD on its own description is then a contradiction.

    Lean source view on GitHub

    1import Lax251941.Acceptance
    2
    3/-!
    4---
    5title: The acceptance problem is undecidable
    6type: theorem
    7---
    8No machine decides the acceptance problem ATMA_{TM} (Sipser, Theorem 4.11). The
    9proof is the diagonalisation argument: a decider HH for ATMA_{TM} would give a
    10machine DD that, on the description N\langle N\rangle of a machine NN, runs
    11HH on N,N\langle N, \langle N\rangle\rangle and answers the opposite; running DD
    12on its own description is then a contradiction.
    13
    14# Formalization notes
    15
    16The statement is `¬ TuringDecidable ATM` for the machines and the language of
    17`Acceptance`. It is equivalent to the membership predicate of `ATM` not being
    18mathlib's `ComputablePred`, decidability of a language and computability of its
    19membership predicate being the same thing for these machines.
    20-/
    21
    22namespace Lax251941.AcceptanceUndecidable
    23
    24open Lax251941.Acceptance
    25
    26/-- Sipser's Theorem 4.11: the acceptance problem is undecidable. -/
    27axiom not_turingDecidable_ATM : ¬ TuringDecidable ATM
    28
    29end Lax251941.AcceptanceUndecidable
    30
    Show Proof

    Formalization notes

    The statement is ¬TuringDecidableATM¬ TuringDecidable ATM for the machines and the language of AcceptanceAcceptance. It is equivalent to the membership predicate of ATMATM not being mathlib's ComputablePredComputablePred, decidability of a language and computability of its membership predicate being the same thing for these machines.

    Used by

    none

    From Mathlib

    none

    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

    Loading discussion…