私は明日の試験のために勉強していて、NFA を Regex に変換する方法を説明する多くのチュートリアルをチェックしましたが、自分の答えを確認できないようです。チュートリアルに従って、そのNFAを解決しました
私の解決策は次のとおりです。
あば_
私は正しいですか?
私は明日の試験のために勉強していて、NFA を Regex に変換する方法を説明する多くのチュートリアルをチェックしましたが、自分の答えを確認できないようです。チュートリアルに従って、そのNFAを解決しました
私の解決策は次のとおりです。
あば_
私は正しいですか?
あなたの答えa*ba*
は正解です。NFA
次のように、特定の画像 から回答を得ることができます。
ラベルの開始状態 q 0a
に自己ループがあります。そのため、RE のa
null を含め、初期 (プレフィックス) で任意の数のs が可能です。^
したがって、正規表現 (RE) は で始まりa*
ます。
b
最終状態に到達するために必要なのは 1 つだけです。実際には受け入れ文字列の場合。およびb
の文字列に少なくとも 1 つ存在する必要があります。したがって、REは q 1または q 2のいずれかに到達します。どちらも最終状態です。 a
b
a*b
最終状態 (q 1または q 2 )に達したら。文字列には他にありません( from q 1と q 2b
の出力エッジはありません)。b
q 1と q 2ではシンボル is のみa
が可能です。また、q 1または q 2で、q 1と q 2の間の移動スイッチがあり、両方が最終的です。そのため、symbol の後に任意の数のs をサフィックスに含めることができます。(したがって、文字列は で終わります)。 a
b
a
a*
RE はa*ba*
です。
また、そのDFAは次のとおりです。
DFA:
======
a- a-
|| ||
▼| ▼|
--►(q0)---b---►((q1))
a* b a* :RE
====
の任意の数は次a
のq0
とおりです。 a*
取得しb
たら、最終状態に切り替えることができますq1
: b
最終状態では、いくつでもa
可能です: a*
そして、最小化されたDFAです!
FAs
とに関する私による興味深い回答を次に示しREs
ます。役に立つと思います。
次の両方が当てはまるという点で、その答えは正しいです。
ただし、あなたが投稿していないため、あなたの作品を確認できません。