Sự khác biệt giữa các ngôn ngữ được chấp nhận bởi hai DFA với trạng thái ban đầu / trạng thái chấp nhận khác nhau?


9

Gần đây, tôi đã hỏi một câu hỏi về Math SE. Vẫn chưa có phản hồi. Câu hỏi này liên quan đến câu hỏi đó, nhưng chi tiết kỹ thuật hơn đối với khoa học máy tính.

Với hai DFAs B = ( Q , Σ , δ , q 2 , F 2 ) nơi tập hợp các tiểu bang, bảng chữ cái đầu vào và chức năng chuyển đổi của AB giống nhau, trạng thái ban đầu và trạng thái (chấp nhận) cuối cùng có thể khác nhau. Đặt L 1L 2 là ngôn ngữ được A chấp nhận vàMột= =(Q,Σ,δ,q1,F1)B= =(Q,Σ,δ,q2,F2)MộtBL1L2Một , tương ứng.B

Có bốn trường hợp:

  1. F 1 = F 2 .q1= =q2F1=F2
  2. F 1 = F 2 .q1q2F1=F2
  3. F 1F 2 .q1=q2F1F2
  4. F 1F 2 .q1q2F1F2

Câu hỏi của tôi là

Sự khác biệt giữa L 2 trong trường hợp 2, 3 và 4 là gì?L1L2

Tôi có một câu hỏi cụ thể hơn dọc theo dòng này,

Monoid chuyển tiếp của một máy tự động là tập hợp tất cả các chức năng trên tập hợp các trạng thái gây ra bởi các chuỗi đầu vào. Xem trang để biết thêm chi tiết. Monoid chuyển tiếp có thể được coi là một monoid hoạt động trên tập hợp các trạng thái. Xem trang Wiki này để biết thêm chi tiết.

Trong nhiều tài liệu, một máy tự động được gọi là kết nối mạnh khi hành động đơn hình mang tính bắc cầu, tức là luôn có ít nhất một lần chuyển (chuỗi đầu vào) từ trạng thái này sang trạng thái khác.

Nếu B được tự động kết nối mạnh, sự khác biệt giữa L 1L 2 trong các trường hợp 2, 3 và 4 ở trên là gì?ABL1L2

Bất kỳ tài liệu thảo luận về các vấn đề chi tiết?

Tôi đã tìm kiếm nhiều sách và bài báo và thấy không có gì hữu ích cho đến nay. Tôi tin rằng tôi chưa có từ khóa thích hợp nào. Vì vậy, tôi đang tìm kiếm sự giúp đỡ. Bất kỳ con trỏ / tài liệu tham khảo sẽ được đánh giá rất nhiều.


Bạn có ý nghĩa gì bởi "sự khác biệt" là gì? Bạn muốn biết liệu L 2 có thể / phải khác nhau trong các trường hợp 2,3,4 không? L1L2
Hendrik ngày

@HendrikJan Nếu bạn đọc câu trả lời Shaull được cung cấp dưới đây, bạn sẽ hiểu L 2 có thể khác nhau. (Anh ấy đã sử dụng L ( A )L ( B ) ). Tôi không biết liệu họ phải khác nhau. Đó là một phần câu hỏi của tôi. Tôi hỏi "sự khác biệt là gì?". Tôi không ngụ ý họ phải khác nhau. L1L2L(A)L(B)
scaaahu

Câu trả lời:


8

Kể từ được kết nối mạnh mẽ, sau đó nếu q 1q 2 , có tồn tại từ p 1 , p 2δ ( q 1 , p 1 ) = q 2δ ( q 2 , p 2 ) = q 1 .A,Bq1q2p1,p2δ(q1,p1)= =q2δ(q2,p2)= =q1

Hãy xem xét trường hợp 2, sau đó khi và chỉ khi p 2 w L ( B ) , và x L ( B ) khi và chỉ khi p 1 x L ( A ) . Vì vậy, bạn có thể thêm một tiền tố để chuyển đổi giữa các ngôn ngữ.wL(Một)p2wL(B)xL(B)p1xL(A)

Xem xét trường hợp 3, sau đó một lần nữa - bằng cách kết nối mạnh nhất có nhiều nhất từ s 1 , . . . , S k như vậy mà cho tất cả các q iF 1 bạn đã là δ ( q i , s i ) F 2 , và tương tự cho một hướng khác (từ B đến A ).|F1|S1,...,SkqTôiF1δ(qTôi,STôi)F2BMột

Vì vậy, bạn có thể soạn các hậu tố để chuyển đổi giữa các ngôn ngữ.

Kết hợp những điều này bạn có thể mô tả sự khác biệt bằng cách sử dụng tiền tố và hậu tố. Ví dụ, trong trường hợp 4, iff p 1 w s i trong L ( A ) cho một số s i trong tập hữu hạn xác định trước.wL(B)p1wSTôiL(Một)STôi

Trong thực tế, bạn thậm chí có thể nói điều gì đó thú vị về những lời này: define là DFA nơi q 1 là trạng thái ban đầu và q 2 là trạng thái cuối cùng, sau đó trong trường hợp 2 bạn có L ( B ) = L ( C ) L ( A ) (và tương tự cho hướng khác).Cq1q2L(B)= =L(C)L(Một)

Đối với các hậu tố, mọi thứ có liên quan nhiều hơn, vì bạn không thể xác định trước trạng thái cuối cùng mà bạn sẽ kết thúc. Tôi không chắc chắn bạn có thể viết những dòng này như một nối, nhưng bạn có thể viết nơi Một q là DFA thu được từ A được thiết F = { q }E q là một DFA bắt đầu bằng q với các trạng thái cuối cùng F 2 .L(B)= =qF1L(Mộtq)L(Eq)MộtqMộtF= ={q}EqqF2

Đối với trường hợp 4 bạn có thể kết hợp cả hai.

Bạn có thể lo ngại rằng đây không phải là một câu trả lời thực sự, mà chỉ là một đặc tính của các thuộc tính sử dụng các từ hơn là các trạng thái, nhưng đây là một câu trả lời điển hình trong lĩnh vực này (tương tự như định lý Myhill-Nerode).


Tôi hiểu câu trả lời của bạn. Vấn đề của tôi là, ví dụ như không phải là duy nhất, tức là có nhiều p 1 sao cho δ ( q 1 , p 1 ) = q 2 . Do đó, có nhiều tiền tố trong sự khác biệt giữa L ( A )L ( B ) . Chúng ta có câu trả lời chính xác hơn? p1p1δ(q1,p1)= =q2L(Một)L(B)
scaaahu

Tôi chỉnh sửa câu trả lời với một số thông tin chính xác hơn.
Shaull

C

Xin lưu ý chỉnh sửa bổ sung trong bài.
Shaull

1
Ý tưởng tốt. Bạn đang ở một trạng thái cuối cùng tại một thời điểm sau đó tham gia công đoàn. Hy vọng cách giải thích của tôi là chính xác.
scaaahu
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.