Các điều kiện để một NFA cho DFA tương đương của nó có kích thước tối đa là gì?


24

Chúng tôi biết rằng các DFA tương đương với NFA về sức mạnh biểu cảm; cũng có một thuật toán đã biết để chuyển đổi NFA thành DFA (thật không may bây giờ tôi biết người phát minh ra thuật toán đó), trong trường hợp xấu nhất mang lại cho chúng ta 2S trạng thái S , nếu NFA của chúng ta có trạng tháiS

Câu hỏi của tôi là: điều gì đang xác định kịch bản trường hợp xấu nhất?


Đây là phiên âm của một thuật toán trong trường hợp không rõ ràng:

Đặt là NFA. Chúng tôi xây dựng một DFA trong đóMột= =(Q,Σ,δ,q0,F)Một'= =(Q',Σ,δ',q0',F')

  • Q'= =P(Q) ,
  • F'= ={SQ'|FS} ,
  • δ'(S,một)= =SS(δ(S,một)δ^(S,ε)) , và
  • q0'= ={q0}δ^(q0,ε) ,

nơi δ là hàm chuyển tiếp kéo dài Một .δ^A


như các bình luận nêu rõ bạn có thể giải cứu Q này bằng cách yêu cầu NFA "tối thiểu" cho DFA (một vấn đề mở). luôn nghĩ rằng vấn đề này được kết nối chặt chẽ với câu hỏi P =? NP theo nhiều cách khác nhau và có một số công thức tương tự gợi ý rằng. điều tương tự là bạn đang hỏi về các DFA "có thể nén" và "không thể nén" trong đó "không thể nén" là trường hợp xấu nhất sao cho NFA tối thiểu gần bằng kích thước của DFA. có lẽ có một số định lý như, "hầu hết các DFA, được lấy ngẫu nhiên, không thể nén được [thành NFA]" vì có những thms tương tự trong lý thuyết thông tin về độ phức tạp của kolmogorov của các chuỗi, v.v.
vzn

Câu trả lời:


24

Thuật toán mà bạn đề cập đến được gọi là Powerset Construction, và được xuất bản lần đầu bởi Michael Rabin và Dana Scott vào năm 1959.

Để trả lời câu hỏi của bạn như được nêu trong tiêu đề, không có DFA tối đa cho ngôn ngữ thông thường, vì bạn luôn có thể lấy DFA và thêm bao nhiêu trạng thái như bạn muốn với các chuyển đổi giữa chúng, nhưng không có chuyển đổi giữa một trong các trạng thái ban đầu và một trong những cái mới Do đó, các quốc gia mới sẽ không thể truy cập từ trạng thái ban đầu , do đó ngôn ngữ được chấp nhận bởi các automaton sẽ không thay đổi (vì δ ( q 0 , w ) sẽ vẫn như cũ cho tất cả các w Σ * ).q0δ^(q0,w)wΣ*

Điều đó nói rằng, rõ ràng là không thể có điều kiện nào trên NFA để DFA tương đương của nó là tối đa, vì không có DFA tương đương duy nhất . Ngược lại, DFA tối thiểu là duy nhất cho đến đẳng cấu.


