Rozvrh
Osnova
- Programy jako transformátory predikátů. Nejslabší vstupní podmínka (wp),
vlastnosti transformátorů, správnost algoritmu.
- Programovací jazyk GCL. Syntaxe, definice sémantiky pomocí transformátorů
predikátů, SKIP, ABORT, vícenásobné přiřazení, sekvence, alternativa, cyklus.
- Programátorská logika. Zákon sekvence, zákon alternativy, zákon cyklu,
vektorové proměnné.
- Návrh algoritmů. Principy a strategie pro návrh založené na programátorské
logice, zákon současného návrhu a verifikace.
- Příklady aplikace metodologie na návrh konkrétních algoritmů. Návrh efektivních algoritmů, vyhledávání a třídění.
Požadavky na absolvování předmětu
Předmět je zakončen písemnou zkouškou. Použití literatury a poznámek není při písemce povoleno.
Doporučená literatura
- Dijkstra, Edsger W. - Feijen, W. H. J. A method of programming. Wokingham :
Addison-Wesley Publishing Company, 1998.
- Kaldewaij, A. (Anne). Programming : the derivation of algorithms. New York
: Prentice Hall, 1990.
- Gries, David. The Science of Programming . New York : Springer-Verlag,
1981.