黒田の定理(形式言語)(Kuroda's theorem)とは、形式言語 $L$ について、文脈依存文法で生成されること、規則が文字列を縮めない非収縮文法で生成されること、規則を $AB\to CD$・$A\to BC$・$A\to a$ と空語のための $S\to\varepsilon$($S$ がどの規則の右辺にも現れないときに限る)に限った黒田標準形の文法で生成されること、非決定性の線形有界オートマトンで受理されること、の四つが同値であるという定理である。非収縮文法から機械を作り、機械の一歩を隣り合う二つの変数記号の書き換えでなぞることで証明される。帰結として文脈依存言語の所属は判定でき、決定性の機械で同じ同値が成り立つかは LBA 問題として未解決である。非決定性の線形有界オートマトンとの同値は 1964 年に黒田成幸が示した。
前提知識: 文脈依存言語, 線形有界オートマトン, 句構造言語, 数学的帰納法
黒田の定理(Kuroda's theorem)は、Chomsky階層 のタイプ 1 の言語を四通りに特徴づける定理である。言語 $L$ について、文脈依存文法で生成されること、規則が文字列を縮めない文法(非収縮文法)で生成されること、規則の形を $AB\to CD$・$A\to BC$・$A\to a$ の三種類(と空語のための例外)に限った文法(黒田標準形)で生成されること、非決定性の線形有界オートマトンで受理されること、の四つが同値になる(thm-kuroda-main)。
非収縮文法は規則の左辺に何記号でも置けるので書きやすく、文脈依存文法は一度に一つの変数記号しか書き換えず、黒田標準形は変数記号を高々二つ見て高々二つに書き換えるだけである。定理は、規則の形をここまで制限しても生成できる言語のクラスが変わらないことを示している。この記事では、文法から機械を作り、機械から二通りの文法(黒田標準形の文法と文脈依存文法)を作ることで、四つの同値をすべて証明する。
以下、$\Sigma$ はアルファベット(形式言語)、$\Sigma^{*}$ はその上の文字列全体、$\varepsilon$ は空語、$|x|$ は文字列 $x$ の長さを表す。文法 $G=(V,\Sigma,R,S)$、直接導出 $\Rightarrow_G$、導出 $\Rightarrow_G^{*}$、生成する言語 $L(G)=\{w\in\Sigma^{*}\mid S\Rightarrow_G^{*}w\}$ は 句構造言語 の記事の定義(句構造文法、導出と生成される言語)のとおりとする。$V$ は変数記号(非終端記号)の有限集合、$S\in V$ は開始記号、$R$ は規則の有限集合である。
文法 $G=(V,\Sigma,R,S)$ について、
文脈依存文法の規則 $\gamma A\delta\to\gamma\alpha\delta$ は $|\gamma A\delta|\le|\gamma\alpha\delta|$ を満たすので、文脈依存文法は非収縮文法である。逆に、二つの変数記号を入れ替える $CB\to BC$ のような非収縮文法の規則は、文脈依存文法の形をしていない。
文法 $G=(V,\Sigma,R,S)$ が黒田標準形(Kuroda normal form)であるとは、$R$ の各規則が次のいずれかの形であることをいう($A,B,C,D\in V$、$a\in\Sigma$。$A,B,C,D$ の中に等しいものがあってもよい)。
$$AB\to CD,\qquad A\to BC,\qquad A\to a,\qquad S\to\varepsilon$$
ただし $S\to\varepsilon$ を含むときは、$S$ がどの規則の右辺にも現れないことを要求する。
規則 $A\to B$($A,B\in V$)も許して黒田標準形と呼ぶ流儀もある(HN14 Definition 28)。この記事の黒田標準形はその特別な場合なので、thm-kuroda-main はその流儀でもそのまま成り立つ。黒田標準形の規則はどれも長さを減らさないので、黒田標準形の文法は非収縮文法である。
線形有界オートマトンの定義は 線形有界オートマトン の記事の定義「線形有界オートマトン」「様相・計算・受理」に従う。証明で使うので要点を述べておく。
$\triangleright,\triangleleft$ を左端と右端の印とする。線形有界オートマトン $M=(Q,\Sigma,\Gamma,\delta,q_0,F)$ は、有限集合 $Q$(状態)、$q_0\in Q$、$F\subset Q$(受理状態)、$\Sigma$ を含む有限集合 $\Gamma$(テープ記号)と、遷移の有限集合 $\delta$ からなる。各遷移 $(q,X,p,Y,d)$($d\in\{-1,+1\}$)は「状態 $q$ でヘッドの下の記号が $X$ なら、$Y$ を書き、ヘッドを $d$ の向きに動かして状態 $p$ に移る」ことを表し、$X=\triangleright$ なら $Y=\triangleright$ かつ $d=+1$、$X=\triangleleft$ なら $Y=\triangleleft$ かつ $d=-1$、$X\in\Gamma$ なら $Y\in\Gamma$ とする。
入力 $x=a_1\cdots a_n$ に対し、テープは $\triangleright X_1\cdots X_n\triangleleft$ で、様相 $(q,y,i)$($y=X_1\cdots X_n\in\Gamma^{n}$、$0\le i\le n+1$)はヘッドが $i$ 番目のマス($0$ 番目は $\triangleright$、$n+1$ 番目は $\triangleleft$)にあることを表す。遷移による一歩を $\vdash$、その有限回の繰り返しを $\vdash^{*}$ と書く。$c_0(x)=(q_0,x,0)$ から状態が $F$ に属する様相に至る計算があるとき $M$ は $x$ を受理するといい、受理する文字列全体を $L(M)$ と書く。一つの様相から複数の遷移が可能でもよい(非決定性)。
$\Sigma$ 上の言語 $L$ について、次は同値である。
1 から 2:文脈依存文法は非収縮文法である(def-kuroda-grammars の後の注意)。3 から 2:黒田標準形の文法は非収縮文法である(rem-kuroda-conventions)。2 から 4:prop-kuroda-grammar-to-lba。4 から 3 と 4 から 1:prop-kuroda-lba-to-grammar。以上で 1, 2, 3, 4 はすべて同値である。
証明は機械を経由する。機械の一歩は一マスを書き換えてヘッドを隣のマスへ動かすだけなので、各マスを一つの変数記号で表せば、一歩は隣り合う二つの変数記号の書き換えでなぞれ、自然に黒田標準形の規則になる。終端記号を変数記号に置き換え、長い規則を短い規則の連鎖に分解して文法を直接書き換える構成もある(HN14 Theorem 25)。
非収縮文法 $G=(V,\Sigma,R,S)$ に対し、$L(M)=L(G)$ となる線形有界オートマトン $M$ が存在する。
(考え方)機械は導出を一歩ずつ推測してテープの下段で書き換える。導出の途中の文字列は入力より長くならないので、テープに収まる。
(構成)新しい記号 $\square$ をとり $\Delta:=V\cup\Sigma\cup\{\square\}$ とおく。$\Delta$ 上の文字列 $z$ から $\square$ をすべて除いた文字列を $\mathrm{del}(z)$ と書く。同じ長さの空でない文字列の対の有限集合 $P$ を、各 $\sigma\in V\cup\Sigma$ についての対 $(\sigma\square,\ \square\sigma)$(空きを左へ一つ移す)と、$S\to\varepsilon$ 以外の各規則 $\alpha\to\beta$ についての対 $(\alpha\square^{d},\ \beta)$($d:=|\beta|-|\alpha|\ge0$)の全体とする。テープ記号を $\Gamma:=\Sigma\cup(\Sigma\times\Delta)$ とし、$(a,\zeta)\in\Sigma\times\Delta$ を上段に入力の記号 $a$、下段に作業用の記号 $\zeta$ を置いた二段のマスと考える。状態は $s_0,s_1,s_2,b,m,c,f$ と、各 $(u,v)\in P$ と $2\le j\le|u|$ についての $t_{u,v,j}$ とし、初期状態を $s_0$、$F:=\{f\}$ とする。遷移は次のとおり($a\in\Sigma$、$Z\in\Sigma\times\Delta$ は任意。$u=u_1\cdots u_k$、$v=v_1\cdots v_k$ とし、$t_{u,v,k+1}$ は $b$ と読む)。
$n=0$ のときテープは $\triangleright\triangleleft$ で、$f$ に至る計算は $s_1$ で $\triangleleft$ を読む遷移を使うものに限るので、$\varepsilon\in L(M)$ は $S\to\varepsilon\in R$ と同値である。$G$ の側でも、$S\to\varepsilon$ 以外の規則は長さを減らさず、$S\to\varepsilon$ があれば $S$ は右辺に現れないので、$\varepsilon$ の導出は $S$ に直接 $S\to\varepsilon$ を適用するものに限る。よって $\varepsilon\in L(G)$ も $S\to\varepsilon\in R$ と同値である。
線形有界オートマトン $M=(Q,\Sigma,\Gamma,\delta,q_0,F)$ に対し、$L(G_{\mathrm{K}})=L(M)$ となる黒田標準形の文法 $G_{\mathrm{K}}$ と、$L(G_{\mathrm{C}})=L(M)$ となる文脈依存文法 $G_{\mathrm{C}}$ が存在する。
(考え方)様相を、各マスを一つの変数記号で表した長さ $n$ の記号列で表し、機械の一歩を規則 $AB\to CD$ でなぞる。受理したら、全部のマスに印を広げてから終端記号に替える。
(変数記号)ヘッドの印の集合を $H:=\{-,\star\}\cup\{(q,\kappa)\mid q\in Q,\ \kappa\in\{\mathrm{o},\mathrm{l},\mathrm{r}\}\}$ とする。$-$ はヘッドがないこと、$(q,\mathrm{o})$ は状態 $q$ のヘッドがそのマスにあること、$(q,\mathrm{l})$・$(q,\mathrm{r})$ はヘッドが左端・右端の印の上にあること(最初・最後のマスに付ける)、$\star$ は受理が済んだことを表す。$G_{\mathrm{K}}$ の変数記号は、開始記号 $S$、補助の $T$、および四つ組 $\langle a,X,h,e\rangle$($a\in\Sigma$、$X\in\Gamma$、$h\in H$、$e=(e_1,e_2)\in\{0,1\}^{2}$)とする。四つ組は入力の一マスを表し、$a$ はそのマスの入力の記号、$X$ は今のテープの記号、$h$ はヘッドの印で、$e_1=1$・$e_2=1$ はそれぞれ最初・最後のマスであることを表す。
(様相の表示)$x=a_1\cdots a_n$($n\ge2$)と様相 $c=(q,X_1\cdots X_n,i)$ に対し、$j$ 番目が $\langle a_j,X_j,h_j,([j=1],[j=n])\rangle$ である長さ $n$ の記号列を $\mathrm{enc}(x,c)$ とする。$[\,\cdot\,]$ は条件が成り立てば $1$、そうでなければ $0$ を表し、$h_j$ は $i=j$ なら $(q,\mathrm{o})$、$i=0$ かつ $j=1$ なら $(q,\mathrm{l})$、$i=n+1$ かつ $j=n$ なら $(q,\mathrm{r})$、それ以外は $-$ とする。
($G_{\mathrm{K}}$ の規則)次の表のとおりとする。表に現れる $a,b\in\Sigma$、$X,Y,Z\in\Gamma$、$e,e'\in\{0,1\}^{2}$、$e_1,e_2\in\{0,1\}$ は、条件の欄の制約のもとで任意である。
| 名前 | 規則 | 条件 |
|---|---|---|
| 生成 | $S\to T\langle b,b,-,(0,1)\rangle$、$S\to\langle a,a,(q_0,\mathrm{l}),(1,0)\rangle\langle b,b,-,(0,1)\rangle$、$T\to T\langle b,b,-,(0,0)\rangle$、$T\to\langle a,a,(q_0,\mathrm{l}),(1,0)\rangle\langle b,b,-,(0,0)\rangle$ | なし |
| 短い入力 | $S\to a$ / $S\to\varepsilon$ | $a\in L(M)$ / $\varepsilon\in L(M)$ |
| 右へ | $\langle a,X,(q,\mathrm{o}),(e_1,0)\rangle\langle b,Z,-,e'\rangle\to\langle a,Y,-,(e_1,0)\rangle\langle b,Z,(p,\mathrm{o}),e'\rangle$ | $(q,X,p,Y,+1)\in\delta$ |
| 右端の印へ | $\langle b,Z,-,e'\rangle\langle a,X,(q,\mathrm{o}),(0,1)\rangle\to\langle b,Z,-,e'\rangle\langle a,Y,(p,\mathrm{r}),(0,1)\rangle$ | $(q,X,p,Y,+1)\in\delta$ |
| 左へ | $\langle b,Z,-,e'\rangle\langle a,X,(q,\mathrm{o}),(0,e_2)\rangle\to\langle b,Z,(p,\mathrm{o}),e'\rangle\langle a,Y,-,(0,e_2)\rangle$ | $(q,X,p,Y,-1)\in\delta$ |
| 左端の印へ | $\langle a,X,(q,\mathrm{o}),(1,0)\rangle\langle b,Z,-,e'\rangle\to\langle a,Y,(p,\mathrm{l}),(1,0)\rangle\langle b,Z,-,e'\rangle$ | $(q,X,p,Y,-1)\in\delta$ |
| 左端の印から | $\langle a,X,(q,\mathrm{l}),(1,0)\rangle\langle b,Z,-,e'\rangle\to\langle a,X,(p,\mathrm{o}),(1,0)\rangle\langle b,Z,-,e'\rangle$ | $(q,\triangleright,p,\triangleright,+1)\in\delta$ |
| 右端の印から | $\langle b,Z,-,e'\rangle\langle a,X,(q,\mathrm{r}),(0,1)\rangle\to\langle b,Z,-,e'\rangle\langle a,X,(p,\mathrm{o}),(0,1)\rangle$ | $(q,\triangleleft,p,\triangleleft,-1)\in\delta$ |
| 受理 | $\langle a,X,(f,\kappa),e\rangle\langle b,Z,-,e'\rangle\to\langle a,X,\star,e\rangle\langle b,Z,\star,e'\rangle$ と、二つの記号の左右を入れ替えた規則 | $f\in F$、$\kappa\in\{\mathrm{o},\mathrm{l},\mathrm{r}\}$ |
| 伝播 | $\langle a,X,\star,e\rangle\langle b,Z,-,e'\rangle\to\langle a,X,\star,e\rangle\langle b,Z,\star,e'\rangle$ と、二つの記号の左右を入れ替えた規則 | なし |
| 終端 | $\langle a,X,\star,e\rangle\to a$ | なし |
どの規則も $AB\to CD$、$A\to BC$、$A\to a$、$S\to\varepsilon$ のいずれかの形で、$S$ はどの規則の右辺にも現れないので、$G_{\mathrm{K}}$ は黒田標準形である。長さ $2$ 以上の入力では、ヘッドのあるマスに隣のマスがあるので、一つのマスしか変えない一歩(端の印へ移る一歩と端の印から戻る一歩)も、隣のマスを文脈として変えずに残す二記号の規則でなぞれる。そのため $A\to B$ の形の規則は要らない。長さ $0,1$ の入力は短い入力の規則で直接扱う。
(導出される記号列)$S$ から $G_{\mathrm{K}}$ で導出される記号列は、次のどれかであることを導出の長さに関する帰納法で示す。
(iii) で印 $(q,\mathrm{o})$ が $j$ 番目にあるとする。「右へ」は $e_2=0$、すなわち $j\le n-1$ のときに適用でき、遷移 $(q,X_j,p,Y,+1)$ により $c\vdash(p,y',j+1)$($y'$ は $j$ 番目を $Y$ に替えたもの)となり、結果は $j$ 番目が $\langle a_j,Y,-,\cdot\rangle$、$j+1$ 番目が $\langle a_{j+1},X_{j+1},(p,\mathrm{o}),\cdot\rangle$ で、これは $\mathrm{enc}(x,(p,y',j+1))$ である。「右端の印へ」は $j=n$ のときで、ヘッドは $n+1$ 番目に移り、結果は $n$ 番目の印が $(p,\mathrm{r})$ の $\mathrm{enc}$ である。「左へ」「左端の印へ」も同様である。印 $(q,\mathrm{l})$ は $i=0$ を表し、ヘッドの下の記号は $\triangleright$ なので、遷移は $(q,\triangleright,p,\triangleright,+1)$ の形に限り、ヘッドは $1$ 番目に移る。これが「左端の印から」で、結果の $1$ 番目の印は $(p,\mathrm{o})$ である。$(q,\mathrm{r})$ も同様である。どの規則も、相手のマスの印が $-$ であることを要求するが、(iii) ではヘッドのないマスの印はすべて $-$ であり、$n\ge2$ なのでヘッドのあるマスには必要な側の隣がある(最初のマスには右隣、最後のマスには左隣)。
| 置き換える規則 | 文脈依存文法の規則 |
|---|---|
| 右へ | $\langle a,X,(q,\mathrm{o}),(e_1,0)\rangle\to\langle a,Y,(p,\mathrm{R}),(e_1,0)\rangle$($(q,X,p,Y,+1)\in\delta$)と、各 $p\in Q$ についての $\langle a,Y,(p,\mathrm{R}),e\rangle\langle b,Z,-,e'\rangle\to\langle a,Y,(p,\mathrm{R}),e\rangle\langle b,Z,(p,\mathrm{R}'),e'\rangle$、$\langle a,Y,(p,\mathrm{R}),e\rangle\langle b,Z,(p,\mathrm{R}'),e'\rangle\to\langle a,Y,-,e\rangle\langle b,Z,(p,\mathrm{R}'),e'\rangle$、$\langle a,Y,-,e\rangle\langle b,Z,(p,\mathrm{R}'),e'\rangle\to\langle a,Y,-,e\rangle\langle b,Z,(p,\mathrm{o}),e'\rangle$ |
| 左へ | 上の四つの規則の左右を入れ替え、$\mathrm{R},\mathrm{R}'$ を $\mathrm{L},\mathrm{L}'$ に、$(e_1,0)$ を $(0,e_2)$ に、$+1$ を $-1$ に替えたもの |
| 受理 | $\langle a,X,(f,\kappa),e\rangle\to\langle a,X,\star,e\rangle$($f\in F$、$\kappa\in\{\mathrm{o},\mathrm{l},\mathrm{r}\}$) |
一段階目では、印が $-$ でない四つ組は $(p,\mathrm{R})$ の一つだけで、適用できるのは右隣の $-$ を $(p,\mathrm{R}')$ にする規則だけである(三番目の規則は右隣に $(p,\mathrm{R}')$ を、四番目の規則は $(p,\mathrm{R}')$ そのものを要する。一段階目の規則は $e_2=0$ を要求するので、出発したのは最後のマスでなく、右隣がある)。二段階目では、$(p,\mathrm{R})$ の右隣が $-$ でないので二番目の規則は適用できず、$(p,\mathrm{R}')$ の左隣が $-$ でないので四番目の規則も適用できない。適用できるのは三番目の規則だけである。三段階目では、印が $-$ でないのは $(p,\mathrm{R}')$ だけで、その左隣は $-$ なので四番目の規則だけが適用でき、結果は $c\vdash(p,y',j+1)$ の $\mathrm{enc}$ である。受理の規則は一つの $\star$ を作るだけで、結果は (iv) に入る。
文脈依存言語 の記事の例「三つの部分の個数が等しい文字列」の非収縮文法 $G$(規則 $S\to aSBC$、$S\to aBC$、$CB\to BC$、$aB\to ab$、$bB\to bb$、$bC\to bc$、$cC\to cc$)は $L(G)=\{a^{n}b^{n}c^{n}\mid n\ge1\}$ を生成する(同記事の命題「三つの部分の個数が等しい文字列の文法」)。終端記号の代わりの変数記号 $A_a,B_b,C_c$ と補助の $U,W$ を加え、次の規則をもつ文法 $G'$ を考える。
$$\begin{aligned}&S\to A_aU,\quad U\to SW,\quad S\to A_aW,\quad W\to BC,\quad CB\to BC,\\ &A_aB\to A_aB_b,\quad B_bB\to B_bB_b,\quad B_bC\to B_bC_c,\quad C_cC\to C_cC_c,\\ &A_a\to a,\quad B_b\to b,\quad C_c\to c.\end{aligned}$$
これは黒田標準形であり、$L(G')=L(G)$ である。実際、記号ごとに $A_a\mapsto a$、$B_b\mapsto b$、$C_c\mapsto c$、$U\mapsto SBC$、$W\mapsto BC$ とし、ほかの記号は変えない写像を $\varphi$ とすると、$G'$ の一歩 $\zeta\Rightarrow\zeta'$ ごとに $\varphi(\zeta)\Rightarrow_G\varphi(\zeta')$ か $\varphi(\zeta)=\varphi(\zeta')$ が成り立つ(たとえば $S\to A_aU$ は $S\to aSBC$ に、$A_aB\to A_aB_b$ は $aB\to ab$ に移り、$U\to SW$・$W\to BC$・$A_a\to a$ などは $\varphi$ の値を変えない)。終端記号の列 $w$ では $\varphi(w)=w$ なので $L(G')\subset L(G)$ である。逆に、$G$ の導出の各文字列の $a,b,c$ を $A_a,B_b,C_c$ に替えた列は $G'$ の規則でなぞれ($S\to aSBC$ は $S\Rightarrow A_aU\Rightarrow A_aSW\Rightarrow A_aSBC$ でなぞる)、最後に $A_a\to a$ などを使えば $L(G)\subset L(G')$ を得る。
線形有界オートマトン の記事の例「2 の冪乗の長さの文字列」「同じ文字列の繰り返し」により、$\{a^{2^{k}}\mid k\in\mathbb{N}\}$ と $\{ww\mid w\in\{a,b\}^{+}\}$ は線形有界オートマトンで受理できる。prop-kuroda-lba-to-grammar により、どちらも黒田標準形の文法でも文脈依存文法でも生成できる。文法を直接書くより、機械を書いてから定理を使うほうが容易な例である。
| 外す条件 | 反例 | 成り立たなくなること |
|---|---|---|
| 規則が長さを減らさないこと(2 の非収縮性) | 長さを減らす規則を許した句構造文法で、所属が判定できない言語を生成するもの | 生成される言語が文脈依存言語であること |
| 規則の集合が有限であること | 任意の言語 $L\subset\Sigma^{+}$ に対する規則 $S\to w$($w\in L$)の全体 | 生成される言語が文脈依存言語であること:任意の言語が生成される |
1 行目:句構造文法で生成される言語は、Turing 機械で受理される言語とちょうど一致する(句構造言語 の記事の定理「Turing 機械との同値性」)。$\Sigma$ が $2$ 文字以上のとき、その中には所属が判定できない言語がある(Chomsky階層 の記事の定理「階層定理」)。一方、文脈依存言語の所属は判定できる(文脈依存言語 の記事の命題「所属問題の決定可能性」)ので、そのような言語は文脈依存言語でない。長さを減らす規則を許すと、導出の途中の文字列が入力より長くなりうるので、prop-kuroda-grammar-to-lba の構成はテープに収まらない。
2 行目:規則 $S\to w$ はどれも長さを減らさないので、規則が無限個であることを除けば非収縮文法の条件を満たし、生成される言語はちょうど $L$ である。$\Sigma^{*}$ の部分集合は非可算個ある(形式言語 の記事の命題「言語の個数」)ので、$\varepsilon$ を含むかどうかだけが違う二つを組にみれば $\Sigma^{+}$ の部分集合も非可算個あり、文脈依存言語は句構造言語である(句構造言語 の記事の命題「文脈依存言語は句構造言語である」)から可算個しかない(同記事の命題「句構造言語の個数」)ので、文脈依存でない $L$ も生成される。prop-kuroda-grammar-to-lba の構成では、規則ごとに機械の状態を用意するので、状態の集合が無限になる。
thm-kuroda-main の 4 から、文脈依存言語は所属が判定できる。線形有界オートマトンの様相は長さ $n$ の入力に対して有限個しかないからである(線形有界オートマトン の記事の命題「所属問題の決定可能性」)。また、文脈依存言語のクラスは補集合について閉じている。これは、非決定性の機械の作業領域を入力の長さで抑えたクラスが補集合で閉じるという Immerman–Szelepcsényi の定理による(文脈依存言語 の記事の定理「閉包性」とその注意)。一方、thm-kuroda-main の 4 を「ある決定性の線形有界オートマトン $M$ について $L=L(M)$」に置き換えても 1 と同値になるかどうか(LBA 問題)は未解決である。
黒田標準形の文法から文脈依存文法を作るには、各規則 $AB\to CD$ を、その規則だけで使う新しい変数記号 $X,Y$ による四つの規則 $AB\to AX$、$AX\to YX$、$YX\to YD$、$YD\to CD$ に置き換えればよいことが知られている(G. Révész による。HN14 Definition 29 の前の注意と Theorem 26)。この記事では証明しない。四つの規則の途中にほかの規則が割り込む導出も扱う必要があり、prop-kuroda-lba-to-grammar の $G_{\mathrm{C}}$ では、ヘッドの印が一つしかないことでこの割り込みを防いでいる。
非決定性の線形有界オートマトンで受理される言語がちょうど文脈依存言語であることは、言語学者の黒田成幸(S.-Y. Kuroda、1934–2009)が 1964 年に示した。黒田標準形の名も黒田成幸にちなむ。数学者の黒田成勝(Sigekatu Kuroda)は父であり、別人である。
Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する