言語ましょう規則的で。
の因数分解は、単語の集合の最大ペアです。
- 、
| 。
各ペアの場合に最大であるとのいずれかで又は。
どのペアが最大であるかを見つける簡単な手順はありますか?
例:
してみましょう。集合F = { u 、v 、w }が計算されます:
ここで、。
もう一つの例:
及び L = Σは* Σ 因子分解は、セット Fを= { Q 、R 、S 、T }と
言語ましょう規則的で。
の因数分解は、単語の集合の最大ペアです。
| 。
各ペアの場合に最大であるとのいずれかで又は。
どのペアが最大であるかを見つける簡単な手順はありますか?
例:
してみましょう。集合F = { u 、v 、w }が計算されます:
ここで、。
もう一つの例:
及び L = Σは* Σ 因子分解は、セット Fを= { Q 、R 、S 、T }と
回答:
質問へのコメントで示唆されているように、少なくとも自分で問題を理解している限り、(残念ながら部分的に)質問に答えようとします(これは間違いを見つける可能性が高いことを意味します。以下のポイントのいずれかをより簡単にまたは明確に説明する方法、それに応じて回答を自由に編集してください):
まず、言語の因数分解を計算したい場合、実際に言語の普遍的なオートマトンを計算する必要がないことに注意する必要があります。
私のコメント ¹で言及した論文から、通常の言語の左と右の要素には1-1の対応があります。つまり、言語の左の要素が与えられると、対応する右の要素は一意に決定されます。より正確には、次のものがあります。
してみましょうの因数分解もL。次いで、 Y = ⋂ X ∈ X X - 1、L 、X = ⋂ Y ∈ Y L Y - 1、
通常の言語の場合、左右の商の有限セットのみが存在するため、言語の左右の商の計算に問題が減り、それらの安定閉包、つまり最小の交差の下で閉じられる商のスーパーセット。これらは正確に正しい因子と左の因子であり、通常どのペアがLのサブセットであるかを簡単に確認できます。
上記の点を説明するために、質問の最初の例を考えてみてください(この論文でも間違っていると思います)。
してみましょう。さて、左商LがセットされているX - 1 Lのためのx ∈ Σ *、これらの言葉で、UでΣ *の接頭辞を付けることができ、X、すなわちX のu ∈ L。いつy − 1 L = x −異なるため、X、Y?これは、xの場合にのみ当てはまりますそして内の単語に拡張することができるL、正確に同じサフィックスを持ちます。つまり、より馴染みのある用語にまとめると、それらはNerodeと同等であり、Nerodeクラスの単語に追加するために必要な接尾辞は、それぞれの左商です。
以下のために、我々は我々のNerodeさん-等価クラスがあることがわかり
これらは、次のセットで拡張できます(つまり、これらはそれぞれのクラスの単語の左商です)。
したがって、分解セットは(P 1、S 1)、(P 2、S 2)、(P 3、S 3)の形式です。
さて、左因子に対して、この答えの始まりの方程式を使用します。
。
以下のために、この利回りのL ∪ Σ *のために、P 2我々が得るΣを*とするためにP 3、我々は入手Lを。これは、インスペクション(形式的な証明を述べるには遅すぎるための最も一般的な言い訳)または右商を明示的に計算することで確認できます(完全にではありませんが、左商の計算にかなり類似しています)。したがって、因子分解はF L = uで。
要約すると(簡単な手順を求めていたように):