home Funktionale Programmierung: Typen und vollständige partielle Ordungen Prof. Dr. Uwe Schmidt FH Wedel

Typen und vollständige partielle Ordungen

weiter

weiter

Wertebereiche und CPOs

Typ
definiert einen Wertebereich
weiter
Beim Ableiten von Eigenschaften (Korrektheit, Terminierung, ...) aus einem Programm (einer Funktion, eines Ausdrucks) muss der Fall mit betrachtet werden.
Die Wertebereiche von einfachen Datentypen besitzen in der Theorie neben den eigentlichen Werten noch einen weiteren Wert
weiter
Der Wertebereich der Wahrheitswerte besteht also aus drei Werten.
merke
Bei zusammengesetzten Wertebereichen (Summen- und Produkt-Datentypen) wird die Situation komplexer.
merke
Es wird möglich, dass nur einzelne Komponenten oder Varianten eines Wertes nicht definiert sind.
weiter
?
Wieviel von einem Wert ist definiert?
?
Ist ein Wert mehr definiert als ein anderer?
weiter
Mathematische Struktur
vollständige partielle Ordnung
vollständige Halbordnung
engl.
complete partial order
CPO
weiter
Definition
vollständige partielle Ordnung
 
partielle Ordnung bei der jede aufsteigende Kette
x1 ⊑ x2 ⊑ x3 ⊑ x4 ⊑ ...
eine obere Schranke (Supremum) besitzt.
Jede vollständige partielle Ordnung besitzt ein kleinstes Element.
weiter
Ein Wertebereich in Haskell einschließlich bildet eine vollständige partielle Ordnung.
ist das kleinste Element.
weiter

Letzte Änderung: 20.09.2016
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel