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

抽象機械、文法、構文解析、文法推論、トランスデューサー、および有限状態技法を含むオートマトン理論

11
有限オートマトンを研究した後に達成することになっている啓発とは何ですか?
私は計算理論を楽しみのために改訂してきましたが、この質問はしばらくの間私に悩まされてきました(学部生でオートマタ理論を学んだとき、それを考えたことはありませんでした)。それでは、「なぜ」決定論的および非決定論的有限オートマトン(DFA / NFA)を正確に研究するのでしょうか?だから、独り言の後、私が思いついたいくつかの答えがありますが、それでも「aha」の瞬間への全体的な貢献を見ることはできません: 彼らが何であるかを研究するために、すなわち制限 どうして? それらは理論計算の基本モデルであり、他のより有能な計算モデルの基礎を築くためです。 それらを「基本」にするものは何ですか?ストレージと状態の遷移が1ビットしかないのですか? さて、それで何?このすべてが計算可能性の質問に答えるためにどのように貢献しますか?チューリングマシンはこれを非常によく理解しているようで、PDA、DFA / NFA /正規表現などの計算の「より少ない」モデルがあります。しかし、FAがわからない場合は、FAに何が欠けているのでしょうか。 だから私はある程度「わかった」が、この質問に自分で答えることはできないのだろうか?「なぜD / N-FAを勉強するのか」をどのように説明しますか?彼らが答えようとしている質問は何ですか?それはどのように役立ち、なぜオートマタ理論で最初に教えられるのですか? PS:さまざまな辞書式アプリケーションと、そのように実装できるパターンマッチャーを知っています。ただし、実際に何に使用できるかを知りたくはありませんが、計算理論の研究の頂点にある使用/発明/設計の理由は何でしたか。歴史的に言えば、これで何が始まったのか、そして「aha」の理解は何につながるのでしょうか?オートマタ理論の勉強を始めたばかりのCS学生に彼らの重要性を説明する場合、どうしましたか?

5
チョムスキー階層は古くなっていますか?
Chomsky(–Schützenberger)階層は、理論的なコンピューターサイエンスの教科書で使用されていますが、完全なComplexity Zoo Diagramと比較して、明らかに形式言語(REG、CFL、CSL、RE)のごく一部しかカバーしていません。階層は現在の研究でもう役割を果たしていますか?私はここcstheory.stackexchangeでチョムスキーに少しだけの参照を見つけ、中に複雑動物園の名前チョムスキーとSchützenbergerは一切言及されていません。 現在の研究は、正式な文法以外の記述の他の手段に焦点を合わせていますか?私は、表現力の異なる形式言語を記述する実用的な方法を探していましたが、コンテキストセンシティブ言語(GCSL)と目に見えるプッシュダウン言語(VPL)の両方に出会いました。Chomsky階層を更新してそれらを含めるべきではありませんか?または、複雑なクラスの完全なセットから特定の階層を選択する必要はありませんか?私が理解している限り、チョムスキー階層のギャップに収まる言語のみを選択しようとしました。 REG(= Chomsky 3)⊊VPL⊊DCFL⊊CFL(= Chomsky 2)⊊GCSL⊊CSL(= Chomsky 1)⊊R⊊RE 自然言語処理には実用的な関連性があるように見えますが、「マイルドな文脈依存言語」と「インデックス付き言語」(CFLとCSLの間)がどこに収まるのかはまだわかりません(しかし、実用的な関連性はあまり面白くないです)理論的研究;-)。さらに、GCSL⊊P⊂NP⊂PSPACEおよびCSL⊊PSPACE⊊Rに言及して、有名なクラスPおよびNPとの関係を示すことができます。 私はGCSLとVPLで見つけました: ロバートマクノートン:チョムスキー階層への挿入?で:宝石は永遠に、Arto Salomaaの名誉における理論的コンピューターサイエンスへの貢献。S. 204-212、1999 http://en.wikipedia.org/wiki/Nested_word#References(VPL) また、VPL、DCLF、GCSL、およびインデックス化された文法も扱っている正式な文法に関する最新の教科書を知っていれば幸いです。実用的なアプリケーションへのポインタが望ましいです。

10
実際のコンピューターの状態の数は限られているので、チューリングマシンの実際のコンピューターとの関連性はどうですか?
実際のコンピューターのメモリは限られており、状態の数は限られています。したがって、それらは本質的に有限オートマトンです。理論的なコンピューター科学者がコンピューターの研究にチューリングマシン(および他の同等のモデル)を使用するのはなぜですか?実際のコンピューターに関して、これらの非常に強力なモデルを研究するポイントは何ですか?有限オートマトンモデルでは不十分なのはなぜですか?

9
非決定性とランダム性の違いは何ですか?
最近、私はこれを聞いた- 「非決定論的マシンは確率論的マシンと同じではありません。大雑把に言えば、非決定論的マシンは遷移の確率が不明な確率論的マシンです」。 私はポイントを得るかのように感じますが、私は本当にそうではありません。誰かが私にこれを説明できますか(マシンの文脈で、または一般的に)? 編集1: 明確にするために、引用は有限オートマトンのコンテキストで行われましたが、他の人が答えたように、この質問はチューリングマシンにとっても意味があります。 また、「...その後、セットからオブジェクトxを非決定的に選択します」という人々の声が聞こえます。以前は「ランダムに」という意味だと思っていました。したがって、混乱。

