- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:二つのよく似たオートマトン)
二つのよく似たオートマトンについての質問
このQ&Aのポイント
- 二つのよく似たオートマトンについて質問します。npda for {a^n b^n: n>=0} ∪ {a}とnpda for {a^n b^n: n>=0}というオートマトンがあります。それぞれの違いや共通点について教えてください。
- 質問1で{a}の部分を除けば、両者とも{a^n b^n: n>=0}となるのでしょうか?
- 質問2では、なぜΓを{0, 1}と{z, 1}などと変えているのでしょうか?それはstatesの数に関係があるのでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Γが{0, 1}から{z, 1}に変わっていることには特に深い意味はないと思います。 {a^n b^n: n>=0} ∪ {a} のオートマトンでstateの種類が1個余計に必要なのは、 ・今からaが入力された後、bが同じ数だけ入力されて受理状態に落ち着くかもしれないし、1個だけaが入力されて受理状態に落ち着くかもしれないという状態 と、 ・今からaが入力された後、bが同じ数だけ入力されて受理状態に落ち着くという状態(この状態から1個だけaが入力されて受理、というのは許されない) の2つを区別する必要があるからです。 前者の状態がq0,後者の状態がq1に相当します。 質問1の答はYesになりますが、この場合、q0とq1をわざわざ分ける必要はないわけですね。
お礼
>stateの種類が1個余計に必要なのは… >2つを区別する必要があるからです。 なるほど、それで理由が分かりました。 説明が本当に上手ですね。まるで絡んだ紐を一つ一つ解いているようです。 ありがとうございました!