タグ付けされた質問 「formal-languages」

形式言語、文法、オートマトン理論に関する質問

2
「決定可能性」と「検証可能性」について説明してください
私は(直感的に)「決定可能性」と「検証可能性」という2つの用語を理解しようとしています。 私はかなりの量の検索を行い、手に入れることができるさまざまなテキストを調べました。しかし、彼らの直感的な理解は、特に2番目のものについては、私から逃れているようです。 見つかった多くの定義の中で、このページにある次の定義は、決定性を明確に説明してくれました。 特定の単語がその言語に属しているかどうかを判別するメソッドが存在する場合、その言語は決定可能と呼ばれます。 ただし、検証可能性についての並列定義は見つかりません。 でSipserによって計算書の理論、私たちは、見つけます P =メンバーシップを すばやく決定できる言語のクラス。 NP =メンバーシップをすばやく確認できる言語のクラス 。 以上を踏まえ、検証可能性を理解したい。 できるだけ多くの例を挙げてください。ある意味、意味を理解しようとしますが、次の例ではまた混乱します。

3
非決定性を導入してDFAを縮小するアルゴリズム?
これは、私が尋ねた別の質問と多少関連していますが、私自身の質問を正当化するのに十分異なると感じています。 特定のクラスの有限言語の補集合の構造を見つけようとしているところです。これらの言語を受け入れる最小限のDFAを取得するのは簡単ですが、これらの言語を受け入れるNFAがどのような構造を持っているか、特に非決定性がオートマトンの状態サイズにどのように役立つか(DFAは指数関数的に大きい)を調べたいと思います。 問題は、メインのNFA削減手法で等価を使用することです。これは、最小限のDFAから始めた場合、削減は生成されません(それは基本的に同じ手法を使用しているためです)。最小ではないDFAから始めると、最小のDFAが吐き出されます。 私が不思議に思っているのは、DFAから開始して、非決定性を導入することでそれをより小さなNFAに圧縮できるアルゴリズムはあるのでしょうか。これを行う「標準的なテクニック」はありますか? プレオーダーの削減が見つかりました。これは有望に見えますが、実装が困難です。私は多くの提案を受け入れています。

1
言語
言語L = { 0 n 1 m ∣ n と m は素数}L={0n1m∣n and m are co-prime} L = \{0^n 1^m \mid n \text{ and } m \text{ are co-prime}\}文脈自由ですか? 2つの数値が素数であるかどうかをPDAが判断するのは複雑すぎるため、コンテキストフリーではないようです。 ポンピングレンマを使用しても無駄になりました。 どんな助けでも喜んでいただければ幸いです。 編集: ポンピングレンマでの失敗した試みの1つを次に示します。 してみましょうNはNN一定です。p > Nとなるような素数pを取ります。そして、単語z = 0 p 1 p + Nを取ります!∈ L。ましょZ = U 、V 、W 、XとYは分解することがZポンピング補題における条件を満たす。ppp>N!p …

2
通常の言語の単語の真ん中の規則性
してみましょう正規言語であること。 言語規則的ですか?L 2 = { Y :∃ X 、Z S 。t 。| x | = | z | N 、D 、X 、Y 、Z ∈ L }LLLL2={y:∃x,z s.t.|x|=|z| and xyz∈L}L2={y:∃x,z s.t.|x|=|z| and xyz∈L}L_2 = \{y : \exists x,z\ \ s.t.|x|=|z|\ and\ xyz \in L \} 私はそれがここの質問と非常に似ていることを知っていますが、問題は、それが通常の言語の単語の単純な部分文字列ではなく、「正確な中間」であるということです。接頭辞と接尾辞の長さを数える必要があります。 したがって、それは規則的ではないと思いますが、それを証明する方法を見つけることができませんでした。を受け入れるようにのNFAを変更する方法も考えられません。L 2LLLL2L2L_2

1
補足がワンカウンターである、厳密に非決定的なワンカウンター言語はありますか?
してみましょう A={L∣Lis one-counter and L¯ is also one-counter}A={L∣Lis one-counter and L¯ is also one-counter}A= \{L \mid L \;\text{is one-counter and \(\bar{L}\) is also one-counter} \} 明らかに、Deterministic one-counter⊆ADeterministic one-counter⊆A\text{Deterministic one-counter} \subseteq A その場合であるA=Deterministic one-counterA=Deterministic one-counter A = \text{Deterministic one-counter}? 文脈自由言語の場合、アナログはそうではないことを知っています。たとえば、P={wwr}P={wwr}P =\{ ww^r\}ます。その後、両方のPPPとP¯P¯\bar{P}文脈自由ですが、PPP確定的ではありません。したがって、AAAは文脈自由言語の(厳密な)サブセットを定義します。 問題は、同じことが当てはまる同様の1カウンターの例を構築できるかどうかです。

