R={0∗10∗10∗10∗∣偶数の長さの単語}との交点は、PDA が 2つの位置を何らかの方法で記憶できるため、コンテキストに依存しません。とにかく、最初にこの言語Lが何であるかを見てみましょう。その補数は
R∖L={0a10b10c10d∣b=n/2∨c=n/2∨a+d=n/2}です。したがって、
L={0a10b10c10d∣b≠n/2∧c≠n/2∧a+d≠n/2}。これを
L={0a10b10c10d∣b>n/2∨c>n/2∨a+d>n/2∨b,c,a+d<n/2}。
最初の3ケースは簡単に確認でき、4番目のケースも簡単に確認できます。
b>n/2:最初の1までスタックへの書き込みを開始し、空でないまでスタックからポップを開始します。空になったら、2番目の1に到達するまでスタックに入れ始めます。その後、スタックをポップします。
c>n/2:同じ。
a+d>n/2:最初の1までスタックへの書き込みを開始し、空でないまでスタックからポップを開始します。空になった後、3番目の1に到達するまで再びスタックの配置を開始します。その後、スタックをポップします。
b,c,a+d<n/2:最初の1までスタックに入れ始め、それから空でないまでスタックからポップを開始します。それが空だ後、私たちが到達するまで再びスタックに置く作業を開始 +をN / 2(非決定論的に1秒と第三の間のどこかを推測)。その後、スタックをポップします。a+n/2