SNU 4541.664A Program Analysis: Theories and Practices
Lecture Movies (Spring 2013)
Á¦´ë·Î ÀÛµ¿ÇÒ Áö¸¦ ¹Ì¸® °ËÁõÇÒ ¼ö ¾ø´Â ±â°è¼³°è´Â ¾ø´Ù. Á¦´ë·Î ¼ÀÖÀ» Áö¸¦ ¹Ì¸® °ËÁõÇÒ ¼ö ¾ø´Â °ÇÃ༳°è´Â ¾ø´Ù. Àΰø¹°µéÀÌ ÀÚ¿¬¼¼°è¿¡¼
¹®Á¦ ¾øÀÌ ÀÛµ¿ÇÒ Áö¸¦ ¹Ì¸® ¾ö¹ÐÇÏ°Ô ºÐ¼®ÇÏ´Â ¼öÇÐÀû ±â¼úµéÀº Àß ¹ß´ÞÇØ
¿Ô´Ù. ´ºÆ° ¿ªÇÐ, ¹ÌÀûºÐ ¹æÁ¤½Ä, Åë°è ¿ªÇеîÀÌ ±×·¯ÇÑ ±â¼úµéÀÏ °ÍÀÌ´Ù.
¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇؼ´Â ¾î¶²°¡?
ÀÛ¼ºÇÑ ¼ÒÇÁÆ®¿þ¾î°¡ Á¦´ë·Î ½ÇÇàµÉ Áö¸¦ ¹Ì¸® ¾ö¹ÐÇÏ°Ô È®ÀÎÇØ ÁÖ´Â
±â¼úµéÀº Àִ°¡? ÀÌ¿¡ ´ëÇÑ ´äÀÌ ÇÁ·Î±×·¥ ºÐ¼®(static program
analysis)±â¼ú À̶ó´Â À̸§À¸·Î ¸ð¿©Áö´Â ±â¼úµéÀÌ´Ù.
±×µ¿¾È ´Ù¾çÇÑ À̸§À¸·Î ´Ù¾çÇÑ ¼öÁØ¿¡¼ ´Ù¾çÇÑ ÇÊ¿ä¿¡ ¸ÂÃß¾î ºÒ¸®¿öÁö´Â
±â¼úµéÀ» ¸ðµÎ Æ÷¼·ÇÑ´Ù:
"static analysis", "abstract interpretation",
"type system", "software model checking", "data-flow analysis",
"program logics and proof system" µî.
ÀÌ °Á¿¡¼´Â Á¤Àû ÇÁ·Î±×·¥ ºÐ¼® ±â¼úµéÀÇ À̷аú ½ÇÁ¦¸¦ ÀÍÈù´Ù.
(µ¿¿µ»ó ¸ñÂ÷¿¡¼ ¼½¼Ç n.m ¿¡ ÇØ´çÇÏ´Â
°Àǵ¿¿µ»óÀº n-m.mp4 ÀÔ´Ï´Ù. ´Ü, nÀ̳ª mÀÌ ÇÑ ÀÚ¸®ÀÎ °æ¿ì 0n-0m.mp4ÀÔ´Ï´Ù.)
- Àǹ̰ø°£(semantic domains)
- ±Ã±ØÀ» µå·¯³»´Â Àṉ̀¸Á¶(denotational semantics)
- ÇÁ·Î±×·¥ÀÇ ½ÇÇà ÀÇ¹Ì ¿¹Á¦(formal semantics examples)
- ÇÁ·Î±×·¥ ºÐ¼® °³°ü(overview of program analysis)
- ¿ä¾àÇؼ®(abstract interpretation overview)
- ¿ä¾àÇؼ® Ʋ(abstract interpretation framework)
- °¥·Î¾Æ ¿¬°á°ú °íÁ¤Á¡ Á¤¸®(Galois connection, fixpoint theorem)
- Àǹ̰ø°£ÀÇ ¿ä¾à(abstraction of semantic domains)
- ±âŸ(miscellanea)
- Àṉ̀¸Á¶ ¿ä¾à(abstraction of semantics)
- ¸í·ÉÇü ¾ð¾î¿¡ ´ëÇÑ ¿ä¾àÇؼ® µðÀÚÀΰú ±¸Çö(abstract interpretation
for imperative language)
- ³ÐÈ÷±â¿Í Á¼È÷±â(widening and narrowing)
- °è»ê ½ÇÇà°úÁ¤ÀÇ ¿ä¾à(abstraction of semantic functions)
- Çؼ®¹æÁ¤½ÄÀÇ ÇØ·Î ºÐ¼®Çϱâ(program analysis by equation solving)
- ŸÀÔ ½Ã½ºÅÛ(static type system)
- ŸÀÔ ½ºÅ¸ÀÏÀÇ ÇÁ·Î±×·¥ ºÐ¼®(type-based program analysis)
|