Một ví dụ kinh điển của một ngôn ngữ được chấp nhận bởi một NFA với bang với DFA tương đương với 2 n bang là L = { w { 0 , 1 } * : | w | n  và  ký hiệu thứ n từ cái cuối cùng là 1 } . Một NFA cho LA = Q , { 0 , 1 } , δ , q 0 , {n+12n

L={w{0,1}:|w|n and the n-th symbol from the last one is 1}.
L , với δ ( q 0 , 0 ) = { q 0 } , δ ( q 0 , 1 ) = { q 0 , q 1 } δ ( q i , 0 ) = δ ( q i , 1 ) = { q i + 1 } cho tôiA=Q,{0,1},δ,q0,{qn+1}δ(q0,0)={q0}δ(q0,1)= ={q0,q1}δ(qtôi,0)= =δ(qtôi,1)= ={qtôi+1} . DFA kết quả của việc áp dụng xây dựng Powerset để NFA này sẽ có 2 n bang, bởi vì bạn cần để đại diện cho tất cả 2 n từ có độ dài n là hậu tố của một từ trong L .tôi{1,Giáo dục,n}2n2nnL

Nhân tiện, nếu bạn muốn dấu ngoặc nhọn xuất hiện trong chế độ toán học hiển thị, hãy sử dụng \ {và \\}.
Zach Langley

@ZachLangley Tôi đã thử rồi, nó không hoạt động :-(
Janoma

Nó dường như đang làm việc cho tôi trong bản xem trước. Mặc dù vậy, tôi không thể gửi bản chỉnh sửa vì tôi chỉ thêm bốn ký tự và tối thiểu là sáu ký tự. Bạn đang sử dụng hai dấu gạch chéo ngược và nó không hoạt động?
Zach Langley

@ZachLangley Nó hoạt động ngay bây giờ, nhưng hai điều: Thứ nhất, nó không hoạt động khi lần đầu tiên tôi đăng câu trả lời. Thứ 2, tôi nghĩ rằng điều này không phù hợp với hành vi kết xuất LaTeX trong cstheory, nhưng tôi có thể sai.
Janoma

DFA kết quả là tối thiểu? Bạn có thể nói một chút về làm thế nào để chứng minh rằng nó là tối thiểu?
dùng834

8

2s{a,b}ababλabab{q1}{q2}{}{q1,q2}


đồng ý nhưng câu hỏi "liệu có cách nào để đi đến mọi tập hợp con có thể có trong NFA" không cần thiết và đáng để nghiên cứu thêm ....
vzn

-1

Tôi tin rằng đây là một câu hỏi ở biên giới của kiến ​​thức, tức là về cơ bản là một câu hỏi nghiên cứu. Từ một tìm kiếm nhanh trên google, có vẻ như hầu hết là mở. Ngoài ra, trong nhiều năm tôi đã tin rằng nó quan trọng và liên quan đến giới hạn lý thuyết phức tạp thấp hơn. Bạn không đề cập trực tiếp đến một phân tích thống kê nhưng đó là những gì được ngụ ý bởi câu hỏi của bạn. Dưới đây là hai ví dụ về nghiên cứu thống kê về DFA / NFA tương tự nhau để chỉ ra cách tiếp cận chung cho các câu hỏi thuộc loại này. Dường như nghiên cứu thực nghiệm cơ bản về các câu hỏi như thế này vẫn chưa được khám phá. Phải thừa nhận rằng lần thứ 2 không liên quan trực tiếp đến câu hỏi của bạn nhưng đó là lần gần nhất tôi có thể tìm thấy trong nghiên cứu hiện tại.

x

Số liệu này sẽ liên quan đến các số liệu lý thuyết đồ thị như mật độ cạnh vvetera. Có lẽ có một số số liệu lý thuyết đồ thị rất quan trọng hoặc hỗn hợp các số liệu ước tính "nổ tung" nhưng nó không rõ ràng ngay lập tức đối với tôi. Tôi có thể đề xuất một cái gì đó như số liệu tô màu đồ thị hoặc số liệu clique có thể. Sau đó kiểm tra số liệu dựa trên hai bộ "nổ tung" so với "không nổ tung".

Các câu trả lời khác cho câu hỏi của bạn cho đến nay chỉ đưa ra một trường hợp ví dụ về "nổ tung" (hữu ích cho nghiên cứu trường hợp) nhưng không giải quyết vấn đề chính của một số liệu chung.

Một lĩnh vực khác để xem xét một chương trình phát triển thành công về nghiên cứu thực nghiệm là nghiên cứu điểm chuyển tiếp SAT. Điều đó đã phát triển các liên kết rất sâu đến các khái niệm vật lý và nhiệt động lực học. Dường như với tôi rằng các khái niệm tương tự được áp dụng ở đây. Ví dụ, người ta có thể tìm thấy các số liệu loại điểm chuyển tiếp tương tự; có lẽ mật độ cạnh v.v ... Lưu ý song song với lý thuyết độ nén Kolmogorov.

Tôi cũng phỏng đoán rằng các NFA "nổ tung" so với những NFA không hoàn toàn tương tự với các trường hợp "khó" so với "dễ" của các vấn đề hoàn thành NP.

Tuy nhiên, một cách khác để nghiên cứu vấn đề này là hình thành một vấn đề giảm thiểu NFA. Đó là, được đưa ra một DFA, tìm NFA tối thiểu, lần cuối tôi nghe (nhiều năm trước) vẫn là một vấn đề mở.


[1] Về hiệu suất của các thuật toán tối thiểu hóa automata Marco Almeida, Nelma Moreira, Rogério Reis

[2] Automata nhận ra không có từ nào: Cách tiếp cận thống kê Cristian S. Calude, Cezar Câmpeanu, Monica Dumitrescu

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.