Cho hai chuỗi x và y, tôi muốn xây dựng một DFA kích thước tối thiểu chấp nhận x và từ chối y. Một cách để làm điều này là tìm kiếm vũ phu. Bạn liệt kê DFA bắt đầu từ nhỏ nhất. Bạn thử từng DFA cho đến khi bạn tìm thấy một chấp nhận x và từ chối y.
Tôi muốn biết liệu có cách nào khác để tìm hoặc xây dựng DFA kích thước tối thiểu chấp nhận x và từ chối y không. Nói cách khác, chúng ta có thể đánh bại tìm kiếm vũ phu?
Thêm chi tiết:
(1) Tôi thực sự muốn một thuật toán tìm DFA kích thước tối thiểu, không phải là DFA kích thước tối thiểu gần.
(2) Tôi không chỉ muốn biết DFA tối thiểu lớn hay nhỏ.
(3) Ngay tại đây, tôi chỉ tập trung vào trường hợp là bạn có hai chuỗi x và y.
Chỉnh sửa :
Thông tin bổ sung cho người đọc quan tâm:
Giả sử và y là các chuỗi nhị phân có độ dài tối đa n . Đó là một kết quả được biết rằng có một DFA chấp nhận x và từ chối y với ít nhất √ tiểu bang. Chú ý rằng có khoảngn √ DFA với một bảng chữ cái nhị phân và nhiều nhất√ tiểu bang. Do đó, cách tiếp cận sức mạnh vũ phu sẽ không yêu cầu chúng tôi liệt kê thông qua hơnn √ DFA. Nó sau đó phương pháp brute force không thể mất nhiều hơnn √ thời gian.
Các slide mà tôi thấy hữu ích: https://cs.uwaterloo.ca/~shallit/Talks/sep2.pdf