Präsentation herunterladen
1
Elemente einer Z-Spezifikation
Spezifikation und Verifikation PR WS 03/04 Auer Angelika Harrich Michaela Schönhart Sabrina Gruppe 4
2
Struktur einer Z-Spezifikation
Given Sets Globale Variablen Constraints Zustandsraum Initialisierung Operationen auf den Zustandsraum
3
Basic Types, Globale Constants, User defined sets
[ARZT, PATIENT] maxAerzte: maxAerzte = 5 RESULT::= OK | NOK
4
State Space doktoren: ARZT patienten: PATIENT
Bezeichnung Arztpraxis doktoren: ARZT patienten: PATIENT behandelt: ARZT PATIENT #doktoren ≤ maxAerzte ran behandelt patienten dom behandelt doktoren Deklarationen Prädikate
5
Operationsschemata (1)
Spezifieren die über dem Zustandsraum definierten Operationen Eine Operation wird durch ein gewöhnliches Schemata beschrieben Die Operation wird nicht explizit deklariert
6
Operationsschemata (2)
Operationsname = Schemaname Parameter: - x?: Eingabeparameter - y!: Ausgabeparameter Zustände: s: Zustand vor der Operation s´: Zustand nach der Operation
7
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 Postconditons müssen nach der Operationsausführung erfüllt sein
8
Operationsschemata zustandsverändernd
AufnahmeArztOK Arztpraxis doktor?: ARZT antwort!: RESULT doktor? doktoren #doktoren < maxAerzte doktoren‘ = doktoren {doktor?} antwort! = OK
9
Operationsschemata zustandserhaltend
AufnahmeArztNOK Arztpraxis doktor?: ARZT antwort!: RESULT doktor? doktoren #doktoren maxAerzte antwort! = NOK
10
Initialzustand beschreiben gültige initiale Zustände des Systems
beinhalten Wertzuweisungen, die die Constraints des Zustandraumes erfüllen müssen InitArztpraxis Arztpraxis doktoren = patienten =
11
Typen, Konstanten und Funktionen
12
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}
13
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.
14
Typdefinitionen in Z Sehr eingeschränkter Satz von vordefinieren Typen: Weitere Typen werden aus given sets aufgebaut: [X,Y]; [Namen]; [Banken]; [Tiere];...
15
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]
16
Aufzählungstypen Antwort ::= JA|NEIN Dient als Abkürzung für:
JA,NEIN : Antwort JA NEIN antw: Antwort antw = JA antw = NEIN [Antwort]
17
Variablen Variable sind vom Typ der Menge, aus der sie Werte annehmen können. Syntax: <variable> “:“ <type> <varliste> “:“ <type> <varliste> “:“ <Wertebereich bzw. Menge>
18
Konstanten Konstante sind Variablen, deren Ausprägung auf einen Wert beschränkt sind. kreditlimit : kreditlimit = 1000
19
Funktionen Spezialform der Relation Lösungsmenge ist eindeutig
Abbildung Wertebereich (domain) auf Bildbereich (range) i.Z.: dom f, ran f
20
Funktionen (1) Funktionsdefinition someEven:
y: | y > someEven = 2*y
21
Funktionen (2) Totale Funktion Partielle Funktion X Y X Y
22
Funktionen (3)
23
Funktionen (4) X Y Injektiv: Surjektiv: Bijektiv: Y X Y X
24
Generische Funktionen
Eine Funktion die für verschiedene Typen deklariert wird Generischer Parameter [X] _ _ : (X x X) S,T: X S T (x:X x S x T)
25
Vielen Dank für die Aufmerksamkeit!!!
Folien unter:
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.