...
נניח שיש לך אוטומט סופי דטרמיניסטי עבור L. נבנה אוטומט סופי לא-דטרמיניסטי עבור L כובע. הרעיון הוא שהאוטומט החדש ינחש איזו סיגמא צריך לקרוא (מבלי לקרוא אותה ממש), יקרא את מיו מתוך הקלט, וינחש איזו קסי צריך לקרוא, וכל זאת עד לסיום קריאת כל הקלט. באוטומט החדש המצבים יתחלקו ל-3 קבוצות. בכל קבוצה יופיעו כל המצבים של האוטומט המקורי. באוטומט החדש יהיו 3 סוגים של מעברים: 1. מעברי אפסילון מהקבוצה הראשונה לשניה, כאשר יהיה מעבר בין מצב q בקבוצה הראשונה למצב r בקבוצה השניה אם"ם יש מעבר (כלשהו) בין q ל-r באוטומט המקורי. 2. מעברים "רגילים" בין הקבוצה השניה לקבוצה השלישית, שזהים למעברים של האוטומט המקורי. כלומר יהיה ניתן לעבור ממצב q בקבוצה השניה למצב r בקבוצה השלישית ע"י קריאת אות a אם"ם אפשר לעבור ממצב q למצב r ע"י קריאת a באוטומט המקורי. 3. מעברי אפסילון מהקבוצה השלישית לראשונה, כאשר יהיה מעבר בין מצב q בקבוצה השלישית למצב r בקבוצה הראשונה אם"ם יש מעבר (כלשהו) בין q ל-r באוטומט המקורי.