2017-10-27 9 views
0

私は私がNPDAによって行わ動きのシーケンスを作成する方法を知りたい、この言語のNPDAを描画しようとしているが、それに形式言語NPDAグラフ

enter image description here

を得るように見えるカント入力シーケンスw = aacb。文字列wは受け入れられていますか?私はちょうどカントがスタックに触れることなく、この

答えて

1
  1. 読む少なくとも二つの操作を行うように見える

    感謝。他に何かが見える場合はクラッシュします。

  2. aを読んで、それぞれを読み込むごとにaをスタックにプッシュします。
  3. cを読んだ場合は、直後にbを読んだり、クラッシュしたりする必要があります。スタックを変更しないでください。
  4. bを読んだら、何度も何度も読書を開始する準備をしてください。スタックを変更しないでください。
  5. スタックが空でない場合は、aを読み、次にcまたはクラッシュする必要があります。 aとcを読んだら、スタックから一つのaをポップします。
  6. (ac)を複数回読み取った後でクラッシュするかスタックが空になるまで続行します。入力が使い尽くされた場合は、受け入れます。それ以外の場合は、クラッシュします。

これをより具体的にするための状態遷移図をご覧になりたい場合はお知らせください。私はあなた自身で最初に書くことをお勧めします。

関連する問題