Loại ngôn ngữ nào được nhận dạng bởi automata trạng thái hữu hạn với đầu


10

Một DFA hoặc NFA đọc qua một chuỗi đầu vào với một đầu duy nhất, di chuyển từ trái sang phải. Có vẻ tự nhiên khi tự hỏi về các máy trạng thái hữu hạn có nhiều đầu , mỗi đầu di chuyển qua đầu vào từ trái sang phải, nhưng không nhất thiết phải ở cùng một vị trí trong đầu vào như các đầu vào khác.

Hãy để chúng tôi xác định một máy trạng thái hữu hạn với k đầu như sau:

Một NFA đầu k là một tuple (Q,Σ,Δ,q0,F) , trong đó:

  • Như thường lệ, Q là một tập hợp hữu hạn của các quốc gia, Σ là một bảng chữ cái hữu hạn, q0 là một trạng thái ban đầu, và F là một tập hợp của các quốc gia chấp nhận. Hãy Σε: =Σ{ε} biểu thị tập hợp ký tự bao gồm cả chuỗi rỗng.

  • ΔQ×(Σε)k×Q là mối quan hệ chuyển tiếp: một sự chuyển tiếp(p,(σ1,σ2,Giáo dục,σk),q) có nghĩa rằng, nếu máy ở trạng tháip , nó có thể đọc trong(σ1,σ2,Giáo dục,σk)σTôi là ký tự tiếp theo cho đầuTôi (hoặcε nếu đầu mà không di chuyển), và sau đó chuyển sang trạng tháiq .

Việc chạy loại máy này (bất kỳ đường dẫn nào bắt đầu từ trạng thái bắt đầu và kết thúc ở trạng thái chấp nhận) dẫn đến không phải một chuỗi, mà là k chuỗi khác nhau (được hình thành bằng cách nối các ký tự dọc theo đường chạy). Sau đó, chúng tôi nói rằng việc chạy là hợp lệ nếu các chuỗi k là giống hệt nhau.

Các ngôn ngữ của máy là tập hợp các chuỗi w như rằng có tồn tại một hoạt động hợp lệ của máy mà k chuỗi sản xuất cùng chạy được tất cả bằng w .

Câu hỏi: Lớp ngôn ngữ được công nhận bởi các máy như vậy là gì? Nó đã được nghiên cứu?


Một quan sát đầu tiên là các máy như vậy tạo ra một lớp lớn hơn các ngôn ngữ thông thường. Ví dụ, ngôn ngữ

{mộtnbn|nN}
được công nhận bởi sau 2 -head NFA với 3 trạng thái: Ví dụ NFA 2 đầu

(Ở đây, một cạnh dán nhãn với σ1/σ2 biểu thị một sự chuyển tiếp của mẫu (p,(σ1,σ2),q) .)

Tuy nhiên, một quan sát thứ hai là không phải tất cả các ngôn ngữ không ngữ cảnh đều được công nhận; ví dụ, dường như ngôn ngữ Dyck không thể được nhận ra bởi các máy k head này.


2
Nhìn một chút tôi thấy automata nhiều đầu đang được đề cập trong arxiv.org/abs/0906.3051 : định nghĩa của chúng là về automata hai chiều, nhưng chúng cũng định nghĩa biến thể một chiều. Không có cái gì hữu ích trong bài báo đó? hoặc trong tài liệu tham khảo của nó, ví dụ: scazedirect.com/science/article/pii/S0304397509006288
a3nm

2
Cũng lưu ý rằng họ có thể nhận ra các ngôn ngữ không phải CF: DFA 3 đầu có thể nhận ra ; một nguồn tham khảo tốt: Markus Holzer và Martin Kutrib; Tự động hữu hạn nhiều đầu: Đặc điểm, khái niệm và vấn đề mởmộtnbncn#
Marzio De Biasi

2
Cảm ơn các tài liệu tham khảo trên giấy - đây chỉ là một sự tò mò nhàn rỗi và tôi đã không kiểm tra tài liệu. Nếu không có ai làm, tôi sẽ đọc một số tài liệu và trả lời với một câu trả lời tóm tắt các kết quả đã biết.
6005

Câu trả lời:


5

Mô hình này là một trong những mô hình chuẩn trong lý thuyết automata và nó đã được một số nhà nghiên cứu kiểm tra.

Các tài liệu tham khảo được đưa ra trong nhận xét đầu tiên là điểm khởi đầu rất tốt.

Khi đầu là hai chiều, các lớp ngôn ngữ được nhận dạng bởi các mô hình như vậy giống hệt với các lớp không gian logarit. Tuy nhiên, khi đầu là một chiều, theo hiểu biết của tôi, chúng tôi không có đặc điểm chính xác tương tự, nhưng, chúng tôi có kết quả không thể so sánh nhất định và một số phân cấp dựa trên số lượng đầu.

Nếu bạn quan tâm, tôi cũng khuyên bạn nên kiểm tra các phiên bản lượng tử xen kẽ, xác suất và lượng tử của automata đa đầu. Các mô hình như vậy có thể khá thú vị ngay cả khi sử dụng một đầu duy nhất, vì tính toán được chia thành các đường khác nhau và sau đó, trong mỗi đường dẫn, đầu có thể truy cập vào các phần khác nhau của đầu vào.

Một số tài liệu tham khảo chung:

Luân phiên

Tính toán xác suất

Tính toán xác suất và lượng tử

Các mô hình liên quan: automata đa truy cập và automata sử dụng sỏi.

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.