Đếm số tự động hữu hạn xác định


8

Tôi có một câu hỏi liên quan đến việc đếm DFA:

Đưa ra một Σ = {0, 1}chuỗi đầu vào, với tập trạng thái Q = {1...n}, làm thế nào tôi có thể tìm thấy tổng số DFA có thể được xây dựng?

Tôi tin rằng đây là một vấn đề tổ hợp, nhưng tôi không thực sự chắc chắn những gì tôi sẽ phải nhân lên.

Cảm ơn.


Không hoàn toàn chắc chắn những gì bạn có nghĩa là "có thể được xây dựng". Bạn có nghĩa là một DFA có trạng thái 1, cái khác có trạng thái 1 và 2, cái khác có trạng thái 1, 2 và 3, v.v.? Trong trường hợp đó, bạn cần xem xét tất cả các tập hợp con có thể có từ 1 đến n trạng thái. Có một cái tên đặc biệt cho cái này, nhưng tôi sẽ cho phép bạn tìm ra nó.

Lưu ý : Nó cũng phụ thuộc vào ngôn ngữ! vì vậy mọi sơ đồ chuyển tiếp xác định có thể có thể không cần DFA của ngôn ngữ.- Vì vậy, không chỉ là vấn đề tổ hợp.
Grijesh Chauhan

Sẽ trả lời, nhưng nó khó khăn. Đây là những gì tôi có: Một DFA được xác định bởi một tập hợp các trạng thái, một tập hợp các cạnh từ trạng thái này sang trạng thái khác và trạng thái ban đầu. Vì vậy, nó là một đồ thị có hướng. Một DFA nhị phân có chính xác hai cạnh từ mỗi trạng thái. Mỗi trạng thái phải có thể truy cập từ trạng thái ban đầu, đó là một yêu cầu mạnh mẽ hơn là "kết nối" nhưng yếu hơn là "kết nối mạnh mẽ".

1
Là số nhà nước được cho là một đầu ra quan sát? Tôi nghĩ rằng hai DFA có cùng cấu trúc liên kết nhưng trạng thái được đánh số khác nhau sẽ giống nhau. Nhưng nó không rõ ràng từ câu hỏi. Không thể quan sát được, đây là một câu hỏi thực sự khó khăn, xứng đáng với một ấn phẩm .

vấn đề này không được đặt ra ở đây về mặt toán học / chính xác, nhưng một cải cách cẩn thận / nghiêm ngặt có lẽ là "sâu sắc". dường như tương tự như đẳng cấu đồ thị . cũng là một khái quát tự nhiên / rõ ràng là NFA. như với câu trả lời của JEP, nó cũng dễ dàng tuân theo cách tiếp cận ước lượng loại thực nghiệm / monte carlo.
vzn

Câu trả lời:



1

Về cơ bản, đây là sản phẩm của tất cả các chuyển đổi có thể từ mỗi trạng thái bắt đầu có thể sang từng trạng thái chấp nhận có thể có. Trong ví dụ này, có n ^ (2n) khả năng chuyển tiếp. Trong đó có n trạng thái tổng, mỗi trạng thái có n chuyển tiếp có thể trên mỗi cạnh (ký hiệu đầu vào) cho chúng ta n ^ (2n). Chúng ta có n trạng thái bắt đầu có thể và 2 ^ n trạng thái chấp nhận (tập hợp sức mạnh của các trạng thái có thể.) Sản phẩm của cả ba trạng thái này cung cấp cho chúng ta: n ^ (2n) * n * 2 ^ (n).


1
Nếu bạn thi hành ghi nhãn các trạng thái của DFA, thì câu trả lời của bạn có thể đúng. Không có nhãn (đó là cách xác định DFA), điều này không đúng. Bạn cần xem xét các trạng thái bắt đầu vì bây giờ bạn đã quá đếm. Hãy xem xét một DFA hai trạng thái có sự chuyển tiếp sang trạng thái khác cho bất kỳ biểu tượng nào. Xem xét hai trường hợp chấp nhận nhà nước (luôn chấp nhận). Vì có hai trạng thái, có hai trạng thái bắt đầu có thể. Tuy nhiên, hai máy này hoàn toàn giống nhau (hình ảnh phản chiếu của nhau). Nếu bạn dán nhãn các tiểu bang, thì đây là những kỹ thuật khác nhau. Nhưng không có, các DFA này là như nhau.
mdxn

0

TL; DR: n2nnmn

Ở đâu Q = nΣ = m.

Chúng ta sẽ đi qua từng yếu tố của một DFA 5-tuple để tìm ra các kết hợp khác nhau mà mỗi kết quả sẽ tạo ra một DFA duy nhất. Bộ 5 bao gồm (Q, Σ,δ, s, F)

s:

Bất kỳ 1 yếu tố nào của Qcó thể là trạng thái bắt đầu. Như vậy cóQ = = n cách chọn s.

F:

Bất kỳ số lượng phần tử nào của Q đều có thể được chấp nhận trạng thái, do đó tất cả các tập hợp con của Q là các lựa chọn hợp lệ cho F. Số lượng các tập hợp con có thể có cho một tập hợp số n là 2n. Một cách khác để nói điều này là tính chính xác củaQ's bộ điện P(Q) là 2n

δ:

δ được định nghĩa là f: Q x ΣQ tức là δ tên miền của hàm là Q x Σ và phạm vi của nó là Q. Cardinality của tên miền làmn Ở đâu Q = nΣ = mvà phạm vi đó là Q = n. Như vậy cónmn cách chọn δ.

QΣđược tặng; chỉ có1 cách để chọn chúng.

Vì vậy, tổng số cách để lựa chọn trong số 5 yếu tố của DFA trong đó Q = nΣ = m

n2nnmn

Thà muộn 5 năm còn hơn không?


Về mặt kỹ thuật, nhưng tôi nghĩ ý nghĩa của OP là số lượng ngôn ngữ riêng biệt của các DFA đó, không phải số lượng DFA (nhưng tôi có thể sai).
Ryan

Câu hỏi nêu rõ "làm thế nào tôi có thể tìm thấy tổng số DFA có thể được xây dựng?"
JJ Skye
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.