Phân cấp trong các ngôn ngữ thông thường


14

Có bất kỳ hệ thống phân cấp "đẹp" nào được biết đến (có thể là hữu hạn) trong lớp ngôn ngữ thông thường không? Ở đây, các lớp trong mỗi hệ thống phân cấp nắm bắt tính biểu cảm / sức mạnh / độ phức tạp khác nhau. Ngoài ra, tư cách thành viên của mỗi lớp được "thể hiện" một cách độc đáo bởi một số yếu tố (không giống như vấn đề chiều cao sao có thể có vấn đề).LL0L1L2L

Cảm ơn bạn!


3
Một hệ thống phân cấp tự nhiên là một thứ bậc gây ra bởi số lượng trạng thái.
Marzio De Biasi

9
Quy tắc chính là hệ thống phân cấp độ sâu điểm, được đặc trưng bởi sự xen kẽ định lượng trong FO (<). Về cơ bản, xen kẽ định lượng (Boolean of) cung cấp cho bạn các lớp và phân cấp mạnh mẽ.
Michaël Cadilhac

Cả hai dường như là câu trả lời hoàn toàn tốt cho tôi ...
Joshua Grochow

4
Ngoài ra còn có chiều cao sao .
Revierpost

Bạn có ý nghĩa gì bởi một hệ thống phân cấp "tốt đẹp" so với "tư cách thành viên của mỗi lớp" được thể hiện một cách độc đáo bởi một số yếu tố "?" Bên ngoài các ngôn ngữ thông thường, hệ thống phân cấp đa thức dường như được coi là một hệ thống phân cấp tốt mặc dù thực tế là thành viên và ngay cả sự tồn tại của một hệ thống phân cấp thực sự vẫn còn phải được chứng minh.
J.-E. Pin

Câu trả lời:


15

Dưới đây là danh sách một số thứ bậc quan tâm, một số trong đó đã được đề cập trong các câu trả lời khác.

  1. Hệ thống phân cấp

Một ngôn ngữ là một sản phẩm đánh dấu của L 0 , L 1 , ... , L n nếu L = L 0 một 1 L 1một n L n cho một số chữ cái một 1 , ... , một n . Hệ thống phân cấp liên kết được xác định bằng cách xen kẽ các phép toán Boolean và phép toán đa thức (= union và sản phẩm được đánh dấu). Các hệ thống phân cấp Straubing-Thérien (điểm bắt đầu { , Một * } )LL0,L1,,LnL=L0a1L1anLna1,,an{,A}) hệ thống phân cấp dot-sâu (điểm bắt đầu là thuộc loại này, nhưng bạn có thể lấy điểm khởi đầu khác, đặc biệt là ngôn ngữ nhóm (ngôn ngữ được chấp nhận bởi một automaton hoán vị).{,{1},A+,A}) 

  1. Hệ thống phân cấp chiều cao sao

Mẫu chung là đếm số lượng tối thiểu các ngôi sao lồng nhau cần thiết để thể hiện một ngôn ngữ bắt đầu từ các chữ cái, nhưng có thể có một số biến thể, tùy thuộc vào các toán tử cơ bản mà bạn cho phép. Nếu bạn chỉ cho phép kết hợp và sản phẩm, bạn xác định chiều cao sao bị hạn chế, nếu bạn cho phép kết hợp, bổ sung và sản phẩm, bạn xác định chiều cao sao (tổng quát) và nếu bạn cho phép kết hợp, giao cắt và sản phẩm bạn xác định chiều cao sao trung gian . Có các ngôn ngữ của ngôi sao bị giới hạn cho mọi n và trên có thể tính toán hiệu quả chiều cao sao của một ngôn ngữ thông thường nhất định. Đối với chiều cao sao, chiều cao sao 0 là có thể quyết định ( ngôn ngữ không có sao), tồn tại các ngôn ngữ có chiều cao sao 1nn01, nhưng không có ngôn ngữ của ngôi sao chiều cao được biết đến! Không có kết quả được biết đến trên chiều cao sao trung gian. Xem bài viết này để biết tổng quan.2

  1. Hệ thống phân cấp logic

