Mật độ tiệm cận của ngữ pháp không ngữ cảnh mơ hồ (CFGs)


9

Tỷ lệ CFG mơ hồ trên tất cả các CFG là gì?

Vì cả hai bộ đều vô hạn, tỷ lệ này không được xác định rõ. Nhưng những gì về mật độ tiệm cận :

limn# ambiguous CFG of size<n# CFG of size<n

trong đó các ký hiệu đầu cuối và không đầu cuối đến từ một bộ đếm cố định.

Kích thước của một ngữ pháp là bất kỳ khái niệm hợp lý nào về kích thước cho ngữ pháp, ví dụ

  1. tổng số lần xuất hiện của các biến và thiết bị đầu cuối trong quy tắc sản xuất, hoặc
  2. tổng số lần xuất hiện của biến hoặc
  3. tổng số quy tắc sản xuất, hoặc
  4. số lượng các biến khác nhau.

(Tôi cho rằng định nghĩa về kích thước sẽ không ảnh hưởng đến câu trả lời.)


3
Bên cạnh đó, các khái niệm sau đây về kích thước CFG đã được xem xét trong tài liệu: Đối với các khái niệm về kích thước ngữ pháp, sau đây đã xuất hiện trong tài liệu. (1) Tổng số lần xuất hiện của các biến và thiết bị đầu cuối ở cả hai phía của tất cả các sản phẩm trong ngữ pháp. (2) Số lần xuất hiện biến đổi ở cả hai phía của tất cả các sản phẩm trong ngữ pháp. (3) Số lượng sản phẩm trong ngữ pháp. (4) Số lượng các biến khác biệt trong ngữ pháp.
Martin Berger

1
Xem ví dụ: S. Ginsburg, N. Lynch, Độ phức tạp về kích thước trong các hình thức ngữ pháp không ngữ cảnh. J. Gruska, Về kích thước của ngữ pháp không ngữ cảnh. J. Gruska, Sự phức tạp và không rõ ràng của các ngữ pháp và ngôn ngữ không có ngữ cảnh. A. Kelemenova, Độ phức tạp của các ngữ pháp dạng thông thường.
Martin Berger

1
@Martin, nếu một người không cẩn thận thì có thể có vô số ngữ pháp khác nhau về cú pháp có kích thước nhất định và tỷ lệ sẽ không có ý nghĩa. Cách an toàn là đếm chiều dài bit của một số mã hóa ngữ pháp cố định.
Kaveh

1
Bạn có thể muốn xác định mật độ tiệm cận là tỷ lệ logarit của các đại lượng tương ứng, vì cả hai đại lượng đều theo cấp số nhân, có thể với các cơ sở khác nhau.
bánh bao mobius

1
logdensity=log(#unambiguousCFGs)/log(#CFGs)1.5n2nlog1.52

Câu trả lời:


4

SaSaaSSSa

Σ

Σ={0,1}{0,1,;,.}ϵ

{0,1,;,.}.00;00..00;0.


SSSa

Nhưng cũng không phải là trường hợp, khi kích thước (CFG) tăng lên, số lượng thiết bị đầu cuối và không thiết bị đầu cuối thường tăng, vì vậy chúng tôi cần nhiều bit hơn để đại diện cho chúng, do đó chúng tôi cần nhiều bit hơn để thể hiện các quy tắc riêng lẻ. Vì vậy, số lượng CFG không rõ ràng vì những lý do tầm thường (ví dụ: chỉ có một quy tắc phù hợp với kích thước bị ràng buộc) cũng tăng lên.
Martin Berger

@Martin Nó phụ thuộc vào mã hóa. Có lẽ bạn có thể đưa ra một mã hóa hỗ trợ cho yêu cầu của mình, ví dụ nếu kích thước bảng chữ cái phát triển cùng với kích thước ngữ pháp. Mã hóa của tôi sử dụng kích thước bảng chữ cái không đổi, vì vậy hiệu ứng này không xảy ra.
Yuval Filmus

@MartinBerger Đó là một điểm hợp lệ về việc tăng số lượng ký hiệu đầu cuối và không đầu cuối khi chúng tôi tăng kích thước ngữ pháp. Đối với các trường hợp sử dụng như ngôn ngữ lập trình, điều đó có ý nghĩa.
user18064

@ user18064 Ngôn ngữ lập trình thường sử dụng bảng chữ cái có kích thước không đổi, trong hầu hết các trường hợp là tập hợp con của ASCII. Tôi không biết bất kỳ ngôn ngữ thực tế nào với kích thước bảng chữ cái không giới hạn, mặc dù người ta có thể dễ dàng định nghĩa chúng.
Yuval Filmus
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.