The decidability of a decision problem or language refers to whether there exists a Turing machine that can accept the language or solution to the problem and halts every time. Informally, it means a decidable problem is one that can be answered by a yes/no.

Definition

Decidable (Language) ^def-language

Let be a language. Then:

  • is a Turing machine
  • That is, accepts every string and rejects every string , and more importantly, always halts (definition of a decider)

Decidable (Decision Problem) ^def-problem

Let be a decision problem (of arity ) over an input set

  • is a Turing Machine
  • This implies that a problem can be verifiable. Given a potential solution to the problem, can check if the solution is correct or not.
  • This also means undecidable problems cannot be verified.

Closure Properties

Just like some operations are closed for regular languages, we also have some closure properties for decidable language.

The following operations on languages preserve decidability:

Theorem

T1: The complement of a decidable language is decidable ^t1

T2: The union of two decidable languages is decidable ^t2

T3: The intersection of two decidable languages is decidable ^t3

T4: The concatenation of two decidable languages is decidable

T5: The Kleene star of a decidable language is decidable