Bằng chứng về thuật toán của Brzozowski để giảm thiểu DFA?


7

Thuật toán của Brzozowki được trích dẫn rộng rãi. Một số câu hỏi ở đây đưa ra ví dụ hoặc thảo luận về sự phức tạp của nó. Nhưng tôi đã không thể tìm thấy một bằng chứng chính xác cho thuật toán. Làm thế nào để chúng tôi chứng minh nó đúng? Bất kỳ bằng chứng nào có thể tiếp cận với sinh viên CS sẽ rất được hoan nghênh.


3
Chứng minh điều đó? Tôi thậm chí không thể đánh vần nó.
David Richerby

Câu trả lời:


9

Bằng chứng về kết quả của Brzozowski là kỹ thuật, nhưng không phức tạp lắm. Trong thực tế, chúng ta chỉ phải xem xét một chuỗi xác định đảo ngược, để có được kết quả tối thiểu mà chúng ta muốn. (Chuỗi đầu tiên của xác định đảo ngược dẫn đến một FSA xác định cho sự đảo ngược của ngôn ngữ gốc; bằng chứng tối thiểu là cho xác định đảo ngược thứ hai.)

Đầu tiên cần một cái nhìn tốt về các automata khác nhau có liên quan. Và thần kinh thép.

Việc xây dựng Brzozowski. Đặt là một máy tự động xác định cho ngôn ngữ . Chúng tôi giả định rằng tất cả các trạng thái của đều có thể truy cập được từ trạng thái ban đầu .A=(Q,Σ,δ,q0,F)L=L(A)Qq0

Trong bước đầu tiên, người ta đảo ngược máy tự động: tất cả các cạnh được đảo ngược, và trạng thái cuối cùng và cuối cùng được hoán đổi. Một cách không chính thức, chúng tôi nhận được automaton .rev(A)=(Q,Σ,δ1,F,q0)

Trong bước thứ hai, người ta xác định máy tự động thu được, bằng cách xây dựng tiêu chuẩn, nhưng chỉ giữ các trạng thái có thể tiếp cận. Chúng tôi nhận được . Các trạng thái của là tập hợp các trạng thái cho : ; trạng thái ban đầu bao gồm các trạng thái ban đầu cho , là trạng thái cuối cùng trong : ; các quốc gia cuối cùng trong là các quốc gia có chứa một trạng thái cuối cùng cho : iff .A=det(rev(A))=(Q,Σ,δ,q0,F)Arev(A)Q2Qrev(A)Qq0=FArev(A)UFq0U

Chìa khóa của bằng chứng là mối quan hệ quan trọng sau đây giữa automata và .AA

nhập mô tả hình ảnh ở đây

Basic Observation: khi và chỉ khi .qδ(X,wR)δ(q,w)X

Bằng chứng (chỉ một mặt). khi và chỉ khi tồn tại một trạng thái trong và một đường đi từ đến trong với nhãn . Nhưng điều đó có nghĩa là có một đường dẫn từ đến với nhãn trong hoặc ; do đó . kết thúc bằng chứng.qδ(X,wR)pXpqrev(A)wRqpwAδ(q,w)=pδ(q,w)X

Như đã thông báo, điều này được sử dụng để chứng minh tài sản thiết yếu chúng ta cần.

Thuộc tính: là tối thiểu (và xác định cho ).ALR

Bằng chứng. Đặt và là hai trạng thái trong không thể phân biệt được. Điều này có nghĩa là với bất kỳ chuỗi chúng ta có iff . Chúng tôi cho thấy rằng bây giờ và bằng nhau.UVAwRδ(U,wR)Fδ(V,wR)FUV

Bằng cách xây dựng chúng ta có thể định nghĩa lại tính không thể phân biệt là iff .Fδ(U,wR)q0δ(V,wR)q0

Áp dụng các quan sát cơ bản, và chúng tôi có iff .δ(q0,w)Uδ(q0,w)V

Từ đẳng thức này, theo sau, vì tất cả các trạng thái trong được giả sử là có thể truy cập được, do đó, đối với bất kỳ trạng thái trong hoặc có một chuỗi sao cho . kết thúc bằng chứng.U=VQpUVwp=δ(q0,w)

Nhưng ngay cả sau khi chứng minh, kết quả vẫn là phép thuật thực sự!

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.