Đóng cửa với thương số đúng với một ngôn ngữ cố định


13

Tôi thực sự yêu sự giúp đỡ của bạn với những điều sau đây:

Đối với bất kỳ cố định nào, tôi cần quyết định xem có đóng cửa theo các toán tử sau không:L2

  1. Ar(L)={xyL2:xyL}

  2. Al(L)={xyL:xyL2} .

Các tùy chọn có liên quan là:

  1. Các ngôn ngữ thông thường được đóng dưới resp. , cho mọi ngôn ngữAlArL2

  2. Đối với một số ngôn ngữ , các ngôn ngữ thông thường được đóng dưới resp. và đối với một số ngôn ngữ , các ngôn ngữ thông thường không bị đóng dưới resp. .L2AlArL2AlAr

Tôi tin rằng câu trả lời cho (1) phải là (2), vì khi tôi nhận được một từ trong và tôi có thể xây dựng một máy tự động có thể đoán được chuyển sang , nhưng sau đó nó cần xác minh rằng thuộc về và nếu nó không thường xuyên, làm thế nào để làm điều đó? Câu trả lời cho điều đó là (1).wLw=xyxyyL2

Tôi nên làm gì để phân tích các toán tử đó một cách chính xác và để xác định xem các ngôn ngữ thông thường có bị đóng dưới chúng hay không?


AAgì Bạn có nghĩa là ' không đóng cửa' trong phần thứ hai của (b)? LLgì?
Alex ten Brink

Bạn vẫn chưa xác định L ?
Gopi

@Gopi là ngôn ngữ nhập liệu. là một toán tử trên các ngôn ngữ trong cả hai trường hợp. A ( )LA()
Lucas Cook

@Gopi: là tham số của , là cố định. A L 2LAL2
Raphael

Oups xấu của tôi, làm thế nào tôi không thấy oO này.
Gopi

Câu trả lời:


11

Để trả lời những câu hỏi này, chúng tôi cần cho phép bất kỳ . Vì vậy, hãy nghĩ rằng là một ngôn ngữ rất phức tạp (giả sử, một số ngôn ngữ không thể giải quyết được.)L 2L2L2


Hãy bắt đầu từ câu hỏi dễ: (câu hỏi phần 2). Lấy là không thể giải quyết được và . Chuyện gì xảy raL 2 L = { ε }Al(L)L2L={ε}

(đạo đức: Luôn kiểm tra "cực trị": , và ...)L = { ε } L = Σ *LL={ε}L=Σ


Bây giờ cho . Đây là một câu hỏi hay (thường là câu hỏi thưởng trong Final / Bài tập về nhà). Thật vậy, các ngôn ngữ thông thường được đóng dưới cho mọi ngôn ngữ . Ngay cả không thể giải quyết được . Thật tuyệt phải không?A r L 2 L 2ArArL2L2

Vậy làm thế nào chúng ta có thể xây dựng một máy tự động cho nếu không có máy nào chấp nhận ?L 2Ar(L)L2

Ở đây có sự kỳ diệu của "tư duy trừu tượng", tức là bằng chứng hiện sinh . Nếu ai đó cho chúng tôi chúng tôi có thể sử dụng thông tin này để cho thấy rằng có tồn tại một số máy tự động để giải quyết . Bây giờ các chi tiết. A ( L )L2A(L)

Chúng tôi bắt đầu từ máy tự động của (cuộc gọi là ). Giả sử rằng sau khi xử lý chúng ta kết thúc ở trạng thái . Chúng ta cần phải chấp nhận nếu có tồn tại ví dụ rằng nếu chúng tôi tiếp tục từ xử lý chúng tôi sẽ kết thúc trong tình trạng cuối cùng của . Không có máy nào có thể cho chúng ta biết nếu ở , nhưng chúng ta có thể biến thành trạng thái cuối cùng của nếu điều kiện trên giữ, nghĩa là, nếu có tồn tại một số sao cho chúng ta bắt đầu ở và xử lýD F A L x q y L 2 q y D F A L y L 2 q D F A A L y L 2 q y D F A LLDFALxqyL2qyDFALyL2qDFAALyL2qychúng tôi kết thúc ở trạng thái cuối cùng của .DFAL

