next up previous
Up: DFA ¿Í NFA Previous: DFA ¿Í NFA

NFA ¸¦ DFA ·Î º¯°æÇϱâ

(º¸±â) µÎ °³ÀÇ ¾ËÆĺª { a , b } À» °¡Áö°í , ½ÃÀÛÀº ¹Ýµå½Ã a ·Î ½ÃÀÛÇÏ°í Áß°£¿¡´Â ÇϳªÀÌ»óÀÇ a,b °¡ ³ª¿Ã¼ö ÀÖ°í ³¡Àº ¹Ýµå½Ã a ·Î ³¡³ª´Â ½ºÆ®¸µÀº
a(a|b)*a
·Î ³ªÅ¸³¾ ¼ö ÀÖ´Ù. À̸¦ »óŵµ·Î Ç¥½ÃÇϸé

¸ðµç NFA ´Â DFA ·Î º¯°æÀÌ °¡´ÉÇÏ´Ù. À§ º¸±â¿¡¼­ ¿¹¸¦ µé¸é À§¿¡¼­ q1 »óÅ¿¡¼­ ÀÔ·Â ±âÈ£ a °¡ ¿Â´Ù¸é q1,q2 »óÅ·Π°¥¼ö ÀÖÀ¸¹Ç·Î À̸¦ÇϳªÀÇ »óÅ·Π¹­°í , q1,q2 »óÅ¿¡¼­ ÀÔ·Â ½Éº¼¿¡¼­ °¥¼ö ÀÖ´Â »óŸ¦ °¢°¢ »ý°¢Çϸé

(º¸±â-Àá¼öÇÔ ½Äº°)

ÀϹÝÀûÀ¸·Î Àá¼öÇÔ ¿£ÁøÀÌ ÀÛµ¿ÇÒ ¶§¿¡ ³ª¿À´Â ¼Ò¸®´Â Àá¼öÇÔ Á¾·ù¿¡ µû¶ó¼­ ´Ù¸£´Ù°í ÇÑ´Ù. ¿ì¸®´Â ¹° ¼Ó¿¡¼­ µé¸®´Â ¼Ò¸®ÀÇ ÆÐÅÏÀ» µè°í¼­ ±× ¼Ò¸®°¡ ƯÁ¤ÇÑ Àá¼öÇÔ¿¡¼­ ³ª¿À´Â ¼Ò¸®ÀÎÁö ¾Æ´ÑÁö¸¦ ¾Ë¾Æ³»·Á°í ÇÑ´Ù.ÀÌ ¹®Á¦¿¡¼­´Â Àá¼öÇÔÀÇ ¼Ò¸®°¡ µÎ Á¾·ùÀÇ ´ÜÀ§¼Ò¸®ÀÇ ¿¬¼ÓÀ¸·Î ÀÌ·ç¾îÁ® ÀÖ°í,±× ´ÜÀ§ ¼Ò¸®¸¦ °¢°¢ 0 °ú 1 ·Î Ç¥½ÃÇÑ´Ù.

¶Ç, ÇÑ Æ¯Á¤ÇÑ ¼Ò¸®ÀÇ ¹Ýº¹Àº ~ ·Î Ç¥½ÃÇÑ´Ù. ¿¹¸¦ µé¾î X~ ´Â X °ú ÇÑ ¹ø ÀÌ»ó ¹Ýº¹µÇ´Â ¸ðµç ¼Ò¸®ÀÇ ÁýÇÕÀ» ¸»ÇÏ°í,(xyz)~ ´Â °ýÈ£¾È¿¡ ÀÖ´Â xyz ·Î Ç¥ÇöµÈ ¼Ò¸®°¡ ÇÑ ¹øÀÌ»ó ¹Ýº¹µÇ´Â ¸ðµç ¼Ò¸®ÀÇ ÁýÇÕÀ» ¸»ÇÑ´Ù. ´ÙÀ½ÀÇ ¿¹¸¦ º¸¶ó.

1~ = {1,11,111,....}
(01)~ = {01,0101,010101,....}
(1001)~ = {10001,10011001,100110011001,....}
10~11 = {1011,10011,100011,....}
(10~1)~ = {101,1001,100001,101101,....}

±×¸®°í (x | y) ´Â x ¶Ç´Â y Áß¿¡¼­ ¾Æ¹«°Å³ª Çϳª ¸¸À» ¼±ÅÃÇؼ­ ¸¸µç ¼Ò¸®ÀÇ ÁýÇÕ, Áï ÁýÇÕ {x,y} ¸¦ ÀǹÌÇÑ´Ù. ¿¹¸¦ µé¸é (1001 | 0101) Àº ÁýÇÕ {1001,0101}À» ÀǹÌÇÑ´Ù. µû¶ó¼­ (0 | 1)~ Àº 0 °ú 1 ·Î ÀÌ·ç¾îÁø ¸ðµç ½ºÆ®¸µÀÇ ÁýÇÕ, Áï ¸ðµç ¼Ò¸®ÀÇ ÁýÇÕÀ» ¸»ÇÑ´Ù.

¶Ç ÇÑ ¿¹¸¦ º¸¸é (100 | 11)~ Àº 100 °ú 11 À» ¸¶À½´ë·Î ¼¯¾î¼­ ¸¸µé ¼ö ÀÖ´Â ¸ðµç ¼Ò¸®ÀÇ ÁýÇÕÀ» ÀǹÌÇÑ´Ù. Áï (100 | 11)~ ¿¡ ÇØ´çÇÏ´Â ½ºÆ®¸µÀ» ÁýÇÕÀ¸·Î ³ªÅ¸³»¸é {100,11,10011,11100,100100100,1110011,....} ÀÌ µÈ´Ù.

