Sự phức tạp trạng thái của ngôn ngữ sao chép là gì?


10

Đặt một số được cho. Hãy xem xét ngôn ngữ sau .L n = {nLn={ww|w{0,1}n}

Nói cách khác, là tập hợp các chuỗi sao chép có độ dài . 2 nLn2n

Hãy xem xét hàm phức tạp trạng thái sau sao cho là số trạng thái trong Tự động đẩy xuống nhỏ nhất nhận ra .s ( n ) L nss(n)Ln

Câu hỏi: Bạn có thể chính thức chứng minh bất kỳ ràng buộc thấp hơn có ý nghĩa cho không?s(n)

Phỏng đoán của tôi: .s(n)=2Θ(n)

Được biết đến phía trên: .s(n)poly(n)2n2

Quy tắc:

(1) Bảng chữ cái ngăn xếp phải là nhị phân.

(2) Băng đầu vào là một chiều và không thể dừng trên bất kỳ ký tự đầu vào nào.


Tôi hiện không có bất kỳ ràng buộc thấp hơn có ý nghĩa. Dường như với tôi, bạn có thể chứng minh được giới hạn thấp hơn cho số lượng biến bạn cần cho một CFG nhận dạng ngôn ngữ. Mặc dù, tôi thậm chí không hoàn toàn chắc chắn về điều này.
Michael Wehar

1
Trực giác của tôi là khi bạn đẩy các ký tự từ băng đầu vào sang ngăn xếp, bạn gặp phải một vấn đề. Nếu bạn muốn lấy lại các bit này sau này, bạn phải vứt bỏ tất cả các bit mà bạn đã đẩy lên trên nó. Nói cách khác, có vẻ như ngăn xếp không giúp ích gì cho bạn vì bạn càng đẩy mạnh vào nó, bạn càng bị buộc phải quên sau này.
Michael Wehar

1
Lưu ý: Đối với DFA (automata không có ngăn xếp), bạn có thể chứng minh độ phức tạp trạng thái theo cấp số nhân giới hạn dưới.
Michael Wehar

1
Bạn có thể hiển thị giới hạn dưới hợp lý cho vấn đề đơn giản hơn của không? {0k1l0k1l}
András Salamon

1
Giới hạn trên chính xác hơn dường như là trạng thái. (n+3)2n/2
András Salamon

Câu trả lời:


10

Kỹ thuật được mô tả bởi Yuval:

Có tồn tại CFG kích thước đa thức mô tả ngôn ngữ hữu hạn này?

(bạn cũng có thể đọc: Giới hạn thấp hơn về kích thước của CFG cho các ngôn ngữ hữu hạn cụ thể )

cho phép hiển thị rất dễ dàng một giới hạn dưới theo cấp số nhân cho CFG. Đặt một ngữ pháp ở dạng bình thường Chomsky cho . Với mỗi từ tồn tại ít nhất một từ không phải là thiết bị đầu cuối chấp nhận một từ khóa của có độ dài giữa và . Đặt là một vị trí trong nơi từ này xuất hiện. Có ít nhất bit chung cho tất cả các từ sao cho và . Do đó, có thể có tối đaGLnw{0,1}nA(w)s(w)wwn/2np(w)wwn/2w,wA(w)=A(w)p(w)=p(w) Một(w)p(w) 2 Θ ( n )2n/2những từ có cùng và . Do đó, có ít nhất không phải thiết bị đầu cuối.A(w)p(w)2Θ(n)

Hơn nữa, PDA có thể được chuyển đổi thành CFG trong CNF, có kích thước đa thức, do đó, điều này cũng mang lại cho bị ràng buộc về độ phức tạp trạng thái của . L n2Θ(n)Ln


Tuyệt vời, cảm ơn một lần nữa! Tôi thấy bây giờ và sẽ suy nghĩ về nó để xác nhận. :)
Michael Wehar 24/07/2015

2
Phải một lần nữa: thay đổi độ dài từ sang giới thiệu một vấn đề khác. Tôi đã phải tinh chỉnh đối số theo cách tương tự như của Yuval (tính các phần trùng lặp). Bây giờ tôi tin rằng nó là chính xác, cuối cùng. Tôi đã chỉnh sửa câu trả lời và xóa nhận xét của mình[ n / 2 , n ][n,2n][n/2,n]
Joseph Stack

1
Trong trường hợp nó giúp được bất kỳ ai khác: lưu ý rằng một khi đã được chọn, chỉ có thể đưa ra một từ con duy nhất của bắt đầu tại vị trí . Vì vậy, điều này thực sự cho thấy rằng bất kỳ CNF-CFG chính xác nào cho ngôn ngữ này phải có nhiều số nguyên tố mà mỗi ngôn ngữ tạo ra một từ khóa dài duy nhất. A ( w )(A(w),p(w))A(w)p ( w )wwp(w)
András Salamon

2
Xem thêm Định lý 7 trong bài viết của tôi: cs.toronto.edu/~yuvalf/CFG-LB.pdf .
Yuval Filmus

1
@YuvalFilmus Điều đáng chú ý là Andras đã dành một chút thời gian để cố gắng để giới hạn trên và dưới khớp nhau. Bạn tôi Pepe và tôi đã định nghĩa một lớp chung các ngôn ngữ hữu hạn và áp dụng kỹ thuật này cho chúng. Chúng tôi không bao giờ viết bất cứ điều gì lên mặc dù. Nếu bạn có bất kỳ vấn đề liên quan nào, chúng tôi sẽ sẵn sàng hợp tác hơn. Cảm ơn một lần nữa.
Michael Wehar
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.