như vậy để xây dựng chúng ta xem xét mỗi một trong số các bang và làm cho mỗi tiểu bang trạng thái chấp nhận nếu chúng ta có thể mất một và điều này sẽ dẫn chúng ta từ đến một trạng thái chấp nhận . D F A L q y L 2 y q D F A LDFAALDFALqyL2yqDFAL

Rất ổn, là vô hạn và chúng tôi có thể không có máy tính để liệt kê tất cả các từ trong , nhưng tất cả những điều này không quan trọng ... máy tự động ở trên được xác định rõ, ngay cả khi tôi không thể rút ra cho bạn nhà nước theo nhà nước. Ma thuật.L 2L2L2


Có vẻ như bạn đã đăng một câu trả lời cho chính vấn đề đó cùng một lúc. :]
Lucas Cook

tốt .. câu trả lời của tôi có spoilers trong đó .. có lẽ tôi nên đặt một cảnh báo spoiler, vì vậy người ta có thể bắt đầu với câu trả lời của bạn và nếu điều này là không đủ - sau đó lấy thông tin chi tiết ..
Ran G.

Wow, câu trả lời tuyệt vời, rất hữu ích. Cảm ơn rất nhiều Ran!
Jozef

7

Tôi không chắc liệu bạn có đang tìm kiếm câu trả lời cho vấn đề này hay không, vì vậy tôi không cung cấp trực tiếp. (Tôi có thể nếu bạn muốn nó, mặc dù.)

Bạn đã hỏi:

Tôi nên làm gì để phân tích các toán tử đó một cách chính xác và để xác định xem các ngôn ngữ thông thường có bị đóng dưới chúng hay không?

Cách tiếp cận bắt đầu của bạn là một cách tốt. Như với tất cả các câu hỏi lý thuyết "mở", bạn sẽ có được cảm giác trực quan cho dù nó có đúng hay không. Thông thường, điều này là bằng cách thử các ví dụ (cả trường hợp phổ biến và trường hợp cạnh) hoặc điều tra các trường hợp đặc biệt (ví dụ: nếu là thông thường thì không có ngữ cảnh?). Đối với vấn đề này, bạn cần phát triển một số dự đoán về việc liệu bạn có thể xây dựng một máy tự động / regex cho các nhà khai thác hay không. Sau đó:L2

  • Nếu bạn nghĩ rằng bạn có thể, bạn cần có khả năng xây dựng automaton / regex này cho bất kỳ ngôn ngữ nhập liệu thông thường .L
  • Nếu bạn nghĩ rằng bạn không thể, thông thường bạn sẽ tìm thấy các ngôn ngữ ví dụ và sao cho không bị đóng.L 2 A xLL2Ax

(và nếu một cách tiếp cận không hiệu quả, bạn luôn có thể thử phương pháp khác.)


Đối với chính vấn đề:

Cả hai đều là toán tử thương số đúng. (Tôi tin rằng thương trái liên quan đến việc rời khỏi postfix thay vì tiền tố.) Sự khác biệt giữa hai là trong khi , nơi được cố định trong cả hai trường hợp.A r ( L ) = L / L 2 L 2Al(L)=L2/LAr(L)=L/L2L2

Bạn có một số trực giác về , vì vậy đây là điều cần suy nghĩ về : đưa ra phiên bản sửa đổi của . Kể từ có thể không thường xuyên, là nó có thể cho rời không thay đổi? Nếu vậy, không thường xuyên trong trường hợp đó. khác, chúng ta sẽ phải lập luận rằng làm cho thường xuyên trong mọi trường hợp.A l A l L 2 L 2 A l L 2 A l A l L 2ArAlAlL2L2AlL2AlAl L2

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.