Zpo-8-wyk-Slajd20: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 1: | Linia 1: | ||
== | ==Predykat noSideEffectsP== | ||
[[Image:zpo-8-wyk-Slajd20.PNG| | [[Image:zpo-8-wyk-Slajd20.PNG|Predykat noSideEffectsP]] | ||
Analityczne stwierdzenie, czy wykonanie wskazanego fragmentu kodu (pewnej funkcji) nie powoduje zmiany zachowania programu (modyfikacji wybranej zmiennej Var), okazuje się nierozstrzygalne. Spełnienie takiego warunku jest konieczne w przypadku wielu przekształceń refaktoryzacyjnych, dlatego stwierdzenie ich poprawności w dowolnym przypadku okazuje się niemożliwe. Ten przykład pokazuje, że analiza statyczna użyta jako metoda weryfikacji poprawności jest zbyt słabym narzędziem już w przypadku bardzo prostych warunków wstępnych. | |||
[[zpo-8-wyk-Slajd19 | << Poprzedni slajd]] | [[zpo-8-wyk-toc|Spis treści ]] | [[zpo-8-wyk-Slajd21 | Następny slajd >>]] | [[zpo-8-wyk-Slajd19 | << Poprzedni slajd]] | [[zpo-8-wyk-toc|Spis treści ]] | [[zpo-8-wyk-Slajd21 | Następny slajd >>]] |
Aktualna wersja na dzień 18:13, 4 lis 2006
Predykat noSideEffectsP
Analityczne stwierdzenie, czy wykonanie wskazanego fragmentu kodu (pewnej funkcji) nie powoduje zmiany zachowania programu (modyfikacji wybranej zmiennej Var), okazuje się nierozstrzygalne. Spełnienie takiego warunku jest konieczne w przypadku wielu przekształceń refaktoryzacyjnych, dlatego stwierdzenie ich poprawności w dowolnym przypadku okazuje się niemożliwe. Ten przykład pokazuje, że analiza statyczna użyta jako metoda weryfikacji poprawności jest zbyt słabym narzędziem już w przypadku bardzo prostych warunków wstępnych.