Là sự đảo ngược của một DFA tối thiểu cũng tối thiểu?


10

Câu hỏi là khá nhiều trong tiêu đề. Có khi nào một ngôn ngữ có thể được chấp nhận bởi một DFA tối thiểu với n trạng thái, nhưng L R , sự đảo ngược của L , có thể được chấp nhận bởi một DFA với m trạng thái, trong đó m < n ?LnLRLmm<n


3
Mặt trái của DFA thậm chí không nhất thiết mang tính quyết định. Một DFA chấp nhận regex AAA + có trạng thái đầu cuối với hai mũi tên hướng vào có cùng nhãn.
Ian

Câu trả lời:


7

DFA tối thiểu chấp nhận sự đảo ngược của ngôn ngữ có thể nhỏ hơn. Xét ngôn ngữ hữu hạn Các từ ϵ , 0 , 1 , 2 , 00 , 01 , 02 , 11 , 12 , 22 , 000 , 001

L= =(0+1)22+(0+2)21+(1+2)20.
ε,0,1,2,00,01,02,11,12,22,000,001là không tương đương, do đó, bất kỳ DFA nào cho yêu cầu ít nhất 12 trạng thái; trong thực tế, có một DFA với chính xác 12 tiểu bang. Ngôn ngữ ngược L R = 2 ( 0 + 1 ) 2 + 1 ( 0 + 2 ) 2 + 0 ( 1 + 2 ) 2 được DFA chấp nhận chỉ với 9 trạng thái: trạng thái ban đầu, trạng thái tương ứng với 0 , 1 ban đầu , 2 , trạng thái tương ứng với 0 ban đầu ( 1 + 2 ) ,L
LR= =2(0+1)2+1(0+2)2+0(1+2)2
0,1,2 , trạng thái chấp nhận và trạng thái không thành công; đây cũng là tối ưu DFA, vì ε , 0 , 1 , 2 , 01 , 12 , 20 , 011 , 000 là inequivalent.0(1+2),1(0+2),2(0+1)ε,0,1,2,01,12,20,011,000

Tóm lại, các DFA tối thiểu cho đòi hỏi 12 quốc gia, trong khi một cho L R đòi hỏi chỉ có 9 tiểu bang.LLR

LLR


Cảm ơn! Tôi bằng cách nào đó đã nhận ra rằng bạn có thể đảo ngược DFA và (trực tiếp) lấy lại DFA, tôi nghĩ rằng tôi đã nhầm lẫn với bổ sung.
jmite

1
@jmite Tôi đã bị rắm não tương tự, và đã đưa ra một bằng chứng thanh lịch bằng cách mâu thuẫn với câu trả lời sai. :) Nó bổ sung hoạt động như tôi nghĩ, không đảo ngược. Giáo sư.
Patrick87
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.