Sự đồng hình thích hợp giữa các ngôn ngữ chính thức là gì?


9

Một ngôn ngữ chính thức trên một bảng chữ cái là một tập hợp con của , nghĩa là một tập hợp các từ trên bảng chữ cái đó. Hai ngôn ngữ chính thức và bằng nhau, nếu các bộ tương ứng được mở rộng bằng nhau dưới dạng tập con của . Người ta có thể sử dụng các ngôn ngữ trong lý thuyết phức tạp để chính thức hóa khái niệm "vấn đề". Người ta có thể phàn nàn rằng sự bình đẳng mở rộng "nói chung" là không thể giải quyết được, nhưng tôi tin rằng điều này sẽ sai lầm.Σ Σ * L L ' L L 'LΣΣLLLL

Tôi đang cân nhắc vấn đề sau một thời gian: Hai ngôn ngữ và trên bảng chữ cái và (trong đó , , vàL ' Σ = { một , b } Σ ' = { c , d } một b c d Một LLΣ={a,b}Σ={c,d}abcdlà các chữ cái riêng biệt) không bao giờ có thể bằng nhau, ngay cả khi chúng mô tả "chính xác" cùng một "vấn đề". Nhưng chúng nên là đẳng cấu, nếu chúng thực sự mô tả "chính xác" cùng một "vấn đề". Những gì tôi muốn biết là những khái niệm có thể có của đẳng cấu thích hợp cho lý thuyết phức tạp. Ban đầu tôi nghĩ rằng một "dịch giả" yếu về mặt tính toán như một máy trạng thái hữu hạn có thể được sử dụng để xác định các đẳng cấu được phép, nhưng điều này dường như đã bị phá vỡ đối với các bản dịch cú pháp tầm thường giữa các công thức logic tương đương. (Xem ví dụ bảng này với định nghĩa cú pháp của kép trong logic tuyến tínhA .)

Hôm nay tôi có một ý tưởng sau: Một định nghĩa về ngôn ngữ tương ứng với một "vấn đề quyết định" nhất định thường có hai phần: (1) Mã hóa các trường hợp vấn đề được phép dưới dạng chuỗi ký hiệu hữu hạn và (2) định nghĩa về " chấp nhận "các trường hợp vấn đề thuộc về ngôn ngữ. Nếu việc kiểm tra xem một chuỗi ký hiệu hữu hạn nhất định có phải là mã hóa của một trường hợp vấn đề được phép đã yêu cầu một máy tính mạnh hơn máy trạng thái hữu hạn, thì máy mạnh hơn này cũng nên được sử dụng để định nghĩa các đẳng cấu được phép.

Câu hỏi: Dòng lý luận này có bất kỳ cơ hội "giải quyết" vấn đề nào của tôi không? Vấn đề của tôi đã được giải quyết chưa, để tôi chỉ cần đọc đúng tài liệu tham khảo? Có phải vấn đề của tôi tự nó có ý nghĩa gì không, hay điều này cũng sai lầm như phàn nàn về sự bất ổn của sự bình đẳng mở rộng?


Chỉnh sửa (chưa phải là câu trả lời) Tôi nhận thấy rằng "(1) Mã hóa các trường hợp sự cố được phép dưới dạng chuỗi ký hiệu hữu hạn" đã chứa giả định (ẩn) của đầu vào được chuẩn hóa. Không có giả định này, hai chuỗi hữu hạn khác nhau có thể tương ứng với cùng một thể hiện vấn đề. Thay vì kiểm tra xem một chuỗi hữu hạn nhất định có hợp lệ hay không, việc kiểm tra có thể tạo ra đầu vào được chuẩn hóa (và ánh xạ các chuỗi không hợp lệ thành một chuỗi đặc biệt).

Cài đặt này có lợi thế là máy thực hiện kiểm tra / chuẩn hóa đã được trang bị phương tiện để chuyển đổi các chuỗi hữu hạn thành các chuỗi hữu hạn khác. Máy được phép (lớp phức tạp) cho nhiệm vụ này có thể là một phần của định nghĩa vấn đề và các hình thái (iso) sẽ sử dụng cùng một máy (lớp phức tạp). (Đề xuất "giảm nhiều lần một lần" từ nhận xét của Raphael thực sự sẽ là một khả năng cho các vấn đề trong .)P

Một nhược điểm là cách đặc tả này có thể chỉ phù hợp với các máy xác định. Các máy không xác định có thể yêu cầu các cách linh hoạt hơn để chỉ định / quyết định xem hai chuỗi đầu vào có tương ứng với cùng một thể hiện vấn đề hay không.


