Có những cách khác để mô tả các ngôn ngữ chính thức ngoài ngữ pháp?


22

Tôi đang tìm kiếm các lý thuyết toán học liên quan đến việc mô tả các ngôn ngữ chính thức (bộ chuỗi) nói chung và không chỉ là hệ thống phân cấp ngữ pháp.


Lưu ý rằng có rất nhiều, nhiều loại ngữ pháp vượt ra ngoài những Chomsky cổ điển, ví dụ nhiều , kết hợpchiều dài phụ thuộc văn phạm tiếng bối cảnh miễn phí, tương ứng (dễ dàng googlable).
Raphael

Tìm thấy một số bảng Wikipedia
Anton

Câu trả lời:


14

Có rất nhiều khả năng. Những người khác đã đề cập đến automata cung cấp một lựa chọn phong phú. Cũng xem xét các khung sau:

  1. Một số ngôn ngữ có thể được định nghĩa trực tiếp bởi (đồng) định nghĩa quy nạp . Chẳng hạn, điểm cố định nhỏ nhất của
    là ngôn ngữ tương tự như một trong những mô tả bởi(bmột|một)*, các fixpoint lớn nhất là(bmột|một)ω. Lưu ý rằng một định nghĩa như vậy cũng có thể được viếtdưới dạngquy tắctính toán hoặcsuy luận:a εLwLawLawLbawLa
    (baa)(baa)ω
    aε,waw,awbawa

  2. Các từ xác định cấu trúc từ có thể được sử dụng làm mô hình của công thức logic . Về cơ bản, mọi lời định nghĩa lĩnh vực vị trí của nó , predicates P một : D { 0 , 1 } sao cho P một ( i ) w i = một cho tất cả một Σ , một vị ngữ < đó là < từ NDw={1,,n}Pa:D{0,1}Pa(i)wi=aaΣ<<N giới hạn ở và một vị từ suc : D w × D w{ 0 , 1 } đó là đúng khi và chỉ khi tham số thứ hai là sự kế thừa trực tiếp của nắm tay. Vì vậy, ví dụ, nếu w = a a b a b a a b thìDwsuc:Dw×Dw{0,1}
    w=aababaab
    trong thực tế, đâybậc nhất công thứcđịnh nghĩa --- qua các thiết lập của tất cả các cấu trúc từ đó thực hiện nó --- cùng một ngôn ngữ như(bmột|một)*. Tương ứngω-language(bmột|một)ωđược mô tả bởicông thức LTLaSwi.j. (Pb(i)  suc(i,j))¬Pb(j);a
    (baa)ω(baa)ω
    số tương đồng giữa các lớp ngôn ngữ cổ điển và logic nhất định được gọi. Ví dụ,FOtương ứng với ngôn ngữ sao miễn phí, yếuMSOsang các ngôn ngữ thường xuyên vàMSOđểWngôn ngữ -regular. Xemở đâyđể tham khảo.a(Pb(¬Pb))a
    ω

  3. ΣX={x1,x2,}p(ΣX)+H={σσ:XΣ}p
    aL(p)={σ(p)σH}.a
    σ
    L(x1abbax1)={wabbaww{a,b}}
    Lưu ý rằng chúng tôi cho phép thay thế để xóa các biến; một số thuộc tính của lớp ngôn ngữ mẫu rất khác nhau để xóa so với thay thế không xóa. Ngôn ngữ mẫu được đặc biệt quan tâm trong học tập theo phong cách Vàng .


5

Bạn nên có một cái nhìn về lý thuyết automata . Có rất nhiều tài liệu về nó.

Ví dụ, bạn có thể định nghĩa một ngôn ngữ thông thường với một máy tự động hữu hạn không xác định có các cạnh được gắn nhãn: một chuỗi thuộc về ngôn ngữ nếu máy tự động có thể theo các chuyển đổi được gắn nhãn bởi các ký tự của nó và dừng ở trạng thái cuối cùng.

Ngoài ra, một ngữ pháp không ngữ cảnh có thể được nhận ra bởi một máy tự động đẩy xuống .

Một cách khác để xác định ngôn ngữ là bằng máy Turing .


5

Từ hệ thống phân cấp Chomsky, có bốn loại ngôn ngữ chính thức (mỗi loại là một tập hợp con của các ngôn ngữ sau nó):

Một ngôn ngữ chính thức thông thường có thể được mô tả bởi:

  1. Ngữ pháp thông thường
  2. Máy tự động hữu hạn (Xác định / Không xác định)
  3. Biểu hiện thông thường

1., 2. và 3. là tương đương và từ một trong số đó, bạn có thể xây dựng những cái khác.

Một ngôn ngữ chính thức không ngữ cảnh có thể được mô tả bởi:

  1. Ngữ pháp không ngữ cảnh
  2. Máy tự động đẩy xuống

Ngoài ra 1. và 2. là tương đương.

Một ngôn ngữ chính thức nhạy cảm theo ngữ cảnh có thể được mô tả bởi:

  1. Máy tự động giới hạn tuyến tính (máy Turing với băng hạn chế)

Một ngôn ngữ chính thức đệ quy có thể được mô tả bởi:

  1. Tổng số máy Turing

Và tất cả các lớp ngôn ngữ khác?
Raphael

Còn những ngôn ngữ không đẳng cấp?
Dave Clarke

Chomsky không nói đây là những loại ngôn ngữ duy nhất - chúng chỉ là bốn loại mà anh ấy thấy quan trọng, và chúng tôi vẫn thấy chúng quan trọng, nhưng có nhiều loại khác.
Revierpost

5

Ngoài ra với các câu trả lời khác, người ta có thể mô tả và phân loại các ngôn ngữ theo "thuộc tính" và các thuộc tính đóng. Ví dụ, thật hợp lý khi nói về AFL nhỏ nhất được tạo bởi một số ngôn ngữ. Một nơi tốt để bắt đầu tìm hiểu về loại mô tả này là cuốn sách này , mặc dù có thể khá khó để tìm một bản sao khó của nó.

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.