Semantyka i weryfikacja programów: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Linia 37: | Linia 37: | ||
* [[Semantyka_i_weryfikacja_programów/Moduł 3| Semantyka naturalna 1]] ([[Semantyka_i_weryfikacja_programów/Ćwiczenia 3|Ćwiczenia 3]]) | * [[Semantyka_i_weryfikacja_programów/Moduł 3| Semantyka naturalna 1]] ([[Semantyka_i_weryfikacja_programów/Ćwiczenia 3|Ćwiczenia 3]]) | ||
* [[Semantyka_i_weryfikacja_programów/Moduł 4| Semantyka naturalna 2]] ([[Semantyka_i_weryfikacja_programów/Ćwiczenia 4|Ćwiczenia 4]]) | * [[Semantyka_i_weryfikacja_programów/Moduł 4| Semantyka naturalna 2]] ([[Semantyka_i_weryfikacja_programów/Ćwiczenia 4|Ćwiczenia 4]]) | ||
* [[Semantyka_i_weryfikacja_programów/Moduł 5| Semantyka naturalna 3]] ([[Semantyka_i_weryfikacja_programów/Ćwiczenia 5|Ćwiczenia 5]]) | |||
* [[Semantyka_i_weryfikacja_programów/Moduł 6| Semantyka naturalna 4]] ([[Semantyka_i_weryfikacja_programów/Ćwiczenia 6|Ćwiczenia 6]]) |
Wersja z 14:18, 4 sie 2006
Forma zajęć
Wykład (30 godzin) + ćwiczenia (30 godzin)
Opis
Celem wykładu jest pokazanie roli i najważniejszych problemów i technik formalizacji opisu programów. Omawiane będą metody definiowania semantyki programów, z ich matematycznymi podstawami i praktycznymi technikami. Wprowadzone zostaną pojęcia poprawności programów oraz techniki i formalizmy dla ich dowodzenia. Przedstawione też będą najważniejsze idee systematycznego konstruowania poprawnych programów.
Sylabus
Autor
- Andrzej Tarlecki
Wymagania wstępne
- Wstęp do programowania
- Wstęp do teorii mnogości i logiki
Zawartość
- Formalny opis języków programowania
- Operacyjne i denotacyjne metody definiowania semantyki programów
- Semantyczne definicje podstawowych konstrukcji programistycznych
- Matematyczne podstawy semantyki denotacyjnej
- Pojęcia poprawności programów: poprawność częściowa i całkowita
- Metody dowodzenia poprawności programów
- Logika Hoare'a, jej wykorzystanie i własności formalne
- Systematyczne konstruowanie poprawnych programów
Literatura
- P. Dembiński, J. Manuszynski. Matematyczne metody definiowania języków programowania. WNT, 1981.
- M. Gordon. Denotacyjny opis języków programowania. WNT, 1983.
- D. Gries. The Science of Programming. Springer-Verlag, 1981.
- E. Dijkstra. Umiejętność programowania. WNT, 1978.