1
Tất cả các ngôn ngữ vô hạn (trên bảng chữ cái hữu hạn) là đẳng cấu (vì chúng có thể đếm được). Bạn cần tinh chỉnh những gì bạn muốn. Ngoài ra, theo biện pháp nào bạn nói hai vấn đề là "giống nhau"? Có thể cho rằng, việc giảm nhiều lần một lần cung cấp cho bạn một ánh xạ như bạn muốn, nhưng các vấn đề này "khác nhau" (nhưng tương tự khó) đối với nhau.
Raphael

@Raphael Tôi hơi bối rối bởi nhận xét của bạn "Bạn cần tinh chỉnh những gì bạn muốn." Câu hỏi này chính xác về khái niệm đẳng cấu mà tôi có thể "muốn" sử dụng. Đôi khi rất khó để biết những gì bạn thực sự muốn! Đối với câu hỏi nói về các ngôn ngữ mô tả "chính xác" cùng một "vấn đề", về cơ bản tôi chỉ nghĩ đến trường hợp khi xác định với và với sẽ làm cho và bằng nhau. Tiếp tục dòng lý luận này là điều ban đầu khiến tôi coi máy móc trạng thái hữu hạn là "dịch giả", điều này cuối cùng không giải quyết được vấn đề của tôi. c b d L L 'acbdLL
Thomas Klimpel

@Raphael Tôi đoán rằng đối với hầu hết các vấn đề, việc giảm nhiều lần một lần là quá mạnh về mặt tính toán cho các đẳng cấu mà tôi có trong tâm trí. Tôi không muốn sự đồng hình tính toán giải pháp cho tôi, hoặc giảm một vấn đề lý thuyết đồ thị thành một vấn đề thỏa mãn logic. Tôi chỉ muốn nó xác định hai bảng mã hơi khác nhau nhưng về cơ bản tương đương với cùng một ví dụ. Tôi không có vấn đề gì, nếu khái niệm đẳng cấu này xảy ra cũng sẽ xác định một số vấn đề lý thuyết đồ thị (mã hóa) nhất định với các vấn đề thỏa mãn logic (mã hóa) nhất định.
Thomas Klimpel

đại khái, sự phức tạp liên quan đến việc giảm được sử dụng cho mục đích này. giảm ít mạnh hơn thời gian P, ví dụ như giảm không gian nhật ký, thời gian , v.v.O(nc)
vzn

Câu trả lời:


6

Vấn đề của tôi đã được giải quyết chưa, để tôi chỉ cần đọc đúng tài liệu tham khảo?

Lý thuyết về họ ngôn ngữ trừu tượng có liên quan. Ví dụ, các hình thái được xác định bởi các bộ chuyển đổi trạng thái hữu hạn dẫn đến họ hình nón . Cuộc nói chuyện ICM ngắn của Eilenberg từ năm 1970 giải thích độc đáo khuôn khổ này, xem thêm chương 11 "Các đặc tính đóng cửa của các gia đình ngôn ngữ" từ Giới thiệu về Lý thuyết, Ngôn ngữ và Tính toán của Automata (lần xuất bản thứ nhất) của J. Hopcroft và J. Ullman từ năm 1979. Tuy nhiên , chỉ các ngôn ngữ không xác định mới phù hợp với khung 1 này . Cuối cùng, cuốn sách Lý thuyết về mã của J. Berstel và D. Perrin từ năm 1985 đã giúp tôi đưa ra các giải pháp hợp lý cho vấn đề của mình. Mã và Automatacủa J. Berstel, D. Perrin và C. Reutenauer từ năm 2009 là một phiên bản chính của cuốn sách này với phạm vi bao quát rộng hơn nhiều.

Dòng lý luận này có bất kỳ cơ hội "giải quyết" vấn đề của tôi không? Có phải vấn đề của tôi tự nó có ý nghĩa gì không, hay đây chỉ là sai lầm như ...?

Giả định rằng có một phạm trù chính xác để mô hình hóa sự đồng hình giữa các ngôn ngữ để "chính thức hóa khái niệm vấn đề" là sai lầm. Có nhiều loại khác nhau có thể thú vị trong bối cảnh của các ngôn ngữ chính thức.

