elemente einer z-spezifikation spezifikation und verifikation pr ws 03/04 auer angelika harrich...

25
Elemente einer Z- Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Upload: karsten-martin

Post on 06-Apr-2016

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Elemente einer Z-Spezifikation

Spezifikation und Verifikation PRWS 03/04

Auer AngelikaHarrich Michaela

Schönhart SabrinaGruppe 4

Page 2: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Struktur einer Z-Spezifikation

Given SetsGlobale VariablenConstraintsZustandsraum InitialisierungOperationen auf den Zustandsraum

Page 3: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Basic Types, Globale Constants, User defined sets[ARZT, PATIENT]

maxAerzte: maxAerzte = 5

RESULT::= OK | NOK

Page 4: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

State Spacedoktoren: ARZTpatienten: PATIENTbehandelt: ARZT PATIENT#doktoren ≤ maxAerzteran behandelt patientendom behandelt doktoren

Prädikate

Deklarationen

BezeichnungArztpraxis

Page 5: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Operationsschemata (1)• Spezifieren die über dem

Zustandsraum definierten Operationen

• Eine Operation wird durch ein gewöhnliches Schemata beschrieben

• Die Operation wird nicht explizit deklariert

Page 6: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Operationsschemata (2)• Operationsname = Schemaname• Parameter:

- x?: Eingabeparameter- y!: Ausgabeparameter

• Zustände:s: Zustand vor der Operations´: Zustand nach der Operation

Page 7: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Operationsschemata (3)Operationsschemata gliedern sich in • Preconditions

müssen vor der Operationsausführung erfüllt sein

• Aktion (Transformation)Spezifizierung der Zustandsraumänderung, die durch diese Operation bewirkt werden soll

• Postconditonsmüssen nach der Operationsausführung erfüllt sein

Page 8: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Operationsschematazustandsverändernd

Arztpraxisdoktor?: ARZTantwort!: RESULTdoktor? doktoren#doktoren < maxAerztedoktoren‘ = doktoren {doktor?}antwort! = OK

AufnahmeArztOK

Page 9: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Operationsschematazustandserhaltend

Arztpraxisdoktor?: ARZTantwort!: RESULTdoktor? doktoren#doktoren maxAerzteantwort! = NOK

AufnahmeArztNOK

Page 10: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Initialzustand• beschreiben gültige initiale Zustände

des Systems• beinhalten Wertzuweisungen, die die

Constraints des Zustandraumes erfüllen müssen

Arztpraxisdoktoren = patienten =

InitArztpraxis

Page 11: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Typen, Konstanten und Funktionen

Page 12: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Typen• Basieren auf Mengenbegriff

Menge: Zusammenfassung von beliebigen Elementen unter einem gemeinsamen Namen. Unendliche und endliche Mengen.

• Mengendefinition Extensional: durch Auflistung AMPELFARBE == rot, gelb, grün Intensional: mit Hilfe von Prädikaten FERIALMONAT = {x: MONAT | x Jul, Aug, Sept}

Page 13: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Typen (1)• Zusammenfassung jener Elemente, die

durch einen Satz von Operationen nach gemeinsamen Regeln manipuliert werden können.

• Besteht aus Grundmenge gleichartiger Elemente.

• Ein Typ ist eine maximale Menge.

Page 14: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Typdefinitionen in Z• Sehr eingeschränkter Satz von

vordefinieren Typen:

• Weitere Typen werden aus given sets aufgebaut: [X,Y]; [Namen]; [Banken]; [Tiere];...

Page 15: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Typdefinition in Z (1)• Wir können „Vertreter“ in

Mengendefinitionen auflisten. Für generische Typen definieren wir jedoch Variablen, die Werte des jeweiligen generischen Typs annehmen.

• Bsp.: Tiere == Pferd, Tieger, Strauß | Pferd, Tieger, Strauß : [Tiere]

Page 16: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

AufzählungstypenAntwort ::= JA|NEIN

Dient als Abkürzung für:

JA,NEIN : AntwortJA NEINantw: Antwort antw = JA antw = NEIN

[Antwort]

Page 17: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Variablen • Variable

sind vom Typ der Menge, aus der sie Werte annehmen können.

Syntax:<variable> “:“ <type><varliste> “:“ <type><varliste> “:“ <Wertebereich bzw.

Menge>

Page 18: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Konstanten• Konstante

sind Variablen, deren Ausprägung auf einen Wert beschränkt sind.

kreditlimit : kreditlimit = 1000

Page 19: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Funktionen• Spezialform der Relation• Lösungsmenge ist eindeutig• Abbildung Wertebereich (domain)

auf Bildbereich (range) i.Z.: dom f, ran f

Page 20: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Funktionen (1)Funktionsdefinition

someEven: y: | y > 0 someEven = 2*y

Page 21: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Funktionen (2)

X Y X YTotale Funktion

Partielle Funktion

Page 22: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Funktionen (3)

Page 23: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Funktionen (4)Injektiv:

Surjektiv:

Bijektiv:

X

X

X

Y

Y

Y

Page 24: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Generische Funktionen• Eine Funktion die für verschiedene

Typen deklariert wird

_ _ : (X x X) S,T: X S T (x:X x S x T)

[X]Generischer Parameter

Page 25: Elemente einer Z-Spezifikation Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4

Vielen Dank für die Aufmerksamkeit!!!Folien unter:www.edu.uni-klu.ac.at/~sschoenh/Spezi_Praesentation.ppt