定義
定義1:Sを単語のセットとします。単語u 0、… 、u n、…、およびv 1、… 、v n、…が存在する場合、Sは適切に無限の接頭辞なし(この回答の目的のために名前を作成)であると言います。u0,…,un,…v1,…,vn,…
それぞれについてn≥1、unとvn非空であり、異なる文字で始まります。
S={u0v1,…,u0…unvn+1,…}。
直観は、Sの単語がパスのラベルとまったく同じになるように、次の形状の無限の根付きツリー(■
ルート、▲
葉、•
残りの内部ノード)にこれらのすべての単語を配置できることです。ルートからリーフへ:S
u₀ u₁ u₂
■-----•-----•-----•⋅⋅⋅
| | |
| v₁ | v₂ | v₃
| | |
▲ ▲ ▲
命題1.1:プレフィックスなしの素敵な無限集合はプレフィックスなしです。
命題1.1の証明:u0…unvn+1がu0…umvm+1厳密な接頭辞であると仮定します。次の2つの場合があります。
命題1.2:接頭辞のない素敵な無限集合は無限です。
命題1.2の証明:証明1.1では、n≠m場合、u0…unvn+1およびu0…umvm+1は接頭辞の順序で比較できないことを示しました。したがって、それらは等しくありません。
主な証拠
命題2:プレフィックスなしの無限セットには、プレフィックスなしの素敵なセットが含まれています。
命題3:言語に適切な無限プレフィックスフリーセットが含まれる場合に限り、言語には無限プレフィックスフリーセットが含まれます。
以下の証明。
命題3の証明:⇒命題2による⇐命題1.1および1.2による。
命題4:正規言語のうまくプレフィックスフリーサブセットのセット(無限ワードとして符号化u0¯¯¯¯¯v1ˆu1¯¯¯¯¯v2ˆu2¯¯¯¯¯…)であり、ω -regular(およびビュッヒのサイズそれを認識するオートマトンは、通常の言語を認識するNFAのサイズの多項式です)。
以下の証明。
定理5:NFAによって記述された通常の言語に接頭辞のないサブセットが無限に含まれるかどうかの決定は、NFAのサイズの時間多項式で行うことができます。
定理5の証明:命題3によって、無限に接頭辞のないサブセットが含まれているかどうかをテストするだけで十分です。これは、命題4で与えられるBüchiオートマトンを構築し、その非空言語(Büchiオートマトンのサイズで時間的に線形に実行できます)。
命題2の証明
補題2.1:Sが接頭辞なしの集合である場合、w−1Sも同様です(あらゆる単語w)。
証明2.1:定義による。
補題2.2:Sを単語の無限の集合とする。してみましょうw:=lcp(Sn)内のすべての単語に最長プレフィックス共通であるS。Sとw−1S基数は同じです。
証明2.2:f (x )= w xによりf:w−1S→S定義する。これは、ウェルの定義によって定義されるW - 1つの Sの定義によって単射Fとの定義により全射W。f(x)=wxw−1Sfw
命題2の証明:我々は構築unとvnの誘導によってnの誘導仮説と、Hn以下の部品で構成さ:
(P1)すべてについてk∈{1,…,n}、u0…uk−1vk∈S。
(P2)すべてについてk∈{1,…,n}、ukとvk非空であり、異なる文字で始まります。
(P3) Sn:=(u0…un)−1Sは無限です。
(P4)Snすべての単語に共通する空でない接頭辞はありません。言い換えれば、何の文字がありませんように S N ⊆ Σ *が。aSn⊆aΣ∗
備考2.3:(P 4)なしでHnを検証するシーケンスがある場合、u nを変更して(P 4)も満たすようにすることができます。実際、u nをu n lcp (S n)に置き換えるだけで十分です。(P 1)は影響を受けません。(P 2)は簡単です。(P 4)は建設によるものです。(P 3)(P4)un(P4)ununlcp(Sn)(P1)(P2)(P4)(P3) 補題3です。
n帰納法によりシーケンスを構築します。
初期化:H0は、u0:=lcp(S)をとることによって真になります(つまり、u0:=εをとって、注釈3.1を適用します)。
誘導ステップは:私たちは言葉があるとしu1,…,unとv1,…,vn、その結果Hnのためのいくつかn。私たちは、構築しますun+1とvn+1ようにHn+1。
以来、Sn無限大と接頭辞を含まない(補題1)、それが含まれていないεようにSn=⨆a∈Σ(Sn∩aΣ∗)。以来、Sn無限大であり、文字が存在するように、S N ∩ Σ *は無限であるが。(P 4)、文字あり、Bは異なるようにS N ∩ Bは、ΣaSn∩aΣ∗(P4)baSn∩bΣ∗は空ではありません。選んvn+1∈Sn∩bΣ∗。服用un+1であることを満足する(P 1)、(P 2)及び(P 3)我々が取得する発言3.1を適用するように(P 4): U N + 1:= LCP (- 1 S Na(P1)(P2)(P3)(P4)un+1:=alcp(a−1Sn)。
(P1) u1…unvn+1∈u1…un(Sn∩bΣ∗)⊆S。
(P2)un+1およびvn+1定義による。
(P3) a−1Snはa定義により無限であるため、Sn+1は補題3により無限になります。
(P4)un+1定義による。
命題4の証明
命題4の証明:A=(Q,→,Δ,q0,F) NFAとする。
u0v1u0u1vnun
マルチヘッドオートマトンの方が簡単だと言われましたが、形式にあまり詳しくないので、ブッチオートマトン(ヘッドが1つしかない)を使用して説明します。
Σ′:=Σ¯¯¯¯⊔Σˆukvk
Q′:=Q×({⊥}⊔(Q×Σ))
(q,⊥)un
(q,(p,a))unpvn+1apun+1a
q′0:=(q0,⊥)u0
F′F×Q×Σ
→′
unq→aq′(q,⊥)→′a¯¯¯(q′,⊥)
unvn+1q→aq′(q,⊥)→′aˆ(q′,(q,a))
vnq→aq′(q,(p,a))→′aˆ(q′,(p,a))
vnunp→ap′pba(q,(p,b))→′a¯¯¯(p′,⊥)
u0¯¯¯¯¯v1ˆu1¯¯¯¯¯v2ˆ…un¯¯¯¯¯vn+1ˆA′n≥1unvnn≥0u0…unvn+1∈L(A)
補題4.1の証明:読者に任せてください。