Programmentwicklung und Verifikation
Springer Wien (Verlag)
978-3-211-81867-1 (ISBN)
1. Warum Verifizieren von Programmen?.- 1.1 Korrektheit von Programmen.- 1.2 Verifizieren versus Testen von Programmen.- 1.3 Programme gleichzeitig entwickeln und verifizieren.- 1.4 Für und wider Verifizieren.- 2. Einführende Beispiele.- 2.1 Mischen zweier sortierter Karteikartenstapel.- 2.2 Diskussion der Art der Präsentation des Verfahrens.- 2.3 Sortieren durch Mischen.- 2.4 Invarianten als Lösung von Rätselaufgaben.- 3. Zusicherungen (Assertions).- 3.1 Zusicherungen als Dokumentation von Programmen.- 3.2 Die Sprache der Zusicherungen.- 4. Programmzustände und Zustandsraum.- 4.1 Der Zusammenhang zwischen Zuständen und Zusicherungen.- 4.2 Programme als Abbildungen im Zustandsraum.- 5. Spezifizieren von Programmen.- 5.1 Spezifizieren mit Pre- und Postcondition.- 5.2 Beispiele für Spezifikationen.- 6. Verifikationsregeln (Verification rules).- 6.1 Konsequenz-Regeln.- 6.2 Die Zuweisung.- 6.3 Die Sequenz.- 6.4 Die Alternative (if-Anweisung).- 6.5 Die Iteration (Schleife).- 6.6 Termination von Schleifen.- 6.7 Verifikation der while-Schleife.- 7. Entwickeln von Schleifen.- 7.1 Entwickeln einer Schleife aus einer gegebenen Invariante und Terminationsfunktion.- 7.2 Entwickeln von Invarianten aus gegebenen Spezifikationen.- 8. Die schwächste Precondition (weakest precondition).- 8.1 Verifikation mit wp.- 8.2 Die wp der einzelnen Anweisungen.- 8.3 Die wp als Prädikatentransformation.- 8.4 Definition der Semantik mit Hilfe der schwächsten Precondition.- 8.5 Eigenschaften der wp.- 8.6 Die schwächste Precondition für die Termination.- 9. Beispiele für Programmentwicklungen.- 9.1 Sortieren von Feldern.- 9.2 Binäre Suche in einem Feld.- 9.3 Die Datenstruktur Heap (Halde).- 9.4 Heapsort.- 9.5 Die M kleinsten Elemente von N Elementen.- 9.6 Maximaler Kursgewinn beiWertpapieren.- 10. Unterprogramme (Prozeduren).- 10.1 Die Prozedurdeklaration.- 10.2 Der Prozeduraufruf.- 10.3 Die schwächste Precondition des Prozeduraufrufs.- 10.4 Verifikation des Prozeduraufrufs.- 10.5 Spezifikation des Prozedurrumpfes mit externen Variablen.- 10.6 Verwendung von Variablen-Parametern.- 10.7 Eine verallgemeinerte Konsequenz-Regel.- 11. Invertieren von Programmen.- 11.1 Beispiele für inverse Anweisungen.- 11.2 Invertieren der zusammengesetzten Anweisung.- 11.3 Invertieren der alternativen Anweisung.- 11.4 Invertieren von Schleifen.- 11.5 Eine Analogie zum täglichen Leben.- 12. Parallele Programme.- 12.1 Zusammensetzen von parallelen Programmen.- 12.2 Beispiele für parallele Programme.- A. Lösungen der Aufgaben.- B. Syntax der Zusicherungen.- C. Verifikationsregeln und wp.- D. Aufwand von Verfahren.
| Erscheint lt. Verlag | 23.3.1989 |
|---|---|
| Reihe/Serie | Springers Angewandte Informatik |
| Zusatzinfo | IX, 183 S. |
| Verlagsort | Vienna |
| Sprache | deutsch |
| Maße | 170 x 244 mm |
| Gewicht | 412 g |
| Themenwelt | Mathematik / Informatik ► Informatik ► Software Entwicklung |
| Mathematik / Informatik ► Informatik ► Theorie / Studium | |
| Schlagworte | Beweis • Datenstruktur • Dokumentation • Entwicklung • Programmentwicklung • Programmiersprache • Programmiersprache C • Programmverifikation • Semantik • Software • Software Engineering / Softwareentwicklung • Softwareentwicklung • Sprache • Suche • Variable • Verifikation • Zustandsraum |
| ISBN-10 | 3-211-81867-7 / 3211818677 |
| ISBN-13 | 978-3-211-81867-1 / 9783211818671 |
| Zustand | Neuware |
| Informationen gemäß Produktsicherheitsverordnung (GPSR) | |
| Haben Sie eine Frage zum Produkt? |
aus dem Bereich