14
オートマトン理論はどれほど実用的ですか?
理論的なコンピューターサイエンスに関連するトピックには、常に応用方法があります。しかし、教科書や学部課程では、通常、オートマトン理論が重要なトピックである理由と、実際に応用できるかどうかを説明していません。したがって、学部生はオートマトン理論の重要性を理解するのに苦労し、もはや実用的ではないと考えるかもしれません。 オートマトン理論は実際にはまだ有用ですか? 学部のCSカリキュラムの一部であるべきですか?

6
正規表現は
コンピュータサイエンスのバックグラウンドを持つ人でさえ、正規表現とは何かを尋ねると、その答えは、有限状態オートマトンの範囲内にあるという制約を超える可能性があります。 たとえば、「正規表現」 /^1?$|^(11+?)\1+$/ 著名なPerlパーソナリティAbigail(および2002年以降のPerlのテストスイートの一部)によって作成された複合単項数のみを受け入れるマシンについて説明していますが、Peter Linzの第3版の正式な言語とオートマトンの演習4.5(b)では読者が使用しますそれを証明するポンピング補題 L = { an:n i s n o t a p r i m e n u m b e r } L={an:n is not a prime number}\mathcal{L} = \left\{ a^n : n\ \mathrm{is\ not\ a\ prime\ number} \right\} 通常の言語ではありません。 区別が重要なコンテキストでは、厳密に強力な表現を何と呼ぶべきでしょうか?


