タグ付けされた質問 「finite-automata」

有限メモリを持つ有限オートマトンモデルである有限オートマトンに関する質問。これは通常の言語と同等であり、より多くの複雑なモデルの基礎となります。

4
有限オートマトンを正規表現に変換する方法は?
正規表現を同じ言語を受け入れる(最小限の)NFAに変換することは、Thompsonのアルゴリズムなどの標準アルゴリズムを使用すると簡単です。しかし、他の方向はより面倒であるように思われ、結果の表現が面倒な場合があります。 NFAを同等の正規表現に変換するためのアルゴリズムは何ですか?時間の複雑さや結果のサイズに関して利点はありますか? これは参考質問になるはずです。メソッドの一般的な説明と重要な例を含めてください。

6
非有限オートマトンはありますか?
オートマトン理論では、私たちは皆、最初から有限オートマトンとしてオートマトンを読みます。私が知りたいのは、オートマトンが有限である理由です。明確にするために、有限のオートマトンには、アルファベット、言語、正規表現で作成された文字列、または何が含まれていますか?そして、(理論上)非有限オートマトンはありますか?

2
平面正規言語
私のクラスでは、生徒は、すべての有限オートマトンをエッジを交差させずに描画できるかどうかを尋ねました(私の例はすべてそうでした)。もちろん、答えは否定的であり、言語{x∈{a,b}∗∣#a(x)+2#b(x)≡0mod5}{x∈{a,b}∗∣#a(x)+2#b(x)≡0mod5}\{\; x\in\{a,b\}^* \mid \#_a(x)+2\#_b(x) \equiv 0 \mod 5 \;\}明らかなオートマトンです。x \ in \ {a、b \} ^ * \ mid \ #_ a(x)+2 \ #_ b(x)\ equiv 0 \ mod 5 \; \}は、5つのノード上の完全なグラフK5K5K_5の構造を持ちます。Yuvalは、関連言語についても同様の構造を示しています。 私の質問は次のとおりです。この言語のすべての有限状態オートマトンが非平面であることをどのように示しますか?Myhill-Nerodeのような特性化では、おそらく言語の構造がダイアグラムに存在することを確立できますが、これをどのように正確にするのでしょうか? そして、もしそれができれば、「平面の通常言語」の特徴はありますか?

2
通常の言語が「通常」と呼ばれるのはなぜですか?
Michael Sipserによる計算理論入門の最初の章を終えたところで、有限オートマトンの基本について説明しています。 彼は、通常の言語を、有限オートマトンで記述できるものとして定義しています。しかし、私は彼が通常言語が「通常」と呼ばれる理由を説明する場所を見つけることができませんでした。この文脈における「通常」という用語の起源は何ですか? 注:私は初心者なので、簡単な言葉で説明してみてください!

2
Cのvoid型がempty / bottom型と類似していないのはなぜですか?
ウィキペディアと私が見つけた他のソースはvoid、空のタイプではなくユニットタイプとしてリストCのタイプを見つけました。void空の/下の型の定義によりよく適合するように思えるので、この混乱を見つけます。 void私が知る限り、値は存在しません。 戻り値の型がvoidの関数は、関数が何も返さないため、何らかの副作用しか実行できないことを指定します。 タイプのポインターvoid*は、他のすべてのポインタータイプのサブタイプです。また、void*C との間の変換は暗黙的です。 最後の点voidに、空の型であることの引数としてのメリットがあるかどうかはわかりvoid*ませんvoid。 一方、voidそれ自体は他のすべてのタイプのサブタイプではありません。これは、タイプがボトムタイプであるための要件であると言えます。
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

5
チューリングマシンと有限状態マシンの違いは?
チューリングマシンに関するプレゼンテーションを行っています。チューリングマシンを紹介する前に、FSMの背景を説明したかったのです。問題は、何が互いに非常に違うのか本当に分からないことです。 私が知っているのは違います: FSMは、対応する条件に応じて、チューリングマシンが読み取りと書き込みを行うヘッドを備えた無限の「テープ」で動作する状態に応じて連続した状態を持ちます。 FSMにはエラーが発生する余地があります。これは、終了しない状態に簡単に陥ることができるのに対して、チューリングマシンには戻って物事を変更できるのでそれほど問題ではないからです。 しかし、それ以外には、チューリングマシンをFSMよりも優れたものにするほど多くの違いは知りません。 手伝ってくれませんか?

4
有限状態オートマトンで後方参照、先読み、および後読みをシミュレートする方法は?
この質問は、Computer Science Stack Exchangeで回答できるため、Stack Overflowから移行されました。 7年前に移行され ました。 単純な正規表現レクサーとパーサーを作成して、正規表現を取得し、その解析ツリーを生成しました。この解析ツリーから非決定性の有限状態オートマトンを作成することは、基本的な正規表現では比較的簡単です。ただし、後方参照、先読み、および後読みをシミュレートする方法について頭を悩ますことはできません。 私がシミュレートA先読みすることを私は理解紫龍の本で読んだことから、正規表現のどこ一致するものが正規表現の一致が続いている場合に限り、一致している、あなたは非決定性有限を作成/がεに置き換えられる状態オートマトン。同じことをする決定性有限状態オートマトンを作成することは可能ですか?r/sr/sr/srrrsss///εε\varepsilon ネガティブな先読みと後読みのシミュレーションはどうですか?これを行う方法を詳細に説明しているリソースにリンクしていただければ幸いです。

3
同等のDFAが最大サイズになるためのNFAの条件は何ですか?
DFAは表現力の点でNFAと同等であることがわかっています。NFAをDFAに変換するための既知のアルゴリズムもあります(残念ながら、そのアルゴリズムの発明者を知っています)。最悪の場合、NFAが状態だった場合、状態になります。2S2S2^SSSS 私の質問は、最悪のシナリオを決定するものは何ですか? あいまいな場合のアルゴリズムの転写を次に示します。 レッツ NFAなります。DFAしますA=(Q,Σ,δ,q0,F)A=(Q,Σ,δ,q0,F)A = (Q,\Sigma,\delta,q_0,F)A′=(Q′,Σ,δ′,q′0,F′)A′=(Q′,Σ,δ′,q0′,F′)A' = (Q',\Sigma,\delta',q'_0,F') Q′=P(Q)Q′=P(Q)Q' = \mathcal{P}(Q)、 F′={S∈Q′|F∩S≠∅}F′={S∈Q′|F∩S≠∅}F' = \{S \in Q' | F \cap S \neq \emptyset \}、 、及びδ′(S,a)=⋃s∈S(δ(s,a)∪δ^(s,ε))δ′(S,a)=⋃s∈S(δ(s,a)∪δ^(s,ε))\delta'(S,a) =\bigcup_{s \in S} (\delta(s,a) \cup \hat \delta(s,\varepsilon)) 、q′0={q0}∪δ^(q0,ε)q0′={q0}∪δ^(q0,ε)q'_0 = \{q_0\} \cup \hat \delta(q_0, \varepsilon) ここで、は拡張遷移関数です。δ^δ^\hat\deltaAAA

