通常の言語の単語の真ん中の規則性


8

してみましょう正規言語であること。 言語規則的ですか?L 2 = { Y X Z S t | x | = | z | N 、D 、X 、Y 、Z L }L
L2={y:x,z  s.t.|x|=|z| and xyzL}

私はそれがここ質問と非常に似ていることを知っていますが、問題は、それが通常の言語の単語の単純な部分文字列ではなく、「正確な中間」であるということです。接頭辞と接尾辞の長さを数える必要があります。

したがって、それは規則的ではないと思いますが、それを証明する方法を見つけることができませんでした。を受け入れるようにのNFAを変更する方法も考えられません。L 2LL2


「正確な中間」はを示唆しているようです ?ちなみに、それも定期的に!|x|=|y|=|z|
Hendrik Jan

私たちの参照質問からのものを試しましたか?
ラファエル

回答:


6

ヒント: DFAを検討してください。すべてのについて、聞かせて状態の集合が存在するように、いくつかの長さの単語に初期状態からDFAをリード。LET状態の集合であるが存在するように、いくつかの長さの単語からDFAを導く受け入れる状態には。最後に、任意の2つの状態について、 DFAをから導く(通常の)単語のセットとします。我々は持っています N 0 AのN S N S B N T N T S T R S T S T L 2 = N 0 S A N T B N R 、S Ts tLn0AnsnsBntnts,tRs,tst

L2=n0sAntBnRs,t.
可能性は有限であるので、共用体は実際には有限であり、規則的です。s,t

3

LETためのDFAである。一般性を失うことなく、と仮定します。次のようにして ε-をします。D=(Q,Σ,δ,q0,F)LqS,qFQN=(Q{qS,qF},Σ,Δ,qS,{qF})L2

各経路検索から任意に。そのようなパスそれぞれに対して、パスを for(つまり、パスのすべての「中間部分」を構成します)。これは効果的に行うことができます。これらすべてのパスを組み合わせてを構築します。Dq0fFpk:q0=qk,0αk,1qk,1αk,2αk,iqk,iαk,i+1αk,nkqk,nkpk(i):qk,iαk,i+1qk,i+1αk,i+2αk,nkiqk,nki0ink2Δ

  • (qS,ε,qk,i)上記のすべてのi
  • (qk,nki,ε,qF)上記のすべてのi

L(N)は構造上規則的です。

あるという証明スケッチ:ます。構築により、は少なくとも上記のパスいずれかと一致する必要があることがわかります。このパスはそれぞれパスに属し、パスには追加のプレフィックスと長さサフィックスが含まれています。この接頭辞によって記述される単語としてを選択し、接尾辞によって記述される選択します。私たちは、それを見つけるして、。同様の推論により、各内のパスが見つかります。ましょうの長さと wはL N W P I K D 、I 、X 、Y 、X 、W 、Y L | x | = | y | = I W L 2 N I X 、Y 、W 、P I K K WL(N)=L2wL(N)wpk(i)DixyxwyL|x|=|y|=iwL2Nixy属する。、いくつかの形式。wpk(i)kw

したがって、です。L(N)=L2


パスは無限にあるので、「これは効果的に実行できる」という説明には、説明が必要なようです。そのプロパティを使用する必要は厳密にはないことに注意してください。(私にとって)同じ引数の「非有効」バージョンであるYuvalの回答を参照してください。
Hendrik Jan

あなたが正しいです。ループを2回考慮する必要はありません。次の重要な点は、に属するいくつかのがあるようです。パスを組み合わせると、新しいパスが出現する可能性があります。私は証拠を徹底的に検討していませんが、これらの問題はすべて解決できると思います。 wpk(i)w
ipsec 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.