すべての位置で異なる長さ 2つの単語の連結を受け入れる最小のNFA
ましょうk∈Nk∈Nk\in \mathbb N 私は、インデックスごとに異なる長さkの 2つの単語の連結言語用の小さなNFAビルドを探していkkkます。つまり、Lk={u⋅v∈Σ∗:|u|=|v|=k∧∀i,ui≠vi}Lk={u⋅v∈Σ∗:|u|=|v|=k∧∀i,ui≠vi}L_k=\{u\cdot v \in \Sigma^* : |u|=|v|=k\wedge \forall i, u_i\neq v_i\} kkkが固定されているため、|Lk|=(|Σ|⋅(|Σ|−1))k|Lk|=(|Σ|⋅(|Σ|−1))k|L_k|=(|\Sigma|\cdot(|\Sigma|-1))^kであり、有限言語として規則的であることに注意してください。 % 言語の自明なDFAには | \ Sigma |が含まれています \ k +1の状態を選択し、最初のk文字の間に見た文字を「記憶」しますが、k = o(| \ Sigma |)の場合、大幅に小さいNFAを作成できます。kkk(|Σ|k)(|Σ|k)|\Sigma| \choose k+1+1+1kkkk=o(|Σ|)k=o(|Σ|)k=o(|\Sigma|) % そのための「単純な」NFAのサイズはO∗(22k)O∗(22k)O^*(2^{2k})(より正確には、O(k2log|Σ|22k+O(log2k))O(k2log|Σ|22k+O(log2k))O(k^2 \log |\Sigma| 2^{2k+O(\log^2 k)})): % (|Σ|,2k)(|Σ|,2k)(|\Sigma|,2k) -universal set(すなわち、一連のベクトル\ mathcal V \ subseteq \ {0,1 \} ^ {| …