¿ì¸®°¡ ½Äº°ÇÏ°íÀÚ ÇÏ´Â Àá¼öÇÔÀÇ ¿£Áø¼Ò¸®ÀÇ ÆÐÅÏÀº ´ÙÀ½°ú °°´Ù.

(100~1~ | 01)~

¿©±â¿¡ ¼ÓÇÏ´Â ¼Ò¸®ÀÇ ¿¹¸¦ µé¾îº¸¸é 1001,01,100001,010101,10000011110101,1001110101 ,.... ÀÌ´Ù. ´Ù½Ã ¸»Çؼ­ ÀÌ°ÍÀº 100~1~ °ú 01 À» ÀÓÀÇ·Î ¼¯¾î¼­ ¸¸µé ¼ö ÀÖ´Â ¸ðµç ½ºÆ®¸µÀÇ ÁýÇÕÀ» ³ªÅ¸³½´Ù.

ÀÔ·ÂÀ¸·Î 0 °ú 1 ·Î ±¸¼ºµÈ ½ºÆ®¸µÀÌ ÁÖ¾î Áú¶§, ÀÌ ½ºÆ®¸µÀÌ ¾Õ¿¡¼­ ±â¼úµÈ Àá¼öÇÔÀÇ ¿£Áø¼Ò¸®ÀÎÁö ¾Æ´ÑÁö¸¦ ÆǺ°ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇ϶ó. ½ÇÇàÆÄÀÏÀÇ À̸§Àº sub.exe ·Î ÇÑ´Ù.

ÀÔ·Â Çü½Ä

ÀÔ·Â ÆÄÀÏ input.txt ¿¡´Â 0 °ú 1 ·Î ±¸¼ºµÈ ½ºÆ®¸µÀÌ 1 °³ µé¾îÀÖ´Ù. ÀÌ ¶§ ½ºÆ®¸µÀÇ ±æÀÌ´Â 200 °³ ÀÌÇÏ·Î Á¦ÇÑÇÑ´Ù.

Ãâ·Â Çü½Ä

ÀÔ·Â ÆÄÀÏ¿¡ ÀÖ´Â ½ºÆ®¸µÀ» Àаí, ÀÌ°ÍÀÌ Àá¼öÇÔÀÇ ¿£Áø¼Ò¸®¸¦ ³ªÅ¸³»´Â ½ºÆ®¸µÀÎÁö ¾Æ´Ï¸é ±×³É ¹°¼ÓÀÇ ÀâÀ½ÀÎÁö¸¦ ÆÇÁ¤ÇÑÈÄ,Àá¼öÇÔÀÇ ¿£Áø¼Ò¸®¿¡ ÇØ´çÇÏ´Â ½ºÆ®¸µÀ̸é "submarine"À» Ãâ·ÂÇÏ°í ±×·¸Áö ¾ÊÀ¸¸é "noise"¸¦ Ãâ·ÂÇÑ´Ù.

ÀԷ°ú Ãâ·ÂÀÇ ¿¹

ÀÔ·Â(input.txt) & Ãâ·Â(È­¸é)
10010111  noise
01001011000001  noise
100000000000101  submarine
11111110000  noise
10000001111110101100111101  submarine

Ãâó:Çѱ¹ Á¤º¸¿Ã¸²ÇǾƵå Áß°íµîºÎ ±âÃâ

(Ç®ÀÌ) NFA ¸¦ DFA ·Î º¯°æÇÏ´Â ¹®Á¦ÀÌ´Ù.

¼Ò½º

(À¯Á¦) 00(1|0)*11+ À» ÀνÄÇÏ´Â ¹®ÀÚ¿­À̸é O ¸¦ ¾Æ´Ï¸é X ¸¦ Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇ϶ó.

| ´Â or À» ÀǹÌÇÏ°í * ´Â 0 ¹ø ÀÌ»ó + ´Â 1 ¹ø ÀÌ»óÀÇ ¹®ÀÚ(¿­)ÀÌ ¹Ýº¹µÉ¼ö ÀÖ´Ù´Â ÀǹÌÀÌ´Ù.

ÀÔ·Â Çü½Ä

ÀÔ·Â ÆÄÀÏ input.txt ¿¡´Â 0 °ú 1 ·Î ±¸¼ºµÈ ½ºÆ®¸µÀÌ 1 °³ µé¾îÀÖ´Ù. ÀÌ ¶§ ½ºÆ®¸µÀÇ ±æÀÌ´Â 200 °³ ÀÌÇÏ·Î Á¦ÇÑÇÑ´Ù.

Ãâ·Â Çü½Ä

ÀÔ·Â ÆÄÀÏ¿¡ ÀÖ´Â ½ºÆ®¸µÀ» Àаí, °¡´ÉÇϸé O ¸¦ ¾Æ´Ï¸é X ¸¦ Ãâ·ÂÇ϶ó.

ÀԷ°ú Ãâ·ÂÀÇ ¿¹


ÀÔ·Â(input.txt)

001011
0011
00101

Ãâ·Â(È­¸é)

O
O
X



www.dovelet.com
2002-08-20