Đây là bản tóm tắt của bài viết về Số lượng ngôn ngữ riêng biệt được chấp nhận bởi Finite Automata với n States . Bài viết cung cấp tương đối dễ dàng, nhưng xa các giới hạn chặt chẽ, thấp hơn và cao hơn về số lượng ngôn ngữ riêng biệt được NFA chấp nhận. Thảo luận của họ về số lượng DFA khác biệt là rất sâu sắc, vì vậy tôi cũng sẽ bao gồm phần đó.
Bài viết bắt đầu với một tiệm cận khá nghiêm ngặt đối với số lượng ngôn ngữ riêng biệt được chấp nhận bởi một DFA với trạng thái trên một bảng chữ cái đơn nhất. Này được thực hiện bằng cách quan sát dưới những điều kiện nào một cho n -state unary DFA là tối thiểu. Trong những trường hợp như vậy, việc mô tả máy tự động có thể được ánh xạ (về mặt sinh học) thành một từ nguyên thủy , và việc liệt kê các từ đó được biết đến và được thực hiện với sự trợ giúp của hàm Möbius . Sử dụng kết quả đó, giới hạn cho các bảng chữ cái không đơn nhất, cả trong DFA và trong trường hợp NFA, đều được chứng minh.nn
Chúng ta hãy đi vào chi tiết hơn. Đối với bảng chữ cái -letter, xác định
f k ( n )k
Lưu ý rằnggk(n)=Σ n i = 1 fk(i). Chúng tôi bắt đầu vớif1(k)vàg1(k).
fk( n )gk( n )Gk( n )= số lượng DFA tối thiểu không đồng phân cặp với n trạng thái= số lượng ngôn ngữ riêng biệt được DFA chấp nhận với n trạng thái= số lượng ngôn ngữ riêng biệt được NFA chấp nhận với n trạng thái
gk( N ) = Σni = 1fk( tôi )f1( k )g1( k )
Bảng liệt kê của DFA
Một unary DFA với trạng thái q 0 , ... , q n - 1 là tối thiểu khi và chỉ khiM= ( Q , { một } , δ, q0, F)q0, ... , qn - 1
- Nó được kết nối. Do đó, sau khi đổi tên, sơ đồ chuyển tiếp bao gồm một vòng lặp và đuôi, tức là và δ ( q n - 1 , a ) = q j cho một số j ≤ n - 1 .δ( qTôi,a)=qi+1δ(qn−1,a)=qjj≤n−1
- Các vòng lặp là tối thiểu.
- Nếu , sau đó, hoặc q j - 1 ∈ F và q n - 1 ∉ F hoặc q j - 1 ∉ F và q n - 1 ∈ F .j≠0qj−1∈Fqn−1∉Fqj−1∉Fqn−1∈F
Vòng lặp là tối thiểu khi và chỉ khi từ một j ⋯ một n - 1 được xác định bởi
một i = { 1qj,…,qn−1aj⋯an−1
lànguyên thủy, có nghĩa là nó không thể được viết dưới dạngxk
đối với một số chữxvà một số nguyênk≥2.
Sốψk(n)của các từ nguyên thủy có độ dàintrênbảng chữ cáikđược biết, xem ví dụ: Lothaire,Combinatorics on Words. Chúng tôi có
ψk(n)=Σd | nμ(d)kn/
mộtTôi= { 1nếu q∈ F,0nếu q∉ F
xkxk≥2ψk(n)nk
trong đó
μ(n)là
hàm Mobius. Với sự giúp đỡ của
ψ k (n), bài báo đã chứng minh các công thức chính xác cho
f 1 (n)và
g 1 (n)và cho thấy rằng không có triệu chứng (Định lý 5 và Hệ quả 6),
g 1 ( n )ψk(n)=∑d|nμ(d)kn/d
μ(n)ψk(n)f1(n)g1(n)g1(n)f1(n)=2n(n−α+O(n2−n/2))=2n−1(n+1−α+O(n2−n/2)).
Bảng liệt kê của DFA
Bước tiếp theo là giới hạn dưới cho . Định lý 7 tiểu bang mà
e k ( n ) ≥ f 1 ( n ) n ( k - 1 ) n ~ n 2 n - 1 n ( k - 1 ) n .
Đối với một bộ Δ ⊂ Σ của một automaton M , xác định M Δ như những hạn chế của M để Δfk(n)
fk(n)≥f1(n)n(k−1)n∼n2n−1n(k−1)n.
Δ⊂ΣMMΔMΔ .
Các công trình bằng chứng bằng cách xem xét các thiết lập
của DFA của
M qua
k -letter bảng chữ cái
{ 0 , 1 , ... , k - 1 } xác định bởi
Sk,nMk{ 0 , 1 , ... , k - 1 }
- Để là một trong những DFA đơn nhất khác nhau của f 1 ( n ) trên n trạng thái vàM{ 0 }f1( n )n
- Chọn bất kỳ chức năng h i : Q → Q cho 1 ≤ i < k và xác định δ ( q , i ) = h i ( q ) cho 1 ≤ i < k và q ∈ Q .k - 1hTôi: Q → Q1 < i < kδ( q, tôi ) = hTôi( q)1 < i < kq∈ Q
Quan sát sau đó là chứa f 1 ( n ) n ( k - 1 ) n ngôn ngữ khác nhau và tối thiểu.Sn , kf1( n ) n( k - 1 ) n
Bảng liệt kê của NFA
G1( n )2nε , một , ... , mộtn - 1n
G1( n ) ≤ ( c1nđăng nhậpn)n
k ≥ 2
n 2( k - 1 ) n2≤ Gk( N ) ≤ ( 2 n - 1 ) 2k n2+ 1.
( q, a )Qδ( q, a )2k n2{1,…,k}k∈[0..n−1]M=(Q,Σ,δ,q0,F)Σ={0,1,…,k−1}Q={q0,…,qn−1}δδ(qi,0)δ(qi,j)=q(i+1)modnfor 0≤i<n=hj(i)for 0≤i<n,1≤j<k
hj:{1,…,n−1}→2QF={qi}i∈[0..n−1]2(k−1)n2ncách để chọn tập hợp các trạng thái cuối cùng. Sau đó, người ta có thể chỉ ra rằng không có hai NFA như vậy chấp nhận cùng một ngôn ngữ.