Chi phí của một truy vấn tương đương cho DFA


12

Lấy cảm hứng từ câu hỏi này , tôi tò mò về những điều sau đây:

Độ phức tạp trong trường hợp xấu nhất của việc kiểm tra xem một DFA nhất định có chấp nhận cùng ngôn ngữ với biểu thức chính quy đã cho không?

Điều này có được biết không? Hy vọng rằng vấn đề này nằm ở P - rằng có một đa thức thuật toán trong kích thước của cả hai.

Câu trả lời:


16

Theo Garey và Johnson (trang 174), KHÔNG GIỚI HẠN THƯỜNG XUYÊN là hoàn toàn PSPACE. Đây là vấn đề quyết định liệu một biểu thức chính quy trên không không tạo ra tất cả các chuỗi. Vì vậy, vấn đề của bạn cũng đã hoàn tất PSPACE.{0,1}

Đây là một cách để thấy rằng vấn đề của OP nằm ở PSPACE. Cho DFA và biểu thức chính quy r , xây dựng NFA B cho r và sử dụng cấu trúc tập hợp năng lượng để hầu như xây dựng DFA C tương đương với B ; chúng tôi sẽ không giữ C trong bộ nhớ, nhưng chúng tôi có quyền truy cập vào C chỉ sử dụng không gian đa thức. Bây giờ hầu như xây dựng một DFA D cho sự khác biệt đối xứng của AC bằng cách sử dụng cấu trúc sản phẩm. DFA này chấp nhận không có chuỗi (và vì vậy L ( A ) = L ( rMộtrBrCBCCDMộtC ) nếu không có đường dẫn từ trạng thái bắt đầu đến trạng thái chấp nhận. Kể từ reachability là trong NL và D có kích thước 2 p o l y ( n ) , chúng ta có thể kiểm tra xem L ( D ) = trong N S P Một C E ( p o l y ( n ) ) = N P S P Một C E = P S P A C EL(Một)= =L(r)D2potôiy(n)L(D)= =NSPMộtCE(potôiy(n))= =NPSPMộtCE= =PSPMộtCE, đẳng thức sau do định lý của Savitch.


Bạn có chắc chắn nó có trong PSPACE (nếu không nó sẽ chỉ là PSPACE-HARD)? Hoặc có lẽ nó đủ để kiểm tra tất cả các chuỗi có độ dài đa thức để xem liệu biểu thức chính quy và DFA có đồng ý với tất cả các chuỗi không? Điều đó là hiển nhiên? :-)
Neal Young

4
Khả năng tiếp cận ghi nhớ là bằng NL, do đó, mặc dù DFA tương ứng với biểu thức chính quy là theo cấp số nhân, vì truy cập orory vào nó là rẻ, chúng ta có thể tìm hiểu xem sự khác biệt đối xứng có trống hay không trong NPSPACE = PSPACE.
Yuval Filmus

Tôi không thấy kết quả độ cứng. Đó là, làm thế nào để bạn giảm vấn đề ở trên thành tính phổ quát của biểu thức chính quy?
Markus

2
Chọn DFA chấp nhận mọi thứ. Để thể hiện độ cứng, bạn giảm mức độ KHÔNG GIỚI HẠN THƯỜNG XUYÊN đối với vấn đề đang đề cập.
Yuval Filmus

1
@YuvalFilmus Cảm ơn bạn đã tham khảo! Bạn có lẽ nên thêm nhận xét đầu tiên vào câu trả lời của mình cho đầy đủ, theo cả hai nghĩa của từ này :)
Lev Reyzin
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.