Có rất nhiều trong số họ, nhưng một trong những điều quan trọng nhất là cái gọi là thứ bậc. Một công thức được cho là một Σ n -formula nếu nó tương đương với một công thức có dạng Q ( x 1 , . . . , X k ) φ nơi φ là miễn phí lượng hóa và Q ( x 1 , . . . , X k ) là một chuỗi của nΣnΣnQ(x1,...,xk)φφQ(x1,...,xk)nkhối quantifiers như vậy mà khối đầu tiên chỉ chứa quantifiers hiện sinh (lưu ý rằng khối đầu tiên này có thể rỗng), khối thứ hai quantifiers phổ vv Tương tự, nếu được hình thành của n khối quantifiers bắt đầu với một khối lượng hóa phổ quát (mà một lần nữa có thể là trống) xen kẽ, chúng ta nói rằng φ là một Π n -formula. Biểu thị bởi Σ n (resp. Π n ) lớp ngôn ngữ mà có thể được xác định bởi một Σ n -formula (resp. Một ΠQ(x1,...,xk)nφΠnΣnΠnΣn -formula) và bởi B Σ n việc đóng Boolean của Σ n-ngôn ngữ. Cuối cùng, chúng ta hãy Δ n = Σ npi n . Tất nhiên, bức tranh chung trông như thế này Một người cần tất nhiên để xác định chữ ký. Thường có một vị một cho mỗi chữ cái (và một x phương tiện có một lá thư một ở vị trí x trong từ). Sau đó, người ta có thể thêm một biểu tượng nhị phân <ΠnBΣnΣnΔn= =ΣnΠnnhập mô tả hình ảnh ở đâymộtmộtxmộtx<(hệ thống phân cấp tương ứng là hệ thống phân cấp Straubing-Thérien) và cũng là biểu tượng kế tiếp (hệ thống phân cấp tương ứng là hệ thống phân cấp độ sâu chấm). Các khả năng khác bao gồm một vị từ , để đếm modulo n , v.v ... Xem lại bài viết này để biết tổng quan.Modn

  1. Hệ thống phân cấp Boolean

Mô hình chung (không dành riêng cho các ngôn ngữ thông thường) là do Hausdorff. Đặt là một lớp các ngôn ngữ chứa tập hợp trống và tập hợp đầy đủ và được đóng dưới giao điểm hữu hạn và liên kết hữu hạn. Hãy D n ( L ) là lớp của tất cả các ngôn ngữ có dạng X = X 1 - X 2 + ± X n nơi X iLX 1X 2X 3X n . TừLDn(L)

X= =X1-X2+±Xn
XTôiLX1X2X3Xn, các lớp D n ( L ) định nghĩa một hệ thống phân cấp và công đoàn của họ là việc đóng cửa Boolean của L . Một lần nữa, điểm khởi đầu khác nhau là có thể.Dn(L)Dn+1(L)Dn(L)L
  1. Sự phức tạp của nhóm

Một kết quả của Krohn-Rhodes (1966) nói rằng mọi DFA đều có thể được mô phỏng bằng một loạt các thiết lập lại (còn gọi là flip-flop) automata và automata có các nửa nhóm chuyển tiếp là các nhóm hữu hạn. Độ phức tạp nhóm của một ngôn ngữ là số lượng nhóm ít nhất tham gia vào quá trình phân tách DFA tối thiểu của ngôn ngữ. Các ngôn ngữ có độ phức tạp chính xác là các ngôn ngữ không có sao và tồn tại các ngôn ngữ có độ phức tạp bất kỳ. Tuy nhiên, không có đặc tính hiệu quả của các ngôn ngữ phức tạp 1 được biết đến.01

  1. Hệ thống phân cấp được kế thừa từ độ phức tạp của mạch

