Ý tưởng là quyết định không nhất định ngay từ đầu bao nhiêu từ được đạp xe và có một bản sao của máy tự động cho mọi trường hợp. Về mặt tự động, điều đó có nghĩa là chúng tôi đoán trạng thái sẽ có sau khi sử dụng tiền tố của một từ (là hậu tố của đầu vào của chúng tôi) và bắt đầu ở trạng thái đó.D
Bây giờ thi công. Đối với mỗi trạng thái , riêng D thành hai phần A 1 và A 2 . A 1 chứa các trạng thái mà q có thể truy cập và A 2 các trạng thái có thể truy cập từ q :q∈QDA1A2A1qA2q
[ nguồn ]
Lưu ý rằng bất kỳ nút đã cho nào cũng có thể được chứa trong cả và A 2 . Do đó, số lượng trạng thái có thể tăng gấp đôi nếu chúng ta thực hiện bước này rõ ràng.A1A2
Bây giờ chúng tôi sắp xếp lại máy tự động này để nó chấp nhận tất cả các từ mà đánh dấu "điểm chu kỳ":q
[ nguồn ]
Chúng tôi nhận được automata của hình thức này; tạo ra một trạng thái ban đầu mới có ε -transitions cho tất cả các quốc gia bắt đầu của họ. Kết quả automaton chấp nhận chu kỳ ( L ) . Tổng cộng, chúng tôi nhận được nhiều nhất | Q | ⋅ ( 2 | Q | + 1 ) + 1 tiểu bang, chỉ | Q | nhiều tiểu bang hơn các yêu cầu tham khảo là có thể.|Q|εcycle(L)|Q|⋅(2|Q|+1)+1|Q|
Bạn có thể đạt được Trạng thái 2 + 1 bằng cách sửa đổi thành phần automata một chút; loại bỏ tất cả q 0 bằng cách thay thế đến ε -transitions theo bản sao chuyển đi của nó. Nghĩa là, với mọi cặp chuyển đổi ( q 1 , ε , q 0 ) , ( q 0 , a , q 2 ) , giới thiệu một quá trình chuyển đổi ( q 1 , a , q 2 ) .2|Q|2+1q0ε(q1,ε,q0),(q0,a,q2)(q1,a,q2)
Xây dựng nghiêm ngặt và bằng chứng chính xác vẫn còn là bài tập.