Theo Patrick87, chiều dài bơm tối thiểu được xác định là số lần chuyển tiếp tối đa bạn có thể thực hiện trong DFA thu nhỏ mà không cần truy cập một số trạng thái hai lần. Sau đó, quy trình sẽ trở thành chuyển đổi biểu thức chính quy của bạn thành NFA, chuyển đổi NFA thành DFA, giảm thiểu DFA và đếm đường dẫn dài nhất dọc theo các cạnh được chỉ đạo mà không cần truy cập cùng một trạng thái hai lần. Để giới thiệu về chuyển đổi và giảm thiểu này, xem ví dụ miễn phí của Torben Mogensen, Basics of Compiler Design chương 2.6, 2.8.
Theo định nghĩa này,
- p = 0, vì không có hiệu ứng chuyển tiếp trong DFA giảm thiểu cho ngôn ngữ trống rỗng.
- p = 1. DFA thu nhỏ cho
(01)*
có hai trạng thái và bạn chỉ có thể thực hiện một chuyển đổi mà không phải kết thúc ở trạng thái chấp nhận ban đầu.
- p = 3. DFA thu nhỏ cho
10(11*0)*0
sẽ có trạng thái phải được truy cập hai lần cho biểu thức con (11*0)*
là một phần của đạo hàm.
- p = 4. DFA thu nhỏ cho
1011
có chính xác 4 cạnh và không có đệ quy.
- p = 1. Ngôn ngữ
011
là một tập hợp con của ngôn ngữ 0*1*
, vì vậy 011
U 0*1*
= 0*1*
. Và kể từ khi không 0
hoặc 1
có thể được bơm, người ta chỉ có thể làm theo một cạnh không đệ quy.
Nguồn
2015-12-17 16:57:15
Điều này có thể phù hợp hơn cho [Computer Science StackExchange] (https://cs.stackexchange.com/). –