3
通常のポンピング補題を使用した証明
2つの質問があります。 次の言語を検討します 言い換えれば、は長さが均一な回文ではありません。この言語は、その補語が規則的でないことを証明することによって、規則的でないことを証明しました。私の質問は、補数を超えて使用せずに、ポンピングレンマを使用してそれを証明する方法です。wL1= { W ∈ { 0 、1 }∗| ∄ U ∈ { 0 、1 }∗:w = u uR} 。L1={w∈{0,1}∗∣∄u∈{0,1}∗:w=uuR}.L_1= \{ w\in \{0,1\}^* \mid \not \exists u\in \{0,1\}^* \colon w= uu^R\}.www してみましょう 等価クラスを使用することで、この言語が規則的でないことを証明しました。ポンプレンマを使用してそれをどのように証明できますか?L2= { W ∈ { 0 、1 }∗∣ wに は、101個の部分文字列と010個の部分文字列の数が同じです} 。L2={w∈{0,1}∗∣w has same number of 101 substrings …

1
が決定可能であっても
自分で計算可能性理論を教科書で教えようとしています。私の本によると、アルファベットの関数A = { a 、b 、c 、d 、e 、f 、g 、h 、i 、j 、k 、l 、m 、n 、o 、p 、q 、r 、s 、t 、u 、v 、w 、xfffは、言語の場合にのみ計算可能ですA = { a 、b 、c 、d、e 、f、g、h 、i 、j 、k 、l 、m 、n 、o 、p 、q、r 、s 、t 、u 、v 、w 、x 、y、z}A={a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}A=\{a, …

2
PDAが文字列を受け入れるかどうかを示すにはどうすればよいですか
PDAが形式文字列を受け入れるかどうかを決定する問題を示す方法 wが| W ∈ { 0 、1 } * }決定不能ですか?{ w !W | W ∈ { 0 、1 }∗}{w!w∣w∈{0,1}∗}\{ w!w \mid w \in \{ 0, 1 \}^*\} 私は、この問題を、2つの文脈自由文法が同じ言語を受け入れるかどうかなど、別の決定不可能な問題に削減しようとしました。ただし、それをサブルーチンとして使用する方法がわかりません。

3
一部の言語のすべての文字列で構成される言語が、別の言語の一部の文字列が通常のものと同じ長さであることを証明する
だから私はこの問題を頭の中で数日間掻き続けてきました。通常の言語とBがある場合、Aのすべての文字列で構成され、その長さがBの一部の文字列と等しい言語Lが通常の言語であることを示します。AAABBBLLLAAABBB 方程式の形で: L={x∈A∣∃y∈B s.t. |x|=|y|}L={x∈A∣∃y∈B s.t. |x|=|y|}L = \{x \in A \mid \exists y \in B \text{ s.t. } |x| = |y| \} 私の最初の考えは、言語とBの両方のDFAを試してみて、2つの状態を相互にマッピングし、うまくいけば、Lが正規であることを証明する新しいDFAを生成できるように1:1の比率を取得することでした。しかし、私はAとBが同じシンボルセット上にある必要はないことに気付きました。 AAABBBLLLAAABBB これを解決する正しい方法は通常の言語のクロージャープロパティを使用することだと思いますが、文字列自体ではなく文字列の「長さ」のプロパティを開始/使用する方法がわかりません。 誰かが私を正しい方向に向けることができますか?

1
新しいドメイン固有のプログラミング言語を正式に説明する
私は社会学習の慣習を表現するためにドメイン固有の言語を実装しようとしています。実装の一部は、言語の正式な記述-その「計算」、記号、および論理式です。 私のアプローチは、文法を記述することによって言語を記述することですが、関係、対話、より理論的なアプローチを必要とする期待やロジックの説明などの概念もあります。 この説明に役立つ例と参考文献(論文、本)をお願いしたいと思います。私はこのタスクに比較的有能に近づいていると感じているので、完全な手持ちを求めているわけではありませんが、この分野の理論家の助けをいただければ幸いです。


1
通常の言語が周期演算子の下で閉じられていることを証明する
私は数日で試験を受けましたが、このタスクを解決するのに問題があります。 してみましょうアルファベットを超える正規言語も。私たちは、運転してい そして今、我々は示すべきであることも定期的です。LLLΣΣ\Sigmacycle(L)={xy∣x,y∈Σ∗ and yx∈L}cycle⁡(L)={xy∣x,y∈Σ∗ and yx∈L}\operatorname{cycle}(L) = \{ xy \mid x,y\in \Sigma^* \text{ and } yx\in L\}cycle(L)cycle⁡(L)\operatorname{cycle}(L) 参照は、DFAを a -NFA withおよび 状態。D=(Q,Σ,δ,q0,F)D=(Q,Σ,δ,q0,F)D=(Q,\Sigma,\delta, q_0, F)L(D)=LL(D)=LL(D) = Lϵϵ\epsilonNNNL(N)=cycle(L)L(N)=cycle⁡(L)L(N) = \operatorname{cycle}(L)2⋅|Q|2+12·|Q|2+12 · |Q|^2 + 1

1
繰り返しのない文字列の数の式は何ですか?
文字列の数を数えたい sss 有限のアルファベット以上 AAA、それは繰り返しを含まず、それによって私は任意の部分文字列を意味します ttt の sss、 1&lt;|t|&lt;|s|1&lt;|t|&lt;|s|1< |t| < |s|、のばらばらのコピーはありません ttt に sss。例として、A={a,b}A={a,b}A=\{a,b\}。その後aaaaaaaaa ある部分文字列のため以来、私はカウントしたい文字列のいずれかaaaaaa、ばらばらのコピーはありません。しかしながら、abababababab そのような繰り返しが含まれています。 誰かがすでに有用な式を見つけている場合は、リンクしてください。それ以外の場合は、誰かの回答を使用する場合、私が書く記事でこの投稿を参照します。 別の例を示します。長い文字列を作成してみましょう{a,b}{a,b}\{a,b\}、繰り返しを含まない: aaa(aにすることはできません) aaab(aまたはb) aaabbb(bに することはできません) aaabbba(bまたはaにする ことはできません)aaaba(aまたはbにすることはできません) ツリーを構築した場合、ノードの数を数えることができますが、式が必要です。 編集: まあ、私たちがこれをビンを選択する問題に変換するかどうか最初に考えたほど難しくはありません。少なくとも1回の繰り返しを持つ長さkの文字列のセットは、デカルト積のすべての順列の和集合であるセットに等しくなります。 A×A×⋯×A(k-4 times)×R×RA×A×⋯×A(k-4 times)×R×RA \times A \times \cdots\times A \text{(k-4 times)} \times R \times R どこ RRR必要な繰り返しです。それが役に立ったかどうかはわかりませんが、プロのように聞こえます:)とにかく、| A |にしましょう ビン、繰り返しになる任意の2つ(同じものであっても)を選択し、次にk−4k−4k-4もっと増やして掛けます(最初の4つはすでに選択されています、参照してください?)。今、私は離散数学からその式を見つける必要があります。

1
min-heap automataが受け入れる言語の補完の下での閉鎖の証明
これは、のフォローアップの質問です、この1。 エキゾチックなステートマシンに関する以前の質問で、アレックステンブリンクとラファエルは、特殊な種類のステートマシン、つまり最小ヒープオートマトンの計算機能について説明しました。彼らは、そのようなマシン()が受け入れる言語のセットが、文脈自由言語のセットのサブセットでもスーパーセットでもないことを示すことができました。その問題の解決に成功し、その問題に明らかに関心があることを踏まえて、私はいくつかのフォローアップの質問を続けます。HALHALHAL 通常の言語はさまざまな操作の下で閉じられることが知られています(ユニオン、インターセクション、補数、差分、連結、クリーネスター、反転などの基本的な操作に制限される場合があります)。プロパティ(これらは、結合、連結、クリーネスター、および反転の下で閉じられます)。 HALは補完の下で閉鎖されていますか?

2
{a ^ n(a + b)^ n | n> 0}確定的CFL?
L = {aん(a + b)ん| n&gt;0}L={aん(a+b)ん|ん&gt;0}L = \{ a^n (a+b)^n | n>0\} 私が読んでいる本はそうですが、第2部がどこから始まるのかわからず、それも同様に始まる可能性があることを考えると、DPDAを使用してこれをどのように受け入れることができますか?最初の部分()を読んだ後のように、それが最初の部分の終わりであること、または2番目の部分が始まることを考慮しないことをどのように確認できaんaんa^nA ?a?a? これは確定的ですか?

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