帰納言語
帰納言語は以下の操作について閉じている。すなわち、L と P を2つの帰納言語としたとき、以下の言語も同様に帰納言語である。
Lのクリーネ閉包 L ∗ {\displaystyle L^{*}}
Lの準同型写像 φ(L)
L と P の連結 L ∘ P {\displaystyle L\circ P}
和集合 L ∪ P {\displaystyle L\cup P}
共通部分 L ∩ P {\displaystyle L\cap P}
L の補集合
差集合 L − P {\displaystyle L-P}
最後の属性は、差集合が和集合と共通部分から求められることから導出される。
帰納言語の定義には以下の2つの等価な定義がある。
帰納言語は、形式言語のアルファベットにおける全ての単語の集合のうちの帰納的部分集合である。
帰納言語は、その言語を受容するチューリングマシンがあったとき、その言語に属する文字列を入力したとき常に停止して受容し、属さない文字列を入力したとき常に停止して拒絶するような言語である。つまり、このチューリングマシンは常に停止する。このようなチューリング機械を decider と呼び、帰納言語を決定(decide)する。
全ての帰納言語は帰納的に枚挙可能である。全ての正規言語、文脈自由言語、文脈依存言語は帰納言語である。