1
入力文字列の長さの帰納法を使用して証明を書くにはどうすればよいですか?
私のコンピューティング理論コースでは、多くの問題は、入力文字列の長さの帰納法を使用して、有限オートマトンに関するステートメントを証明することを伴います。私は数学的帰納法を理解していますが、文字列が出てくると、本当につまずきます。誰かがそのような証拠を段階的に作成するプロセスを経てくれたら本当に感謝しています。 問題の例は次のとおりです(Hopcroft and Ullman 3rd Editionの演習2.2.10): 次の遷移表を持つDFAを検討してください。 0 1 ________ -> A | AB * B | BA このDFAで受け入れられている言語を非公式に記述し、入力文字列の長さの帰納法により、記述が正しいことを証明します。 これは本の中で答えられた問題なので、宿題をする人を探していません。誰かが私にそれをまっすぐに説明してくれるだけです。 本の答え:(ここ から引用) オートマトンは、1の数が偶数(状態A)か奇数(状態B)かを判断し、後者の場合は受け入れます。| w |の簡単な帰納法です。wが1の偶数である場合にのみ、dh(A、w)= Aであることを示します。根拠:| w | =0。その後、空の文字列には必ず1の偶数、つまりゼロの1があり、δ-hat(A、w)= Aになります。 帰納法:wより短い文字列のステートメントを想定します。次に、w = za、ここでaは0または1です。 ケース1: a =0。wの偶数が1の場合、zも同じです。帰納的仮説により、δ-hat(A、z)=A。DFAの遷移はδ-hat(A、w)= Aを示します。wが1の奇数である場合、zも同様です。帰納的仮説、δ-hat(A、z)= B、およびDFAの遷移により、δ-hat(A、w)= Bがわかります。したがって、この場合、δ-hat(A、w)= wが1の偶数である場合に限ります。 ケース2: a =1。wの偶数が1の場合、zの奇数は1です。帰納的仮説により、δ-hat(A、z)=B。DFAの遷移はδ-hat(A、w)= Aを示します。wの奇数が1の場合、zの偶数は1の。帰納的仮説、δ-hat(A、z)= A、およびDFAの遷移により、δ-hat(A、w)= Bがわかります。したがって、この場合もδ-hat(A、w )= wが1の偶数である場合にのみ。 を帰納法で証明する方法を理解しています。私は、これが文字列の構築とどのように機能するのか混乱しています。太字の部分に混乱しています。彼らがどのように思い付いたのか、どのように受け入れられたものを実際に証明したのか、それがどのように帰納的であるのかがわかりません。∑ni = …

