Máy tự động hữu hạn xác định (DFA) là một mô hình máy trạng thái có khả năng chấp nhận tất cả và chỉ các ngôn ngữ thông thường. Các DFA có thể được (và thường là) được định nghĩa theo cách mà mỗi trạng thái phải cung cấp một số chuyển đổi cho tất cả các thành phần của bảng chữ cái đầu vào; nói cách khác, hàm chuyển đổi phải là hàm (tổng).
Hãy tưởng tượng những gì chúng ta sẽ gọi là một máy tự động hữu hạn xác định gấp đôi (DDFA). Nó được định nghĩa tương tự như DFA, với hai trường hợp ngoại lệ: thứ nhất, thay vì chuyển đổi dẫn từ trạng thái này sang trạng thái khác cho mọi ký hiệu đầu vào có thể, nó phải dẫn đến hai trạng thái riêng biệt; thứ hai, để chấp nhận một chuỗi, tất cả các đường dẫn tiềm năng phải đáp ứng một hoặc một trong các điều kiện sau:
- Tất cả các đường dẫn tiềm năng thông qua DDFA đều dẫn đến trạng thái chấp nhận (chúng tôi sẽ gọi đây là DDFA loại 1).
- Tất cả các đường dẫn tiềm năng thông qua DDFA đều dẫn đến trạng thái chấp nhận tương tự (chúng tôi sẽ gọi đây là DDFA loại 2).
Bây giờ cho câu hỏi của tôi:
Những ngôn ngữ nào làm DDFA loại 1 và loại 2 chấp nhận? Cụ thể, đó là trường hợp , L (DDFA) = L (DFA) hay L (DDFA) \ subsetneq L (DFA) ? Trong trường hợp L (DDFA) \ neq L (DFA) , có mô tả dễ dàng về L (DDFA) không?
Bằng chứng (hoặc ít nhất là các bản phác thảo xác thịt vừa phải) được đánh giá cao, nếu chúng không quá phức tạp.