15 15.1 Definition und Semantik Ï Ö Ø Ò Ã Ô Ø Ð Ø Ø ÐÐØ ÓÐÐØ Ë Ð w = while p doa ÓÐ Ò Ê ÙÖ ÓÒ Ð ÙÒ Ö ĐÙÐÐ Ò w = if p then a w else skip ½µ Æ Ñ Û Ö ÒÙÒ Ò ËØ ÖÒÓÔ Ö ØÓÖ Ù Ö Ð ÓÖ Ø Ñ Ò Ø Û Ö ØÞØ ÒÓ if¹ ÒÛ ÙÒ Ó Ö ÐØ Ò Û Ö ĐÍ Ö ØÞ Ò w = p a w + p 1 Ú ÖÛ Ò Ø Ò ÛÓÐÐ Ò Û Ö Ò Ù ÞÙÖ Ñ ÒØ Ò Ö ÙÒ Ö ÒÞ Òº ÁÒ ÙÒ Ö Ö Ð Ò Ò ÑÔ Ö Ø Ú Ò ÈÖÓ Ö ÑÑ Ö ÔÖ ÐØ ÒÓ Ê ÙÖ ÓÒ Ð ÙÒ Ø Ò ÃÓÖÓÐÐ Ö ½½º Ð Ò Ø w = (p a) p while¹ë Ð ÙÒ ÞÛ Ö ÓÛÓ Ð Ö Ë Ñ ÒØ Û Ö ÄĐÓ ÙÒ ÃÓÖÖ Ø Ø ¹ ÙÒ Ö Ð Ø Ú ÎÓÐÐ ØĐ Ò Ø Û ĐÙÖ ÞÙ ĐÓÖ Ë ÐÙ Ö Ð Ñ ÀÓ Ö ¹Ã Ð ĐÙк Ö ÊÙÑÔ Ö Ë Ð Ò ÒÛ ÙÒ Û Ö Û Ö ÙÖ Ò Ò Ñ Ò Û Ö Ð Ð Ö Ë Ñ ÒØ Ö while¹ë Ð Ù ÓÒ Û ÖÙÑ Ö Ö Ð Ò Ø ÜÔÙÒ Ø Đ ÕÙ Ø Ø Û Ö Ð Ñ ÒØ a Ò Ö ÃÐ Ò ¹ Ð Ö Ö Ø ÐÐØ Ë Ð Ò Ò ÙÒ ÙÖ Ò Ò Ì Ø pº c B. Möller ß ½ ß Alg. Semantik SS 2007 c B. Möller ß ¾ ß Alg. Semantik SS 2007 ÔĐ Ø Ö Ò ÓÐغ 15.2 Die Schleifenregel und ihre Korrektheit ÀÓ Ö ¹Ê Ð ĐÙÖ Ô ÖØ ÐÐ ÃÓÖÖ Ø Ø ÚÓÒ while¹ë Ð Ò Å Ø Ä ÑÑ ½ º½ ÒÒ Ñ Ò ÁÒÚ Ö ÒØ Ò Ù Ú Ö ØĐ Ö Ò ÙÒ Ú ÖÛ Ò Ø Û ÒØÐ Ò Ö «Ö ÁÒÚ Ö ÒØ Òº Ï Ö Ò ÒÒ Ò Ò ÈÖĐ Ø q Ò ÁÒÚ Ö ÒØ ÚÓÒ a Û ÒÒ {q} a {q} ĐÙÐØ Øº ÛĐ Ò Ë Ò p 1, p 2 ÁÒÚ Ö ÒØ Ò ÚÓÒ a Ó Ø Ù p 1 p 2 ÁÒÚ Ö ÒØ ÚÓÒ a º º ÐØ q Ñ Ù Ò ÞÙ Ø Ò Ó ÐØ Ù Ò Ò ÙÒ ÚÓÒ a Û Öº ÙÒ ÓÑ Ø ÚÓÒ a º Ï Ö ĐÓÒÒ Ò ÙØÙÒ ÌÖ Ô Ð Ó ÙÑ ÓÖÑ Ò {q} a {q} q a q 0 (q a) q q a q a q q a a q, ( Ö ) ( ÖÒ) Ò Û Ø Ö Ò Ø ÓÐ Ø Ö Ø Ù Ö Ò Ø ÓÒ Ö ÚÓÒ ÀÓ Ö ¹ÌÖ Ô ÐÒ ÙØÙÒ {q p} a {q} {q} p a {q} ( ) ÙÒ Ñ Ø Ä ÑÑ ½¾º º ÓÐ Ø Lemma 15.1 Ò ÁÒÚ Ö ÒØ ÚÓÒ a Ø Ù Ò ÚÓÒ a {q} a {q} {q} a {q}. c B. Möller ß ß Alg. Semantik SS 2007
Å Ø Ö Ö À Ð ĐÓÒÒ Ò Û Ö ÒÙÒ ÃÓÖÖ Ø Ø Ö Ë Ð ÒÖ Ð Þ Òº Ë Ð ÙØ Ø {q p} a {q} {q} while p doa {q p} ÙÒ ÖØ q Ð ÁÒÚ Ö ÒØ º ÐØ ÚÓÖ ÒØÖ ØØ Ò Ò Beweis: ÙÒĐ Ø Ð Ò Û Ö Ñ Ø ( ) ÙÒ Ä ÑÑ ½ º½ {q} (p a) {q}º Ù Ö Ñ ÓÐ Ø Û Ö Ñ Ø ( ) ÙÒ Ö skip¹ê Ð {q} p {q p}º Ë Ð ÒÖÙÑÔ a ÙÒ Û Ö Ö Ø Ø Đ Ð ØÖ Ø Ò º º ÐØ Ù ÒÓ p Ó Ø Ù Ò Ñ Ë Ð ÒÖÙÑÔ Û Ö Ö ĐÙÐÐغ ÆÙÒ Ø ÒÙÖ ÒÓ À ÒØ Ö Ò Ò Ö ÐØÙÒ Ö Ð ÒÞÙÛ Ò Òº Û Ö ÓÐ ÖØ Ò Ë Ð Ò Ò q ÑÑ Ö ÒÓ ÐØ Ö Ù Ë Ð Ú ÖÐ Ò ÛÙÖ Ë Ð Ò Ò ÙÒ p Ö Ù Ö Ø ÅÓ Ð ØĐ Ø Ò Ø ÒĐÓØ º Ò Ø Ñ Öº 15.3 Relative Vollständigkeit Ï Ö Ò ÒÓ Ò Ò ÞÛ Ø Ò ÃÓÖÖ Ø Ø Û Ñ Ø À Ð Ö ĐÙÖ ÓÜ Ò ËØ ÖÒ ÁÒ Ù Ø ÓÒ Ö Ð q (p a) p](q p) Óܹ Ò Ø a b]q a] b]q q (p a) ] p](q p) À Ö ĐÙÖ Ø Û Ò Ã Ô Ø Ð ½¼ ÞÙ Þ Ò ĐÙÖ while¹ë Ð w ÙÒ ÐÐ Ì Ø q ÐØ { w]q} w {q} Û ÒÒ Ñ Ò ÞÙÑ Ã Ð ĐÙÐ ÓÓÐ Ð Ö q (p a) ](p + q) ÓܹËØ ÖÒ¹ÁÒ Ù Ø ÓÒ ÃÓÖº½¾º½ µ q (p + q) p a]q ĐÙÖÞÙÒ ØÞ Ò Û Ö r = w]qº ÙÖ Û ÔÐ Ò Ø ÒÙÒ Ó Ö Ï Ö Þ Ò ÞÙ Ö Ø {r p} a {r}º µ Ë Ð ÒÖ Ð ÒÞÙÒ ÑÑØ ÙÒ ÅÓ Ð ØĐ Ø ÚÓÖ Ù ØÞغ ÁÒ ÑÙÑ q p + q q p a]q ËÙÑÑ ÙÒ º ÀÓ Ö ¹ÌÖ Ô Ð ÌÊÍ {q} p a {q} Ñ Ø Ø Ë Ð ÒÖ Ð ÒÛ Ò Ö ÙÒ Ð ÖØ µ {r} w {r p}º µ Ë Ð Ð Þ Ò Û Ö ÒÓ r p q Ó ÛĐ ÙÒ Ö Ð {r} w {q} Ö Ø Û ÛĐÙÒ Øº
ÍÑ Ò Ñ ÈÐ Ò ÚÓÖ ÓÑÑ Ò Ò Ù ÖĐÙ r p ÙÒ r p ÆÙÒ ĐÓÒÒ Ò Û Ö Ò Ã Ô Ø Ð ½¼ ÓÒÒ Ò ÁÒ Ù Ø ÓÒ ĐÙ Ö Ò Ù Ù Ö ÒÛ ÙÒ Ò ÓÖØ ØÞ Òº ÞÙ Ø ÑÑ Ò Ö Ò Ò Û Ö ÞÙÒĐ Ø Ñ ØØ Ð ½µ ÙÒ Ò Óܹ ØÞ Ò r = p a w + p]q = p a w]q p]q ÁÒ Ù Ø ÓÒ ÚÓÖ Ù ØÞÙÒ ĐÙÖ Ò Û Ö ÒÒ Ñ Ò Æ { a]s} a {s} = ( p + a] w]q) (p + q) = ( p + a]r) (p + q) ĐÙÖ ÐÐ Ì Ø s ÐØ Ð Ó Ù Ô Þ ÐÐ ĐÙÖ s = r º º { a]r} a {r}º Ö ÐØ Ò Û Ö Ö Ù r p = p ÙÒ a]r r p ¾µ q Û Ö ÛĐ ÙÒ Ö Ð ÒÛ Ò Ò ÙÒ Ö ÐØ Ò ĐÓÒÒ Ò {r p} a {r}, Ù ¾µ ÙÒ Ö ÁÒ ÑÙÑ Ò Ø ÓÐ Ø r p a]r Ñ Ø Ø Ì Ð µ Û ÔÐ Ò ÖРغ ÛÓÑ Ø Ð Ð Ù Ì Ð µ Û ÔÐ Ò ÖÐ Ø Øº c B. Möller ß ½¼ ß Alg. Semantik SS 2007 15.4 Zur Terminierung von Schleifen ÐØ Ï Ø Ö while p doskip = (p 1) p = p p = 1 p = p Ï Ö ÛÓÐÐ Ò ÒÙÒ ÒÓ Ò Û ÙÒ Ö Ë Ñ ÒØ ĐÙÖ Ë Ð Ñ Ø Ñ È Đ ÒÓÑ Ò Ö Æ ØØ ÖÑ Ò ÖÙÒ ÞÙÖ Ø ÓÑÑغ Ù Ô Ø Ö ÙØ ÞÙÖ Ò ÙÙÒ Ò Ë Ð Ö Ò ÊÙÑÔ Ò ÖÐ Î ÖĐ Ò ÖÙÒ Ò Ò Ò Î Ö Ð Ò ÚÓÖÒ ÑÑØ Ö ÐØ Ò Û Ö ÙÒĐ Ø while truedo a = (1 a) 1 = 0 = abort, Ø ÖÑ Ò ÖØ ÒÙÖ ÒÒ Û ÒÒ Ö Ò Ø Ö Ø ØÖ Ø Ò Û Ö º Ò Ó ÐØ while p doabort = p Û Ñ ÖÛ ÖØ Ø Ò Î Ö ÐØ Ò ÙØ ÒØ ÔÖ Øº c B. Möller ß ½½ ß Alg. Semantik SS 2007 c B. Möller ß ½¾ ß Alg. Semantik SS 2007
Ö Ð ÑÑ Ø ÐÐ Ö Ö Ø Ò Ñ Ò Ø Ò Ö ØÖ Ø Ø Ò Ô Ð Û Ö Ò Ø ÖÑ Ò Ø ÈÖÓ Ö ÑÑ Û Ö Û Ö Ò Ö Ë Ñ ÒØ ÚÓÒ if then else ÙÒ Ñ Ø Ù Ò ÁÑ Ù ÑÑ Ò Ò Ñ Ø Æ Ø Ø ÖÑ Ò ÑÙ Ò Ö Ê ÙÖ ÓÒ ĐÙÖ Ë Ð Ù Û Ð + Ú ÖÛ Ò Øº ĐÙÖ Ò Ò Ò ÞÙ Ø Ò Ø Ö Ð Ö Ó Ö then¹ Ó Ö Ö ÓÐ Ò Ò Ö «Ö Ù Ð Ø Ò Ò Ø Ø ÖÑ Ò Ø Ù Û Ð ÞÛ Ò ÞÛ ÈÖÓ Ö ÑÑÞÛ Ò Ø ÞĐÙ Ð Ò Ð Þº º Ì ÖÑ Ò ÖÙÒ µ Ò ØÖ Ø Ò ÖÖ Ø Û ÒÒ ÚĐÓÐÐ ÙÒÚÓÖ Ö Ö Ø Û Ð Ö Ö Ò else¹ Û ÛĐ ÐØ Û Ö Ò Ì Ø ĐÙÖ Ò Ò Ù Ø Ò ÞÙØÖ «Ø Ó Ö Ò Ø ÞÙØÖ «Øº ÒØÛ Ö Ð Ó Ø Ù Û Ð Ø ÖÑ Ò Ø º Æ Ø Ø ÖÑ Ò ÑÙ ÒÒ Ò Ò Ö Ë Ð Ð Ó ÒÙÖ ÒØ Ø Ò Û ÛĐ ÐØ Û Ö Ò Ð Û ÒÒ Ø Ø Ö Ò Û ÛĐ ÐØ Û Ö Ö Ð Û ÒÒ Ö Ë Ð ÒÖÙÑÔ Ò Ø Ø ÖÑ Ò Ø Øº ÒÒ Ò ËÔÖ Ò Û Â Ú Þº º Ö Î ÖÛ Ò ÙÒ ÚÓÒ Ñ Ø Ò ÖÖ Ø Đ ÑÓÒ Û ÒÒ Ø Ø Ö Ò Û ÛĐ ÐØ Û Ö Ö Ð Ñ Û Ò Ø Ò ÖÖ Øº Ì Ö Ù ØÖ Ø Ò Ö Ð Ø Ú Ò Û Ò Ø Ò Ô Ö ÐÐ Ð Ð Ù Ò Ö ËØÖĐ Ò ÚÓÒ Ö Û Ð Ò ÁÑÔÐ Ñ ÒØ ÖÙÒ ÙÒ Ñ c B. Möller ß ½ ß Alg. Semantik SS 2007 ÓÒ Ö Ø Ò ÒÛ Ò ÙÒ ÐÐ Đ Ò Òº Ò Ð Ó Ö ÓÔØ Ñ Ø µ Ë ØÛ Û Ö ÚÓÒ Ò ÙØÓÑ Ø Ò ÙÒ Å Ò Ò Ú ÖØÖ Ø Òº Ò Ø Ø ÖÑ Ò Ø Ò Ð Ø Ö Þ ÔØ ÒÞ Ò ÚÓÖ Ð Ø Ò ÏÓÖØ º Đ ÑÓÒ Ó Ö Ô Ñ Ø µ Ë ØÛ Ø ÚÓÒ Ò ÏÓÖØ Û Ö ÒÒ Þ ÔØ ÖØ Û ÒÒ Ï Ð Ñ ÙØÓÑ Ø Ò ÅÙÖÔ Ý³ Ð Û Á ÒÝØ Ò Ò Ó ÛÖÓÒ Ø Û Ðк Ë ØÛ Ø Ò Ó Ù Û Ò ÞÙ ÑÔÐ Ñ ÒØ Ö Ò Û Ó ØÖÓ«Ò Û Ö Ð Ð Ò Þ ÔØ Ö Ò Ö Ù Ø Ò ÖÖ Ø Û Ö º Ë ØÛ Ø ÐÐ Ö Ò Ù Û Ò ÞÙ ÑÔÐ Ñ ÒØ Ö Ò Ò Ð Ö ÑĐÓ Ð Ò Ï ÓÐ Ò Ú Ö ÓÐ Ø Û Ö Ò ÑĐÙ Ò ØÛ Ø ÚÓÑ Ù Û Ò Ö Ø Ö Ñ Ð Ø Ø Ò ÐÐ Û ÒÒ ÒĐ ÑÐ ÚÓÖ Ð Ø ÏÓÖØ Ò Ø Øµº Ë ØÛ Ø Ö Ò Ë ÒÒ Û ÒÒ Ñ Ò Ò Ö ÒØ ÖØ Ö Ñ Þ ÔØ ÖØ Ò ËÔÖ ØÞ Ð Øµ ÐÐ ÑĐÓ Ð Ò Ï ÙÖ Ò ÙØÓÑ Ø Ò¹ Ó Ö Å Ò Ò Ö Ô Ò Ù ÔÖÓ ÖØ Û Ö Ò ÑĐÙ Òº Þ Ø Þº º Ñ ĐÍ Ö Ò ÚÓÒ Ò Ñ ÃÓÖÖ Ø Ø ÒØ Ö ÖØ Ø Ï ÒÒ Ñ Ò ÒĐ ÑÐ Ò Û Ò ÒÒ Ò ËÝ Ø Ñ Ù ÙÒØ Ö Đ ÑÓÒ Ö Ë ØÛ ÓÖÖ Ø Ø ÒÒ Ù Ò Ò Ø Ø ÖÑ Ò Ø Ò Ò Ð Ò ÙØÓÑ Ø Ò ÞÙ Ò Ñ Đ ÕÙ Ú Ð ÒØ Ò Ø ÖÑ Ò Ø Ò ÛÓ Ù Ø Ò Þ Ð ÚÓÒ n Ù 2 n Û Ò ÒÒº ÅÙÖÔ Ý Ò Ø Ñ Ö ÔÙØØÑ Òº
Ï Ö ÛÓÐÐ Ò ÙÒ ÒÙÒ Ô Þ ÐÐ Ñ Ø Ò ÓÖÑ Ò Ö Ù Û Ð Ñ Ì ÖÑ Ò ÖÙÒ Đ Ø Òº Ð Ð Ö Ø ÐÐÙÒ Ò Ò Ö Ò Ø ÖÑ Ò Ö Ò Ò ÈÖÓ Ö ÑÑ ØØ Ò Û Ö abort = 0 ÛĐ Ðغ Ï Ò Ö Ð ÙÒ 0 + a = a Ø + Ð Ù Û ÐÓÔ Ö ØÓÖ Ö Ò Ò Ð Ë Ø Ö Ù Û Ð ÞÙ ÖÙÒ Ð Ø Û Ö Ò Ð Ò Ö Ø Ö Ò abort¹ Û Û Ö Ø Ø ÞÙ ÙÒ Ø Ò ÅĐÓ Ð Ø Ò ØØ Ò Û ÓÐ Ò Ä ÑÑ Þ Øº Ò Ö Ö Ò ØØ Òº Ï Ö ÛÓÐÐ Ò ÒÙÒ Ò Î Ö ÐØ Ò Ù while ¹Ë Ð ĐÙ ÖØÖĐ Øº ÞÙ ØÖ Ø Ò Û Ö Ò Ë Ð Ò ÅĐÓ Ð Ø ÞÙÖ Lemma 15.2 while p do(a + skip) = while p doaº Beweis: ĐÍ ÙÒ º Æ ØØ ÖÑ Ò ÖÙÒ ÙÖ Ø Ö ÊÙÑÔ skip Ð Ù Û ÐÑĐÓ Ð Ø ÒØ Đ ÐØ Ó Ë Ð Ù Ö ËØ ÐÐ ØÖ Ø Ò ÒÒº ÃÐ Ò ¹ Ð Ö ¹Ë Ñ ÒØ Ö ØÖ ÖØ Ð Ó Ö ÃÐ Ò ¹Ë Ñ ÒØ ÓÞÙ Ò Ð Ø Ó ÚÓÒ Ò Ñ ÅĐÓ Ð Ø Ò Ö Æ ØØ ÖÑ Ò ÖÙÒ Ò Ø ÒÙÖ Û ÒÒ Ö Ò Ì ÖÑ Ò ÖÙÒ ÑĐÓ Ð Ø Ø Ø Ò Ò ÞÙ Ø Ò Ù Ò Ò Ø ÖÑ Ò Ö Ò Ò ÐĐ Ù Ò Ù ÒÓ Ò ØØ ÖÑ Ò Ö Ò ÑĐÓ Ð Ò ÒÒ Ñ Ò Ò Ö ÒÙÖ Ö ÙÐØ ÖØ abort Ð ÑØ Ñ ÒØ Ò ÈÖÓ Ö ÑÑ º ĐÙÖ Ò Đ ÑÓÒ Ë ØÛ ÚÓÒ ÈÖÓ Ö ÑÑ Ò Ø Ð Ó Ò Ö ÒØ ÖØ Æ ØØ ÖÑ Ò ÖÙÒ Đ ÕÙ Ø Ö Ø ÐÐ Ò ÎÓÒ Ò Ñ Ò Ò ÞÙ Ø Ò s Ò ÈÖÓ Ö ÑÑ a Ø Ò Ù ÙÒÑÓ Þ ÖØ Ö ÓÖÑ Ò Ø Ò Ø Ò Ö Ö ÛÓ Ð ÙÑ Ô ÖØ ÐÐ ÃÓÖÖ Ø Ø ÚÓÒ ÒÒ Ò ÓÖ ÒØÐ µ Ø ÖÑ Ò Ö Ò Ö Ð Ù Ù Û ÒÒ s aº Ö ÑÙ ÞÙÖ Ò Ù Ò Ö Ø ÐÐÙÒ Ö Đ ÑÓÒ Ò Ë ØÛ Ò ÓÒ Ö ÚÓÒ Ù ØĐ Ò Ò Ñ Ø Ö ÒØ ÖØ Ö ÈÖÓ Ö ÑÑ Ò ÞÙ Ö Ò ÛÓ Æ ØØ ÖÑ Ò ÖÙÒ Ó Ò Ò Ù Ö ØÖ ØÙÒ Ù Ð ÑÑ ÖØ Û Ö º Ì ÖÑ Ò ÖÙÒ Ë Ñ ÒØ Ò Ô Ø Û Ö Òº c B. Möller ß ¾¼ ß Alg. Semantik SS 2007
ÃÓÑÔÓ Ø ÓÒ Ø Ò Ð Ò ÓÐ Ò Ñ Ë ÒÒ Ù Ò ÈÖÓ Ö ÑÑ ÙÒ a Ò Ò Ò ÞÙ Ø Ò ÚÓÒ s Ñ Ø a ÞÛ ÑĐÓ Ð Ò Æ ÓÐ ÞÙ ØĐ Ò Ò t ÙÒ u ÙÒØ Ö aº Ï Ø Ö b Ò ÈÖÓ Ö ÑÑ Ñ Ò Ò ÞÙ Ø Ò t Ø Ø ÙÒ Ò u Ø Ø Ò Ø Ø ÖÑ Ò ÖØ Ó u bº Ø ÖÑ Ò ÖØ ÃÐ Ò ¹Ë Ñ ÒØ ÚÓÒ a ÒØ Đ ÐØ ÒÒ ÒÙÖ ÐĐ Ù b ÚÓÒ s Ù ĐÙ Ö t ÞÙ Ò ÞÙ ØĐ Ò Ò ÚÓÒ b ĐÙ Ö Ò ÛĐ Ö Ò ÐĐ Ù ÚÓÒ s Ù ĐÙ Ö u Ò Ø ÑĐÓ Ð Ò º ÙÖ ÃÓÑÔÓ Ø ÓÒ ÚÓÒ a ÙÒ b Û Ö Ò Ð Ó ÓÞÙ Ò ÖĐÙ Û Ö Ò Ù Û ÐÑĐÓ Ð Ø Ò ÚÓÒ a Ò ØØ Ò ÙÑ Ò Ò Ð ÑØÚ Ö ÐØ Ò ÞÙ ÖÞ Ð Òº Ö ÑÙ ÒÒ Ñ Đ ÑÓÒ Ò ÐÐ Ù Ë Ñ ÒØ Ö ÃÓÑÔÓ Ø ÓÒ Ò Ù Ò ÖØ Û Ö Òº Ï Ö Ú ÖÞ Ø Ò ÐÐ Ö Ò Ö Ù Ö Ù Û Ò Ò ÐÙÒ Ö Đ ÑÓÒ Ò Ë Ñ ÒØ º c B. Möller ß ¾½ ß Alg. Semantik SS 2007