Có thể xây dựng DFA cho các từ có độ dài lẻ với 1 ở giữa không?


8

L:={w{0,1}|độ dài của là số lẻ 1 ở giữaww}

Vì vậy, bảng chữ cái là . Vấn đề của tôi là tôi không thể theo dõi sự bình đẳng của ký tự trước và sau . Một DFA giới hạn cho độ dài nhỏ hơn 6:{0,1}1nhập mô tả hình ảnh ở đây

Làm thế nào tôi có thể mở rộng nó để nó chấp nhận bất kỳ từ dài nào? Có thể không?

Tôi đã thử đặt chu kỳ vào đó, nhưng như tôi đã nói, sau đó tôi không thể theo dõi số lượng ký tự sau để bằng với số đó trước đó. Nói cách khác, 1 luôn luôn ở giữa.1

Câu trả lời:


13

Không, bạn không thể. Chứng minh bằng cách bơm bổ đề: Giả sử là thường xuyên và là chiều dài bơm xem xét từ . Do đó, có với và như vậy . Sau đó, .n w = 0 n 10 n x , y , z { 0 , 1 } * | x y | < n | y | > 0 x y z = w i N 0 : x y i z LLnw= =0n10nx,y,z{0,1}*|xy|<n|y|>0xyz= =wTôiN0:xyTôizL

Nhưng do ràng buộc độ dài và bao gồm và tất cả đều đứng trước . Như vậy .xy01xy2z= =0n+|y|10nL

Do đó, không thường xuyên và không thể được biểu thị bởi bất kỳ DFA nào.L

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.