[1]MộtC0RegMộtCC(q)= ={L{0,1}*|LMộtC0MÔiDq} . Nếu q chia q ' , sau đó A C C ( q ) A C C ( q ' ) . Một câu hỏi thú vị là để biết liệu Một C C ( q ) R e gMÔiDq= ={bạn{0,1}*||bạn|10modq}qq'MộtCC(q)MộtCC(q')MộtCC(q)Reglà quyết định cho bất kỳ .q

Barrington, David A. Trộn; Compton, Kevin; Quấn, Howard; Thérien, Denis. Ngôn ngữ thông thường trong N C 1 . J. Tính toán. Hệ thống khoa học. 44(1992)[1]NC1


12

Mở rộng nhận xét: một hệ thống phân cấp tự nhiên là thứ bậc được tạo ra bởi số lượng trạng thái của DFA.

Chúng ta có thể định nghĩa Ln= ={L| tồn tại một trạng thái DFA D st L(D)= =L}

( , | Q | = n )D= ={Q,Σ,δ,q0,F}|Q|= =n

Rõ ràng (chỉ cần sử dụng trạng thái chết)LnLn+1

Để hiển thị sự bao gồm đúng chúng ta chỉ cần chọn ngôn ngữ: L n + 1 = { a ii n } L n + 1LnLn+1Ln+1= ={mộtTôi|Tôin}Ln+1

Rất không chính thức: DFA (tối thiểu) nhận ra phải là "chuỗi trạng thái" có độ dài n + 1 : q 0 a q 1 a . . . a q n , F = { q n }q n a q n ( q n có vòng lặp tự). Vì vậy, trạng thái n + 1 là đủ để chấp nhận{mộtTôi|Tôin}n+1q0aq1a...aqnF={qn}qnmộtqnqnn+1 . Nhưng mỗi con đường chấp nhận từ q 0 đến một trạng thái cuối cùng q f là nghiêm ngắn hơn n + 1 phải chấp nhận một số một i với i < n mà không thuộc về L n + 1 , do đó, một DFA với n hoặc tiểu bang ít không thể chấp nhận L n + 1 .Ln+1q0qfn+1mộtTôiTôi<nLn+1nLn+1


8

Gần đây tôi đã xem qua bài viết này có thể đưa ra một ví dụ khác có liên quan (xem câu cuối cùng của bản tóm tắt):

Guillaume Bonfante, Florian Deloup: Chi của ngôn ngữ thông thường.

Từ bản tóm tắt: Bài viết định nghĩa và nghiên cứu chi của tự động xác định trạng thái hữu hạn (FSA) và các ngôn ngữ thông thường. Thật vậy, một FSA có thể được xem như một biểu đồ cho thấy khái niệm về chi phát sinh. Đồng thời, một FSA có một ngữ nghĩa thông qua ngôn ngữ cơ bản của nó. Sau đó, điều tự nhiên là tạo ra một kết nối giữa các ngôn ngữ và khái niệm về chi. Sau khi chúng tôi giới thiệu và chứng minh khái niệm về chi cho các ngôn ngữ thông thường, [...] chúng tôi xây dựng các ngôn ngữ thông thường của các chi lớn tùy ý: khái niệm về chi xác định một hệ thống phân cấp thích hợp của các ngôn ngữ thông thường.


5

Có một số hệ thống phân cấp tự nhiên cho các ngôn ngữ thông thường của các từ vô hạn, ví dụ, truyền đạt một khái niệm "độ phức tạp của ngôn ngữ", ví dụ:

  • Số thứ hạng cần thiết trong một máy tự động chẵn lẻ xác định
  • ωω

Các hệ thống phân cấp này có thể được khái quát hóa cho các ngôn ngữ thông thường của cây vô hạn, trong đó phân cấp mới xuất hiện, xem ví dụ câu trả lời này .

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.