1
Eilenbergの非有理オートマトンと言語の合理的な階層—それは今どこにありますか?
サミュエル・アイレンバーグは、彼の非常に影響力のある本「オートマタ、言語、機械」(巻A、B)の序文で、「非合理現象の階層(合理的階層と呼ばれる)...合理的なセットはこの階層の最下部にあります。上に移動すると、「代数現象」に遭遇し、「チョムスキーの文脈自由文法と文脈自由言語、およびいくつかの関連トピック」につながります。 しかし、EilenbergはボリュームCを発行しませんでした。最初のいくつかの章(http://www-igm.univ-mlv.fr/~berstel/EilenbergVolumeC.html)には、スクラッチアウト、疑問符、サイドノート、ギャップ。しかし、それらは、文法に対する有名なべき級数アプローチの始まりをはるかに超えて明らかにしません。 だから、私の実際の質問-エイレンバーグが念頭に置いていたものを再構築するために、同じ線に沿って仕事を知っている人はいますか?そうでない場合、どの資料が彼のアイデアに最も近いと思われますか? サイトhttp://x-machines.net/は、Eilenbergの主要な革新の1つであるx-machinesについてですが、Eilenbergが約束したように理論​​をさらに発展させるのではなく、主にx-machinesのアプリケーションを扱っています。 また、ボリュームCで大きな進歩を遂げる前にアイレンバーグが停止した理由を誰もが知っていますか?これは70年代後半で、1998年まで生きましたが、B巻の後に数学を発表したようには見えませんでした。 (math.stackexchangeで尋ねられた同じ質問-https : //math.stackexchange.com/questions/105091/eilenbergs-rational-hiererchy-of-nonrational-automata-languages- これがクロスポストと見なされる場合は謝罪します。)

2
Is {
言語は{ }コンテキストフリーかどうか?aibjck | i≠j,i≠k,j≠kaibjck | i≠j,i≠k,j≠ka^{i}b^{j}c^{k} ~|~ i \neq j, i \neq k, j \neq k 私は、i、j、kの関係について異なる条件でこの質問のほぼすべてのバリエーションに遭遇しましたが、これには遭遇していないことに気付きました。 私の推測では、それはコンテキストフリーではありませんが、証拠はありますか?

4
正規表現を効率的に照合できる「小さな」マシンはありますか?
正規表現は、正規表現に比例するサイズの非決定性有限オートマトン、または潜在的に指数関数的に大きい決定性FAによって認識できることはよく知られています。さらに、文字列sssと正規表現と、NFAは比例してメンバーシップをテストできます、およびDFAは比例してメンバーシップをテストできます。NFAのスローダウンは、本質的にオートマトンが存在する可能性のある状態のセットを追跡する必要があるという事実から生じます。DFAの指数関数的な爆発は、その状態が、 NFA。rrr|s|⋅|r||s|⋅|r||s| \cdot |r||s||s||s| より強力なマシンの使用を許可する場合、正規表現を効率的に(つまり、よりも良い時間で、よりも良いスペースで)認識できますか有限オートマトンよりも (たとえば、プッシュダウンオートマトンまたはカウンターマシンを使用して通常の言語を認識することで簡潔さが向上しますか?)O(|r|⋅|s|)O(|r|⋅|s|)O(|r| \cdot |s|)O(2|r|)O(2|r|)O(2^{|r|})

3
DFAから正規表現に移行する既知のアルゴリズム
DFA から開始し、L (A)= L (r )のような正規表現rを構築する「より良い」(どのような意味で説明する)アルゴリズムがあるのか​​疑問に思っていましたHopcroft and Ullman(1979)による本。そこでは、集合R k i jを使用して、kよりも大きい番号の状態を経由せずに状態q iからq jに DFAを取る文字列のセットを表します。この構造は、明らかに正確で非常に便利ですが、かなり技術的です。AA\mathcal{A}rrrL(A)=L(r)L(A)=L(r)L(\mathcal{A})=L(r)RkijRijkR_{ij}^kqiqiq_iqjqjq_jkkk 私は代数オートマトン理論についてのモノグラフを書いているので、あまりにも多くの技術的詳細で聴衆の注意をそらしたくはありません(少なくとも、表示したい結果とは無関係な詳細では)。完全を期すためのDFAと正規表現の等価性の証明。記録のために、私はGlushkovオートマトンを使用して、正規表現からDFAに移行しています。それは遷移よりも直感的であるように見えました。εε\varepsilon DFAから正規表現に移行することが知られている他のアルゴリズムは何ですか?効率よりも単純さ(この場合は「より良い」)を重視していますが、それは要件ではありません。 よろしくお願いします!

2
与えられた2つの文字列を受け入れるDFAはいくつですか?
整数とアルファベット修正します。定義上のすべての有限状態オートマトンの集合体であることを我々が検討している状態1を開始するとの状態のすべてのDFA(単に接続されていない、最小限の、または非縮退もの)。したがって、。Σ = { 0 、1 } D F A (N )NnnnΣ={0,1}Σ={0,1}\Sigma=\{0,1\}DFA(n)DFA(n)DFA(n)nnn|DFA(n)|=n2n2n|DFA(n)|=n2n2n|DFA(n)| = n^{2n}2^n ここで、2つの文字列を検討しをと両方を受け入れる要素の数として定義します。 K (X 、Y )D F A (N )x,y∈Σ∗x,y∈Σ∗x,y\in\Sigma^*K(x,y)K(x,y)K(x,y)DFA(n)DFA(n)DFA(n) yxxxyyy 質問:計算の複雑さは何ですか?K(x,y)K(x,y)K(x,y) この質問は、機械学習に影響を及ぼします。 編集:この質問に恩恵があるので、私は定式化でもう少し正確であると思います。以下のために、聞かせての集合体である上で定義されたとおり、オートマトン。以下のため、定義でオートマトンの数であることが受け入れるの両方と。質問:は時間で計算できますか?D F A (N )N 2 、N 2 、N X 、Y ∈ { 0 、1 } * K N(X 、Y )D F A (N )n≥1n≥1n\ge1DFA(n)DFA(n)DFA(n)n2n2nn2n2nn^{2n}2^nx,y∈{0,1}∗x,y∈{0,1}∗x,y\in\{0,1\}^*Kn(x,y)Kn(x,y)K_n(x,y)DFA(n)DFA(n)DFA(n) …

2
NFAの普遍性の条件
非決定性有限オートマトンおよび関数ます。さらに、を定義します。A=(Q,Σ,δ,q0,F)A=(Q,Σ,δ,q0,F)A = (Q, \Sigma, \delta, q_0, F)f(n)f(n)f(n)Σ≤k=⋃i≤kΣiΣ≤k=⋃i≤kΣi\Sigma^{\leq k} = \bigcup_{i \leq k} \Sigma^i 次のステートメントを分析してみましょう。 もしは、。Σ≤f(|Q|)⊆L(A)Σ≤f(|Q|)⊆L(A)\Sigma^{\leq f(|Q|)} \subseteq L(A)L(A)=Σ∗L(A)=Σ∗L(A) = \Sigma^* f(n)=2n+1f(n)=2n+1f(n) = 2^n+1場合、それが真であることを示すのは簡単です。したがって、オートマトンが長さまでのすべての単語を生成する場合、生成します。2| Q |+ 12|Q|+12^{|Q|}+1Σ∗Σ∗\Sigma^* しかし、が多項式である場合、それはまだ保持されますか?fff そうでない場合、特定の多項式に対するNFA構築は、stますか?AAApppΣ≤ P (| Q |)⊆ L (A )⊊ Σ∗Σ≤p(|Q|)⊆L(A)⊊Σ∗\Sigma^{\leq p(|Q|)} \subseteq L(A) \subsetneq \Sigma^*

4
停止問題が決定できない非チューリング完全な計算モデルがありますか?
私はそのようなモデルを考えることはできません、おそらく型付きラムダ計算の何らかの形ですか?いくつかの基本的なセルオートマトン? これは、 Wolframの「計算上の等価性の原理」をほぼ反証します。 明らかに単純ではないほとんどすべてのプロセスは、同等の洗練度の計算と見なすことができます

2
文脈依存文法とタイプ
1)静的型付けと正式な文法との関係は、もしあれば、何ですか? 2)特に、線形有界オートマトンは、たとえばC ++またはSMLプログラムが適切に入力されたかどうかをチェックできますか?ネストされたスタックオートマトン? 3)静的型付け規則を正式な文法用語で表現する自然な方法はありますか?

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