Sự đều đặn của chính xác giữa các từ trong một ngôn ngữ thông thường


8

Hãy để L là một ngôn ngữ thông thường.
Là ngôn ngữ L2={y:x,z  s.t.|x|=|z| and xyzL} thường xuyên?

Tôi biết nó rất giống với câu hỏi ở đây , nhưng điều thú vị là nó không phải là một chuỗi con đơn giản của một từ trong ngôn ngữ thông thường, mà là "chính giữa" - chúng ta phải đếm tiền tố và độ dài hậu tố.

Do đó, tôi cho rằng nó không thường xuyên, nhưng tôi không thể tìm ra cách để chứng minh điều đó. Tôi cũng không thể nghĩ ra bất kỳ cách nào để sửa đổi NFA của L để chấp nhận L2 .


"chính xác giữa" dường như gợi ý ? Nhân tiện, điều đó cũng sẽ thường xuyên! |x|=|y|=|z|
Hendrik ngày

Bạn đã thử những thứ từ câu hỏi tham khảo của chúng tôi ?
Raphael

Câu trả lời:


6

Gợi ý: Hãy xem xét một số DFA cho . Đối với mỗi n 0 , chúng ta hãy Một n là tập các trạng thái s như vậy mà có một số từ có độ dài n mà dẫn đầu DFA từ trạng thái ban đầu để s . Đặt B n là tập hợp các trạng thái t sao cho có một số từ có độ dài n dẫn DFA từ t đến trạng thái chấp nhận. Cuối cùng, với bất kỳ hai trạng thái s , t , hãy để R s , tLn0AnsnsBntnts,tRs,tlà tập hợp (thông thường) của các từ dẫn DFA từ đến t . Ta có L 2 = n 0 s A n t B n R s , t . Vì chỉ có rất nhiều khả năng cho s , t , nên thực tế công đoàn là hữu hạn và thường xuyên như vậy.st

L2=n0sAntBnRs,t.
s,t

3

Hãy là một DFA cho . Không mất tính tổng quát, giả sử . Chúng tôi xây dựng một-NFA cho theo cách sau:L q S , q FQ N = ( Q { q S , q F } , Σ , Δ , q S , { q F } ) L 2D=(Q,Σ,δ,q0,F)LqS,qFQN=(Q{qS,qF},Σ,Δ,qS,{qF})L2

Tìm mỗi đường dẫn trong từ cho bất kỳ . Với mỗi đường dẫn như vậy xây dựng những con đường với giá (nghĩa là tạo ra tất cả các phần giữa của bản quyền của đường dẫn). Điều này có thể được thực hiện một cách hiệu quả. Xây dựng bằng cách kết hợp tất cả các đường dẫn, cùng với:q 0 f F p k : q 0 = q k , 0 α k , 1 q k , 1 α k , 2 i ) k : q k , i α k , i + 1Dq0fFpk:q0=qk,0αk,1qk,1αk,2αk,iqk,iαk,i+1αk,nkqk,nkpk(i):qk,iαk,i+1qk,i+1αk,i+2αk,nkiqk,nki0ink2Δ

  • (qS,ε,qk,i) cho tất cả như trêni
  • (qk,nki,ε,qF) cho tất cả như trêni

L(N) là thường xuyên của xây dựng.

Bằng chứng phác họa rằng : Đặt . Bằng cách xây dựng, chúng ta biết rằng phải khớp ít nhất trên các đường dẫn ở trên. Mỗi đường dẫn này thuộc về một đường dẫn trong , chứa tiền tố và hậu tố bổ sung có độ dài . Chọn là từ được mô tả bởi tiền tố này và là từ được mô tả bởi hậu tố. Chúng tôi thấy rằng , với . Với lập luận tương tự như chúng ta thấy đối với mỗi một con đường ở . Gọi là độ dài của và w L ( N ) w p ( i ) k D i x y x w y LL(N)=L2wL(N)wpk(i)DixyxwyLw L 2 N i x y w p ( i ) k k w|x|=|y|=iwL2Nixythuộc về . cho một số dạng .wpk(i)kw

Do đó .L(N)=L2


Vì có vô số con đường, nhận xét "Điều này có thể được thực hiện một cách hiệu quả" dường như cần một số lời giải thích. Lưu ý rằng không nhất thiết phải sử dụng thuộc tính đó, xem câu trả lời của Yuval, mà (với tôi) là phiên bản "không hiệu quả" của cùng một đối số.
Hendrik ngày

Bạn đúng rồi. Bạn không cần phải xem xét các vòng lặp hai lần. Điểm quan trọng tiếp theo dường như là có một số thuộc về , vì khi kết hợp các đường dẫn có thể xuất hiện các đường dẫn mới. Bạn thấy tôi chưa xem xét kỹ lưỡng bằng chứng của mình, nhưng tôi tin rằng tất cả những vấn đề này có thể được giải quyết. wpk(i)w
ipsec
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.