Dưới đây là ba loại thú vị liên quan đến nhiều mức giảm một, sẽ được gọi là tổng , một phầnquan hệ . Đối tượng của các danh mục là các cặp của bảng chữ cái hữu hạn và ngôn ngữ của các từ trên . Đối với tổng số , các morphisms giữa đối tượng nguồn và đối tượng mục tiêu là tổng các chức năng với . Đối với một phần , các hình thái là các chức năng một phầnΣ L Σ *(Σ,L)ΣLΣΣ(Σ,L)(Σ,L)f:ΣΣL=f1(L)f:ΣΣ với , trong đó hai hàm một phần , được coi là bằng nhau (như hình thái) nếu cho tất cả các . Đối với quan hệ , các hình thái là quan hệ với và bất kỳ hai hình thái nào giữa cùng một nguồn và mục tiêu đều được coi là bằng nhau . Tập hợp các hàm hoặc quan hệ được phép có thể được giới hạn ở các "trình dịch" đơn giản khác nhau để có được các thể loại có cấu trúc đẳng cấu thú vị.L=f1(L)fgf(x)=g(x)xLRΣ×ΣL=R1(L)

  • Các đồng cấu đơn hình từ đến đưa ra một tổng thể rất cơ bản . Các đẳng cấu của thể loại này về cơ bản chỉ là các phần tử giữa và . Bất kỳ họ ngôn ngữ hợp lý nào cũng nên tôn trọng tốt hơn các đồng phân này, tức là được đóng lại dưới các đồng cấu nghịch đảo.ΣΣΣΣ
  • Các chức năng một phần được xác định bởi các trình dịch máy Turing không gian log xác định cung cấp một thể loại một phần khá tự nhiên . Nó có thể thực hiện nhiều phép biến đổi cú pháp tầm thường (như áp dụng định luật De Morgan để chuyển các phủ định sang các nguyên tử), bao gồm hình thái được xác định bởi các bộ chuyển đổi trạng thái hữu hạn chức năng 1 , và cũng có thể sắp xếp. Tuy nhiên, nó sẽ không xác định hai ngôn ngữ hoàn toàn không liên quan là đẳng cấu, bởi vì sự bình đẳng về thành phần của hai hình thái đối với một hình thái nhận dạng là một yêu cầu mạnh mẽ hơn nhiều so với việc chỉ tồn tại nhiều giảm một trong cả hai hướng.
  • Các mối quan hệ được xác định bởi các dịch giả máy Turing không gian log không định nghĩa đưa ra một thể loại quan hệ thú vị . SAT là đẳng cấu với HORNSAT trong thể loại này, nhưng đây là một câu hỏi mở cho dù TƯƠNG LAI hay bất kỳ vấn đề đồng NP hoàn chỉnh nào khác là đẳng cấu với HORNSAT.

Hai ngôn ngữ và trên bảng chữ cái và (trong đó , , và là các chữ cái riêng biệt) không bao giờ có thể bằng nhau, ngay cả khi họ mô tả "chính xác" cùng một "vấn đề". Nhưng chúng nên là đẳng cấu, nếu chúng thực sự mô tả "chính xác" cùng một "vấn đề".LLΣ={a,b}Σ={c,d}abcd

Tổng thể loại rất cơ bản được mô tả ở trên giải quyết vấn đề này.

Vấn đề trở nên thú vị hơn nếu "chính xác giống nhau" được thay thế bằng "gần giống nhau cho hầu hết các mục đích thực tế": Đặt là ngôn ngữ trên và để là ngôn ngữ trên thu được từ bằng cách thay thế , , và . Lưu ý rằng trong bất kỳ danh mục tổng nào , và không phải là đẳng cấu cho . Điều tương tự cũng đúng với các loại một phần , nếu phần "trong đó hai hàm một phầnΣ = { U , C , A , G } L 'LΣ={U,C,A,G}LΣ={0,1}LU00C01A10G11LLL=Σf, được coi là bằng nhau (dưới dạng hình thái) nếu cho tất cả "bị bỏ qua khỏi định nghĩa.gf(x)=g(x)xL

Danh mục một phần khá tự nhiên được mô tả ở trên là đủ để tạo và đẳng cấu. Sẽ thật tuyệt nếu có một danh mục cơ bản hơn (tức là hạn chế hơn) khiến chúng trở nên đồng hình. Các loại sau đây (liên tiếp hạn chế hơn) có vẻ hợp lý với tôi:LL

  • Các hàm một phần được thực hiện bởi các bộ chuyển đổi trạng thái hữu hạn rõ ràng 2 trong đó trạng thái chấp nhận duy nhất là trạng thái ban đầu. Các đẳng cấu của thể loại một phần này là (một tập hợp con) các mệnh đề giữa các mã độ dài biến có thể nhận biết được .
  • Các hàm một phần được thực hiện bởi các bộ chuyển đổi trạng thái hữu hạn xác định trong đó trạng thái chấp nhận duy nhất là trạng thái ban đầu. Các đẳng cấu của thể loại một phần này là (một tập hợp con) các mệnh đề giữa các mã tiền tố .
  • Các hàm một phần được thực hiện đồng thời bởi cả bộ chuyển đổi xác định tiến và lùi trong đó trạng thái chấp nhận duy nhất là trạng thái ban đầu. Các đẳng cấu của thể loại một phần này là (một tập hợp con) các mệnh đề giữa các mã bifix .
  • Hạn chế hơn nữa của các hàm một phần sao cho các đẳng cấu là (một tập hợp con) các mệnh đề giữa các mã khối cũng có thể có ý nghĩa.

