Chomsky Hierarchy

Four language classes, nested by expressive power.

TypeLanguage ClassProduction FormAccepting Device
3RegularA→aBA \to aB, A→aA \to aFinite automaton
2Context-freeA→αA \to \alphaPushdown automaton
1Context-sensitiveα→β\alpha \to \beta, ∣β∣≥∣α∣\lvert \beta \rvert \geq \lvert\alpha\rvert, α\alpha has non-terminalLinear-bounded automaton
0Recursively enumerableα→β\alpha \to \beta, α\alpha has non-terminalTuring machine

Each type is a strict subset of the type below it.

Type 3 ⊊ Type 2 ⊊ Type 1 ⊊ Type 0\text{Type 3 }\subsetneq\text{ Type 2 }\subsetneq\text{ Type 1 }\subsetneq\text{ Type 0}

Not all languages are RE. Proven by counting: ∣languages∣>∣TMs∣|\text{languages}| > |\text{TMs}| (languages are uncountable, TMs are countable).

Closure Properties

OperationRegularCFLCSLRE
UnionYesYesYesYes
ConcatenationYesYesYesYes
Kleene starYesYesYesYes
IntersectionYesNoYesYes
ComplementYesNoYesNo
DifferenceYesNoYesNo
Written by September 29, 2026 2 min read
Was this helpful?