• Keine Ergebnisse gefunden

Formale Methoden der Softwaretechnik 1 Vorlesung vom 19.10.09:

N/A
N/A
Protected

Academic year: 2022

Aktie "Formale Methoden der Softwaretechnik 1 Vorlesung vom 19.10.09:"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Formale Methoden der Softwaretechnik 1 Vorlesung vom 19.10.09:

Einf¨ uhrung

Christoph L¨uth, Lutz Schr¨oder

WS 09/10

1

Organisatorisches

IVeranstalter:

Christoph L¨uth Lutz Schr¨oder christoph.lueth@dfki.de lutz.schroeder@dfki.de Cartesium 2.043, Tel. 64223 Cartesium 2.051, Tel. 64216

ITermine: Vorlesung: Montag, 12 – 14, MZH 7210 Ubung:¨ Mittwoch, 12 – 14, MZH 7220

2

Therac-25

INeuartigerLinearbeschleunigerin der Strahlentherapie.

IComputergesteuert(PDP-11, Assembler)

IF¨unf Unf¨alle mitTodesfolge(1985– 1987)

IZu hoheStrahlendosis(4000 – 20000 rad, letal 1000 rad)

IProblem:Softwarefehler

IEin einzelnerProgrammierer(f¨unf Jahre)

IAlles inAssembler, keinBetriebssystem

IProgrammiererauchTester(Qualit¨atskontrolle)

3

Ariane-5

4

Die Vasa

5

Lernziele

1.Modellierung—Formulierungvon Spezifikationen

2.Formaler Beweis—Nachweisvon Eigenschaften

3.Verifikation— Beweis derKorrektheitvon Programmen Dar¨uber hinaus:

IVertrautheit mitaktuellen Techniken

6

Themen

IGrundlagen:

IFormaleLogik, formalesBeweisen

IAnwendung:

IDer TheorembeweiserIsabelle

IFormaleSpezifikationundVerifikation

IFunktionale Programme

IImperative Programme

7

Plan

IN¨achstesieben Wochen:

I Formale Logik und formaler Beweis

I Vorlesung: Grundlagen

I Ubung: Isabelle¨

INachWeihnachten:

I GrundlagenderVerifikationimperativer Programme

I Semantik, Hoare-Kalk¨ul.

8

(2)

Der Theorembeweiser Isabelle

IInteraktiverTheorembeweiser

IEntwickelt inCambridgeundM¨unchen IEst. 1993 (?), ca. 500 Benutzer

IAndere: PVS, Coq, ACL-2 IVielf¨altig benutzt:

IVeriSoft (D) —http://www.verisoft.de

IL4.verified (AUS) —

http://ertos.nicta.com.au/research/l4.verified/

ISAMS (Bremen) —http://www.projekt-sams.de

9

Das Problem

Wirklichkeit Modell

10

Formale Logik

IFormale(symbolische) Logik:RechnenmitSymbolen

IProgramme:Symbolmanipulation

IAuswertung:Beweis

ICurry-Howard-Isomorphie: funktionale Programme∼= konstruktiver Beweis

11

Geschichte

IGottlobFrege(1848– 1942)

I ‘Begriffsschrift, eine der arithmetischen nachgebildete Formelsprache des reinen Denkens’(1879)

IGeorgCantor(1845– 1918), BertrandRussel(1872– 1970), Ernst Zermelo(1871– 1953)

I Einfache Mengenlehre: inkonsistent (Russel’s Paradox)

I Axiomatische Mengenlehre: Zermelo-Fr¨ankel IDavidHilbert(1862– 1943)

I Hilbert’s Programm: ‘mechanisierte’ Beweistheorie

IKurtG¨odel(1906– 1978)

I Vollst¨andigkeitssatz,Unvollst¨andigkeitss¨atze

12

Grundbegriffe der formalen Logik

IAbleitbarkeitTh`P

ISyntaktischeFolgerungung IG¨ultigkeitTh|=P

ISemantischeFolgerung — hiernichtrelevant IKlassischeLogik:P∨ ¬P

IEntscheidbarkeit

IAussagenlogik IKonsistenz:Th6` ⊥

INicht allesableitbar

IVollst¨andigkeit:jede g¨ultige Aussageableitbar

IPr¨adikatenlogikerster Stufe

13

Unvollst¨ andigkeit

IG¨odels 1.Unvollst¨andigkeitssatz:

I JedeLogik, diePeano-Arithmetikformalisiert, ist entwederinkonsistent oderunvollst¨andig.

IG¨odels 2.Unvollst¨andigkeitssatz:

I JederLogik, die ihre eigeneKonsistenzbeweist, istinkonsistent.

IAuswirkungen:

I Hilbert’s Programmterminiert nicht.

I Programmenicht vollst¨andig spezifierbar.

I Spezifikationssprachenimmerunvollst¨andig(oder uninteressant).

I Mitanderen Worten:Es bleibt spannend.

14

Referenzen

ÄHNLICHE DOKUMENTE

Zeigen Sie folgende Aussage, erst auf Papier und dann in

The program should read in a text and produce a count of the words in the text in the form of pairs of words occuring in the text, and their frequency, sorted by descending

I Damit: G¨ ultige (“wahre”) Aussagen berechnen....

I Jede Logik, die Peano-Arithmetik formalisiert, ist entweder inkonsistent oder unvollst¨ andig. I G¨

I Damit: G¨ ultige (“wahre”) Aussagen

I Getypter λ-Kalk¨ ul als Grundlage der Metalogik, Modellierung von Logiken durch Einbettung. I Isabelle: Korrektheit

I Logik h¨ oherer Stufe (HOL): alle endlichen Quantoren. I Keine wesentlichen Vorteile von

Map ’a ~=> ’b partielle Abbildungen (’a => ’b option). ∗ in