Chứng minh việc đóng cửa dưới sự bổ sung của các ngôn ngữ được chấp nhận bởi min-heap automata


8

Đây là một câu hỏi tiếp theo của câu hỏi này .

Trong một câu hỏi trước đây về các máy trạng thái kỳ lạ , Alex ten Brink và Raphael đã đề cập đến khả năng tính toán của một loại máy trạng thái đặc biệt: min-heap automata. Họ đã có thể chỉ ra rằng tập hợp các ngôn ngữ được chấp nhận bởi các máy như vậy ( ) không phải là tập hợp con cũng không phải là siêu ngôn ngữ của tập hợp các ngôn ngữ không ngữ cảnh. Với việc giải quyết thành công và quan tâm rõ ràng đến câu hỏi đó, tôi tiến hành hỏi một số câu hỏi tiếp theo.HAL

Được biết, các ngôn ngữ thông thường được đóng trong nhiều hoạt động khác nhau (chúng tôi có thể giới hạn mình trong các hoạt động cơ bản như liên kết, giao nhau, bổ sung, khác biệt, ghép nối, sao Kleene và đảo ngược), trong khi các ngôn ngữ không ngữ cảnh có cách đóng khác nhau các thuộc tính (chúng được đóng lại dưới sự kết hợp, nối, sao Kleene và đảo ngược).

HAL có đóng cửa dưới sự bổ sung không?

Câu trả lời:


4

Yêu cầu : được không đóng kín chống lại bổ sung.HAL

Ý tưởng bằng chứng : Chúng tôi đã đồng ý rằng (ngôn ngữ của các palindromes trên một bảng chữ cái không đơn nhất) không có trong . Chúng tôi cho thấy . Điều này chỉ hoạt động cho loại 1 (vì loại 2 có thể chấp nhận ); bằng chứng có thể được điều chỉnh cho phù hợp với loại 2, xem bên dưới.H A L ¯ E P A LH A L E P A LEPALHALEPAL¯HAL
EPAL

Bằng chứng : Lưu ý rằng

EPAL¯={vw:|v|=|w|,vwR} {w:|w|2N+1}

Chúng tôi xây dựng một máy tự động heap min với hai ký hiệu heap hoạt động như thế này:b<a

  • Ở trạng thái bắt đầu, quyết định thời gian không xác định thời gian đầu vào là chẵn.
  • Trên đường dẫn không bằng phẳng, sử dụng điều khiển hữu hạn để chấp nhận đầu vào khi và chỉ khi độ dài của nó là số lẻ.
  • Trên đường dẫn chẵn, hãy tiến hành như sau:
    v1  vi+a vi+1  vn+b wn  wi+1b wi  w1a
    • Bắt đầu bằng cách thêm một để heap cho mỗi biểu tượng đọc.a
    • Tại một vị trí không xác định, xác định ký hiệu hiện tại trong điều khiển hữu hạn và bắt đầu thêm một (và không ) để chất đống cho mọi ký hiệu đọc.ba
    • Tại một vị trí không xác định xác định, dừng thêm các ký hiệu và tiêu thụ một cho mỗi ký hiệu đầu vào.b
    • Khi tất cả được tiêu thụ, so sánh biểu tượng hiện tại với biểu tượng được lưu trữ trong điều khiển. Nếu chúng không bằng nhau, tiếp tục; khác từ chối đầu vào.b
    • Tiêu thụ một mỗi biểu tượng đầu vào. Nếu heap trống cùng lúc đầu vào kết thúc, chấp nhận từ; từ chối khác.a

Máy tự động min-heap được mô tả chấp nhận . Như bổ sung của nó, , không có trong , chúng tôi đã chứng minh yêu cầu này.EPAL¯EPALHAL

Lưu ý: Bằng chứng có thể được thực hiện theo cách tương tự với (có trong ) và bổ sung. Điều này mở rộng kết quả trên cho loại 2.C S LH A L{www{a,b}}CSLHAL


+1 Câu trả lời rất hay, cho loại tự động heap heap loại 1 (định nghĩa ban đầu). Với điều này, với lý lẽ tương đối đơn giản mà tôi nghĩ cho thấy rằng các ngôn ngữ được chấp nhận bởi automata loại 1 min-heap là liên kết wrt kín, chúng ta cũng biết rằng bộ ngôn ngữ được chấp nhận bởi automata loại 1-heap không bị đóng dưới giao lộ hoặc khác biệt, từ các đối số đơn giản tương tự. Tôi sẽ cho điều này một ngày hoặc lâu hơn và sau đó chấp nhận, chỉ để cho người khác có cơ hội ghé thăm và, có thể, cung cấp các câu trả lời khác ... Ngoài ra, còn về automata loại 2 min-heap (tức là phiên bản tự nhiên hơn bạn đề nghị)?
Patrick87

Wow, anh bạn, bạn là một anh chàng lạnh lùng.
Patrick87
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.