3
NFAのDFAが指数関数的な状態を持つことができることを証明するにはどうすればよいですか?
この質問は、コンピューターサイエンススタック交換で回答できるため、理論的コンピューターサイエンススタック交換から移行されました。 7年前に移行され ました。 すべての非決定性有限オートマトンは、同等の決定性有限オートマトンに変換できます。ただし、確定的有限オートマトンでは、状態からポイントするシンボルごとに1つの矢印しか使用できません。したがって、その状態はNFAの状態のパワーセットのメンバーである必要があります。これは、DFAの状態の数がNFAの状態の数に関して指数関数的にスケーリングできることを示しているようです。しかし、私は実際にこれをどのように証明するのか疑問に思っていました。

3
この言語は、ツインプライムを使用して定義されていますか?
させる L = { an∣ ∃P ≥ n個 p、p + 2 は素数} です。 L={an∣∃p≥n p, p+2 are prime}.\qquad L = \{a^n \mid \exists_{p \geq n}\ p\,,\ p+2 \text{ are prime}\}. ある、通常の?LLL この質問は一見不審に見えましたが、それは双子の素数予想と関係していることに気付きました。私の問題は、推測がまだ解決されていないということです。そのため、言語が規則的であると判断する方法はわかりません。




2
有限オートマトンの修正版で受け入れられる言語
決定論的有限オートマトン(DFA)は、すべての正規言語のみを受け入れることができる状態マシンモデルです。DFAは、各状態が入力アルファベットのすべての要素に対して何らかの遷移を提供するように定義できます(通常は定義されます)。つまり、遷移関数は(合計)関数でなければなりません。δ:Q×Σ→Qδ:Q×Σ→Q\delta : Q \times \Sigma \rightarrow Q 二重決定論的有限オートマトン(DDFA)と呼ぶものを想像してください。DFAと同様に定義されますが、2つの例外があります。1つ目は、可能な入力シンボルごとに1つの状態から別の状態に移行する代わりに、2つの異なる状態に移行する必要があることです。次に、文字列を受け入れるために、すべての潜在的なパスが次の条件のいずれかを満たす必要があります。 DDFAを通るすべての潜在的なパスは、受け入れ状態になります(これをタイプ1 DDFAと呼びます)。 DDFAを通るすべての潜在的なパスは、同じ受け入れ状態になります(これをタイプ2 DDFAと呼びます)。 今私の質問のために: タイプ1およびタイプ2 DDFAはどの言語を受け入れますか?具体的には、、L(DDFA)= L(DFA)、またはL(DDFA)\ subsetneq L(DFA)の場合ですか?その場合、L(DDFA)\ NEQのL(DFA) 、の簡単な説明があり、L(DDFA)は?L(DFA)⊊L(DDFA)L(DFA)⊊L(DDFA)L(DFA) \subsetneq L(DDFA)L(DDFA)=L(DFA)L(DDFA)=L(DFA)L(DDFA) = L(DFA)L (D D F A )≠ L (D F A )L (D D F A )L(DDFA)⊊L(DFA)L(DDFA)⊊L(DFA)L(DDFA) \subsetneq L(DFA)L(DDFA)≠L(DFA)L(DDFA)≠L(DFA)L(DDFA) \neq L(DFA)L(DDFA)L(DDFA)L(DDFA) あまり複雑でない場合は、証明(または少なくともある程度は肉付きのスケッチ)を歓迎します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.