Người ta có thể sử dụng các ngôn ngữ trong lý thuyết phức tạp để chính thức hóa khái niệm "vấn đề".

Ngay cả trước khi tôi học về lý thuyết thể loại, tôi đã tự hỏi liệu có những cách "trung thành hơn" để chính thức hóa khái niệm "vấn đề" hay không. Sau khi làm quen với lý thuyết thể loại, đôi khi tôi đã cố gắng đưa ra các giải pháp khả thi, nhưng luôn nhanh chóng từ bỏ ở vấp ngã đầu tiên (vì dù sao cũng không ai quan tâm). Tôi biết rằng Yuri Gurevich đã giải quyết một số câu hỏi liên quan, nhưng các giải pháp của anh ấy thực tế có thể áp dụng được, trong khi tôi đang tìm kiếm nhiều thứ hay ho và trừu tượng, độc lập với khả năng ứng dụng thực tế.

Hầu hết thời gian rảnh rỗi của tôi trong ba tuần qua đã đi vào cuối cùng để đạt được một số tiến bộ về vấn đề này. Thông thường thời gian là dành cho việc tìm kiếm các vấn đề gây phiền nhiễu trong các giải pháp có thể tôi có trong tâm trí. Ý thức của sự tiến bộ nảy sinh từ việc đọc sách và bài báo (cũ), và tìm hiểu nhiều khái niệm và sự kiện cơ bản về bộ chuyển đổi và bộ hợp lý. Cuối cùng tôi đã học được các khái niệm về mã tiền tố và mã bifix (trước đây là biprefix trong cuốn sách của Berstel), cho phép tôi đưa ra 3 loại hợp lý được mô tả ở trên.

Có thể khó đánh giá các danh mục (liên quan đến mã), mà không thấy một số vấn đề của các danh mục rõ ràng hơn. Một vấn đề chung là việc đóng cửa theo thành phần có thể làm cho việc xác định một lớp chức năng một phần bị hạn chế độc đáo. Một vấn đề khác liên quan đến thực tế là việc thêm một (hoặc nhân với hằng số) là một "hàm tính toán dễ dàng" nếu các chữ số của số được đưa ra theo thứ tự thấp, nhưng không phải nếu các chữ số được đưa ra lớn trật tự endian.


1 Bộ chuyển đổi trạng thái hữu hạn chức năng là bộ chuyển đổi trạng thái hữu hạn không xác định thực hiện chức năng một phần. Các chức năng bộ phận này không thể được nhận ra bởi các bộ chuyển đổi trạng thái hữu hạn xác định. Chúng có thể được nhận ra bằng các bimach xác định , nhưng chúng có thể cần quét tiến và lùi trên đầu vào, nếu chúng muốn hoạt động trong không gian .O(n)O(1)

2 Bộ chuyển đổi trạng thái hữu hạn không rõ ràng là bộ chuyển đổi trạng thái hữu hạn không xác định với nhiều nhất một đường dẫn chấp nhận cho mỗi đầu vào. Nó nhận ra một chức năng một phần, do đó nó cũng là một bộ chuyển đổi trạng thái hữu hạn chức năng. Có thể quyết định liệu một bộ chuyển đổi trạng thái hữu hạn nhất định có rõ ràng hay không.

3 Tôi không chắc tổng số và các loại quan hệ được giới thiệu ở trên thực sự hợp lý như thế nào . Tôi chỉ muốn hiển thị các lựa chọn thay thế đơn giản cho thể loại một phần . Nhiều lựa chọn thay thế khác dễ dàng được đưa ra, ví dụ như đồng quan hệ , trong đó các hình thái là quan hệ với và bất kỳ hai hình thái nào giữa cùng một nguồn và mục tiêu đều được coi là bằng nhau. L = R - 1 ( L ) - R - 1 ( Σ - L )RΣ×ΣL=R1(L)R1(Σ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.