ÊÚ¿Î˳Ðò£º5
½ÌѧĿµÄ£ºÈÃѧÉúÕÆÎÕDFAºÍNFAµÄ¶¨Ò壬Á˽âDFAºÍNFAµÄ±íʾ·½·¨£¬ÕÆ
ÎÕNFAÓëDFAµÄµÈ¼Ûת»»·½·¨¼°DFAµÄ»¯¼ò·½·¨¡£
½ÌÑ§ÖØµã£ºDFAºÍNFAµÄ¶¨Òå¡¢µÈ¼Ûת»»¼°DFAµÄ»¯¼ò ½ÌѧÄѵ㣺DFAºÍNFAµÄµÈ¼Ûת»»¡¢DFAµÄ»¯¼ò ÊÚ¿Îѧʱ£º2ѧʱ ½Ìѧ·½Ê½£º¶àýÌå½²ÊÚ ½ÌѧÄÚÈÝ£º
4.3ÓÐÇî×Ô¶¯»ú
Ò»¡¢¸ÅÊö
ÓÐÇî×Ô¶¯»ú(Finite Automata):¿É׼ȷʶ±ðÕý¹æ¼¯£¨¼´Ê¶±ðÕý¹æÎÄ·¨Ëù¶¨ÒåµÄÓïÑÔºÍÕý¹æÊ½Ëù±íʾµÄ¼¯ºÏ£©µÄÒ»ÖÖ×°Öá£Ëü·ÖΪÁ½Àà:
(1)È·¶¨µÄÓÐÇî×Ô¶¯»ú(Deterministic Finite Automata£¬¼ò³ÆDFA)
(2)²»È·¶¨µÄÓÐÇî×Ô¶¯»ú(Nondeterministic Finite Automata£¬¼ò³ÆNFA)
¶þ¡¢È·¶¨µÄÓÐÇî×Ô¶¯»ú(DFA) 1¡¢¶¨Òå
È·¶¨µÄÓÐÇî×Ô¶¯»ú±íʾΪһ¸öÎåÔª×飺M=(K£¬?£¬f£¬S£¬Z)£¬ÆäÖУº
(1) KÊÇÒ»ÓÐÇî״̬¼¯£»
(2)?ÊÇÒ»ÓÐÇî×Öĸ±í£¬³ÆÊäÈë·ûºÅ×Öĸ±í£»
(3) fÊÇת»»º¯Êý£¬ÊÇÔÚK??¡úKÉϵÄÓ³Éä¡£Èçf(ki£¬a)=kj£» (4) SÊÇΨһµÄÒ»¸ö³õ̬£»
(5) Z?K£¬ÊÇÒ»ÖÕ̬¼¯£¬ÖÕ̬Ҳ³Æ½áÊøÌ¬»ò¿É½ÓÊÜ̬¡£
2¡¢DFAµÄ״̬ͼ±íʾ
¼ÙÉèDFA MÓÐm¸ö״̬£¬n¸öÊäÈë×Ö·û£¬Ôò£º
(1)״̬ͼÓÐm¸ö½áµã£¬Ã¿¸ö½áµã×î¶àÓÐnÌõ»¡Éä³ö£» (2)ÓÐΨһµÄÒ»¸ö³õ̬½áµã£¬Ç°Ãæ¹ÚÒÔ¡°=>¡±»ò¡°-¡±±ê¼Ç£» (3)ÓÐÈô¸ÉÖÕ̬½áµã£¬ÓÃ˫ԲȦ»ò¡°+¡±±ê¼Ç£»
Àý£ºÏÂͼËùʾDFA¿Éʶ±ðÕýÔò¼¯L(ab*c)£¬Èç´®abbc¿É±»Èϱð¡£
3¡¢DFAµÄ¾ØÕó±íʾ (1)Ðбíʾ״̬£»
(2)ÁбíʾÊäÈë×Ö·ûÔò£»
(3)¾ØÕóÔªËØ±íʾÏàӦ״̬ÐкÍÊäÈë×Ö·ûÁÐÏÂÐÂ״̬£¨¼´kÐÐaÁÐΪf(k£¬a)µÄÖµ£©£» (4)Óá°=>¡±±ê¼ÇÐлòµÚÒ»Ðбíʾ³õ̬£»
(5)ÖÕ̬ÐÐÓҶ˱êÒÔ1£¬·ÇÖÕ̬ÐÐÓҶ˱êÒÔ0¡£ Àý£ºÉÏͼҲ¿É±íʾΪ¾ØÕóÐÎʽ£º
a b c
S A 0
A A B 0 B 1 4¡¢×ª»»º¯Êý¶¨ÒåÀ©³ä
·½±ãÆð¼û£¬¶ÔDFAÖÐת»»º¯Êý¶¨Òå½øÐÐÀ©³ä£ºfÊÇת»»º¯Êý£¬ÊÇÔÚK??*¡úKÉϵÄÓ³
É䣬ÓУº
(1) f(k1£¬¦Å)=k1
(2) f(k1£¬a¦Á)=f(f(k1£¬a)£¬¦Á) ÆäÖУ¬k1¡ÊK£¬a¡Ê? £¬¦Á¡Ê?*¡£ 5¡¢½ÓÊÜ(ʶ±ð)
ÉèDFA=(K£¬?£¬f£¬S£¬Z)£¬Èôf(S£¬¦Á)=P¡ÊZ£¬Ôò³Æ·ûºÅ´®¦Á¡Ê?*¿É±»¸ÃDFA½ÓÊÜ(ʶ±ð)¡£
Àý:ÊÔÖ¤´®abbc¿É±»Í¼Ê¾DFAʶ±ð¡£
Ö¤£ºf(S£¬abbc)=f(f(S£¬a)£¬bbc)=f(f(A£¬b)£¬bc) =f(f(A£¬b)£¬c)=f(A£¬c)=B ÓÉÓÚBΪÖÕ̬£¬µÃÖ¤¡£ 6¡¢ÓïÑÔ
È·¶¨ÓÐÇî×Ô¶¯»úMËù½ÓÊܵÄËùÓзûºÅ´®¼¯³ÆÎª´Ë×Ô¶¯»ú¿É½ÓÊܵÄÓïÑÔL(M)¡£ 7¡¢ÖØÒª½áÂÛ
(1)?ÉϵÄÒ»¸ö×Ö·û´®¼¯V??*ÊÇÕý¹æ¼¯£¬µ±ÇÒ½öµ±´æÔÚ×ÅÒ»¸ö?ÉϵÄÈ·¶¨ÓÐÇî×Ô¶¯»úM£¬Ê¹µÃV=L(M)¡£
(2) DFAµÄÈ·¶¨ÐÔ±íÏÖÔÚ״̬ת»»º¯ÊýÊǵ¥Öµº¯Êý£¬¼´f(k£¬a)Ψһȷ¶¨Ò»¸öºó¼Ì״̬¡£
¶þ¡¢²»È·¶¨µÄÓÐÇî×Ô¶¯»ú(NFA) 1¡¢¶¨Òå
²»È·¶¨µÄÓÐÇî×Ô¶¯»ú±íʾΪһ¸öÎåÔª×飺NFA M=(K£¬?£¬f£¬S£¬Z)£¬ÆäÖУº
(1) KÊÇÒ»ÓÐÇî״̬¼¯
(1)?ÊÇÒ»ÓÐÇî×Öĸ±í£¬³ÆÊäÈë·ûºÅ×Öĸ±í
(3) fÊÇת»»º¯Êý£¬ÊÇÔÚK??*¡úKµÄ×Ó¼¯ÉϵÄÓ³Éä¡£ (4)SÊdzõ̬¼¯
(5) Z?K£¬ÊÇÒ»ÖÕ̬¼¯£¬ÖÕ̬Ҳ³Æ½áÊøÌ¬»ò¿É½ÓÊÜ̬¡£
Àý£º×´Ì¬Í¼±íʾµÄNFAÈçÏ£º
״̬ͼ±íʾµÄDFAÈçÏ£º
4¡¢×ª»»º¯Êý¶¨ÒåÀ©³ä
ÒòΪfÊÇת»»º¯Êý£¬ÊÇÔÚK??*¡úKµÄ×Ó¼¯ÉϵÄÓ³É䣬ÓУº (1) f(k£¬a¦Á)=f(k1£¬¦Á)¡Èf(k2£¬¦Á)...¡Èf(kn£¬¦Á)
ÆäÖУ¬ki¡ÊK£¬a¡Ê? £¬¦Á¡Ê?*£¬ÇÒf(k£¬a)={k1£¬k2£¬....kn} 5¡¢½ÓÊÜ(ʶ±ð)
ÉèNFA=(K£¬?£¬f£¬S£¬Z)£¬Èç¹ûz0¡Êf(S£¬¦Á)ÇÒz0¡ÊZ£¬Ôò³Æ·ûºÅ´®¦Á¡Ê?*¿É±»¸ÃNFA½ÓÊÜ(ʶ±ð)¡£
Àý:ÊÔÖ¤´®abc¿É±»Í¼Ê¾NFAʶ±ð¡£
Ö¤£ºf(S£¬abc)=f(A£¬bc)=f(A£¬c)¡Èf(C£¬c)=B£¬ÓÖÒòΪB¡Ê ÖÕ̬¼¯{B}£¬µÃÖ¤¡£ 6¡¢ÓïÑÔ
²»È·¶¨ÓÐÇî×Ô¶¯»úMËù½ÓÊܵÄËùÓзûºÅ´®¼¯³ÆÎª´Ë×Ô¶¯»ú¿É½ÓÊܵÄÓïÑÔL(M)¡£ 7¡¢ÖØÒª½áÂÛ
(1£©¶ÔÓÚÿ¸öNFA M£¬±Ø´æÔÚÒ»¸öDFA M1£¬Ê¹µÃL(M)=L(M1)£»
(2)¶ÔÓÚÈκÎÁ½¸öÓÐÇî×Ô¶¯»úM1ºÍM2£¬ÈôL(M1)=L(M2)£¬Ôò³ÆÓÐÇî×Ô¶¯»úM1ºÍM2µÈ¼Û¡£
Èý¡¢£ÎFAµ½DFAµÄת»» 1¡¢Ïà¹Ø¸ÅÄî
¦Å±Õ°ü£º¦Å-closure(I)±íʾ״̬¼¯IÖÐÈκÎ״̬A¾ÈÎÒâÌõ¦Å»¡¶øÄܵ½´ïµÄ״̬¼¯¡£ ״̬¼¯IµÄa»¡×ª»»£º±íʾΪJ=move(I£¬a)£¬JÊÇËùÓÐÄÇЩ´ÓIÖÐÈÎһ״̬¾Ò»Ìõa»¡¶øµ½´ïµÄºó¼Ì״̬ȫÌå¡£
Áî:Ia=¦Å-closure(J)=¦Å-closure(move(I£¬a))
Àý£º¶ÔÏÂͼNFA£¬È¡I={S£¬1}£¬Ôò¦Å-closure(I)£½{S£¬1£¬2}£¬J=move(I£¬0)={1}£¬ I0=¦Å-closure(J)={1£¬2}
2¡¢NFAµÄÈ·¶¨»¯
ÓÃÔì±í·¨½«NFAÈ·¶¨»¯¹ý³ÌÈçÏ£º (0)±íµÄµÚ0Ðк͵Ú0ÁÐ×÷±êʶÐÐÁеÄÖµ¡£ (1)½«¦Å-closure(I)×÷Ϊ±íÖеÚ1ÐеÚ1ÁС£
(1)¼Ù¶¨?={a1£¬a2£¬...an}£¬ÉèµÚiÐеÚÒ»ÁÐÒÑÈ·¶¨×´Ì¬¼¯ÎªI£¬ÔòÖøÃÐеÚiÁÐΪIai£¬ÈçIaiÎ´ÔøÔÚÈκÎÐеÚÒ»ÁгöÏÖ¹ý£¬Ôò½«Iai¼ÓÈëÏÂÒ»¿ÕÐÐi+1µÄµÚÒ»ÁУ¬²¢ÔÚµÚ0Áбê¼ÇΪTi+1¡£
(3)·´¸´Öظ´µÚ(1)²½£¬Ö±ÖÁÎÞÐÂ״̬³öÏÖΪֹ¡£ (4)ÖØÐÂÃüÃûÐÂ״̬¡£
Àý£º½«ÉÏͼËùʾNFAÈ·¶¨»¯(0-3²½£ºÔì±í)
ÕûÀíºóµÃ£º ÖØÐÂÃüÃûÐÂ״̬µÃDFAÈçÏÂͼËùʾ£º
ËÄ¡¢DFAµÄ»¯¼ò 1¡¢Ïà¹Ø¸ÅÄî
(1)Ò»¸öDFAÊÇ»¯¼ò(×îС»¯)Á˵쬼´ËüûÓжàÓà״̬ÇÒÆä״̬ÖÐûÓÐÏ໥µÈ¼ÛµÄ¡£ (2)¶àÓà״̬ÊÇÖ¸´Ó×Ô¶¯»úµÄ¿ªÊ¼×´Ì¬³ö·¢£¬ÈκÎÊäÈë´®Ò²²»¿É´ïµÄ״̬¡£ 2¡¢×´Ì¬µÈ¼Û
ÔÚDFAÖУ¬Á½¸ö״̬sºÍtµÈ¼ÛµÄÌõ¼þÊÇ£º
(1)Ò»ÖÂÐÔÌõ¼þ£º×´Ì¬sºÍt±ØÐëͬʱΪ¿É½ÓÊÜ̬ºÍ²»¿É½ÓÊÜ̬¡£
(2)ÂûÑÓÐÔÌõ¼þ£º¶ÔÓÚËùÓÐÊäÈë·ûºÅ£¬×´Ì¬sºÍt±ØÐëת»»µ½µÈ¼ÛµÄ״̬Àï¡£ 3¡¢DFA×îС»¯´¦Àí
¶ÔDFA×îС»¯µÄ±¾ÖÊ£ºÏû³ý¶àÓà״̬¡¢ºÏ²¢µÈ¼Û״̬¡£
DFA×îС»¯¾ßÌå¹ý³Ì£ºÓ÷ָ½«²»º¬¶àÓà״̬µÄDFA·Ö³ÉһЩ²»ÏཻµÄ×Ó¼¯£¬Ê¹µÃÈκÎÁ½¸ö²»Í¬µÄ×Ó¼¯ÖеÄ״̬¶¼ÊÇ¿ÉÇø±ðµÄ£¬¶øÏàͬ×Ó¼¯ÖÐ״̬Êǵȼ۵ġ£·Ö¸îʱ£¬Ê×ÏȽ«DFA״̬·Ö³ÉÖÕ̬×Ó¼¯ºÍ·ÇÖÕ̬×Ó¼¯£¬ÔÙ¸ù¾ÝÊä³ö»¡Ëù´ïµ½×´Ì¬µÄÐÔÖÊÖð²½Ï¸·Ö¡£ Àý£º¶Ô×óͼËùʾDFA×îС»¯¡£
½â£ºP0={{1£¬2£¬3}£¬{4£¬5£¬6£¬7}}
¸ù¾Ý¸÷×Ó¼¯Êä³ö»¡0ºÍ1Ëù´ïµ½×´Ì¬ÊÇ·ñΪÖÕ̬£¬»®·ÖΪ£ºP1={{1}£¬ {2}£¬ {3}£¬{4£¬5£¬6£¬7}}£¬×îС»¯ºóDFAÈçÉÏÓÒͼËùʾ¡£