Datentyp  Zusammenfassung von Mengen von "Werten" mit auf

Slides:



Advertisements
Ähnliche Präsentationen
8. Termin Teil B: Wiederholung Begriffe Baum
Advertisements

Vorlesung Compilertechnik Sommersemester 2008
Definition [1]: Sei S eine endliche Menge und sei p eine Abbildung von S in die positiven reellen Zahlen Für einen Teilmenge ES von S sei p definiert.
Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:
Eine dynamische Menge, die diese Operationen unterstützt,
Claudio Moraga; Gisbert Dittrich
TECHNISCHE UNIVERSITÄT DARMSTADT Naive Bayes for Ranking
7. Natürliche Binärbäume
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
T-XPath Ein zeitliches Modell für XML-DBS M. Kalb, G. SpechtK. Schneider Universität Ulm EML Heidelberg.
Es sei SPEC = (, E) eine Spezifikation mit einer
Finale Semantik und beobachtbares Verhalten
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 4 / 1 Termalgebren Definition "Freie Algebra" Die -Algebra A = [A, F ] heißt.
Kapitel 4 Datenstrukturen
Gliederung Motivation / Grundlagen Sortierverfahren
Vorlesung Informatik 2 Algorithmen und Datenstrukturen Halbzeit: Was haben wir bisher gelernt? Prof. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (06 – Reduktion endlicher Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
Algorithmen und Datenstrukturen
Kapitel 5 Stetigkeit.
Reguläre Sprachen Karin Haenelt.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 12 Claudio Moraga, Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 10 Claudio Moraga; Gisbert Dittrich FBI Unido
? Grammatik  Orthographie ?
d.h. für alle  mit () = (s1,s2 ,...,sn,s) gilt: wenn
Beispiele für Ausdrucksalgebren
Eine (Gleichungs-)Spezifikation ist ein Paar SPEC = (, E),
Einführung Wat jibt´s denn? Mit Computa kenn´ ick mir aus! Guten Tag,
Gleichungskalkül und Induktion
Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 01Teil II: Kp. 22/1 Grundmodelle.
Mathematische Grundlagen und Rechnen mit algebraischen Zahlen
Weiteres Programm Studium des Breitendurchlaufs Hierzu
§14 Basis und Dimension (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
§9 Der affine Raum – Teil 2: Geraden
§14 Basis und Dimension  (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
Stacks Referat im Fach Basisinformationstechnologien von Venelina Koleva.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt WS 06/
Grundlagen der Programmierung
§3 Allgemeine lineare Gleichungssysteme
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Mehrkriterielle Optimierung mit Metaheuristiken
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Institut für Theoretische Informatik
Institut für Theoretische Informatik
POCKET TEACHER Mathematik Algebra
Kapitel 6: Suchbäume und weitere Sortierverfahren
ENDLICHE KÖRPER RSA – VERFAHREN.
7. Formale Sprachen und Grammatiken
Kapitel 5Strukturen Information aus der realen Welt werden in einem informationsverarbeitenden System als Daten abgelegt. Diese stellen also eine (vereinfachte)
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig 0 / 1 Syntax, Semantik, Spezifikation Grundlagen der Informatik R. Hartwig.
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 3 / 1 Algebraische Hülle und Homomorphie A = [A, F ] sei  -Algebra. Eine.
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 10 / 1 Kapitel 10 Initialität Eine beliebige gleichungsdefinierbare Klasse.
? definierende Gleichungen  gültige Gleichungen ?
 Sortigkeit oder Arität
Folie 1 §8 Gruppen und Körper (8.1) Definition: Eine Gruppe G ist eine Menge zusammen mit einer Verknüpfung, die jedem Paar (a,b) von Elementen aus G ein.
Dr. Wolfram Amme, Semantik funktionaler Programme, Informatik II, FSU Jena, SS Semantik funktionaler Programme.
 Gegenstandsbereich der Testtheorie: Analyse der Charakteristika von Tests:  Güte von Tests.  Struktur von Tests.  Schwierigkeit von Tests.  Gruppenunterschiede.
 Präsentation transkript:

Datentyp  Zusammenfassung von Mengen von "Werten" mit auf Kapitel 8 Abstrakte Datentypen Datentyp  Zusammenfassung von Mengen von "Werten" mit auf ihnen erklärten Operationen = heterogene Algebra Bei Verwendung im Softwareentwurf Spezifikation erforderlich: Festlegung von Eigenschaften nur wesentliche Eigenschaften, nur Prinzip keine Details, unabhängig von konkreter Implementation vollständige Beschreibung oft unmöglich - auch nicht erwünscht! Abstrakter Datentyp  unvollständige Charakterisierung eines Datentyps  wird von Klasse von konkreten Datentypen erfüllt

Damit gehören zu einem abstrakten Datentyp alle diejenigen konkreten Datentypen, die der Beschreibung bzw. Charakterisierung genügen.  vorläufige Definition: Ein abstrakter Datentyp (ADT) ist eine Klasse von Algebren (Datentypen). Beispiel ADT “geordnete endliche Menge“ ORD: endliche Menge M mit Ordnung  auf M  - als Operation :  : M  M  bool mit bool={true, false} ORD - Klasse von Algebren [M , bool ;  ] : M = { 0, 1, 2, 3, 4, 5} mit  M = { -5, -3, -1, 1, 3, 5, 7} mit  irgendeine endliche Menge reeller Zahlen mit  eine bel. endliche Menge von Wörtern mit einer lexikographischen Ordnung Menge von Institutsangehörigen mit Ordnung entspr. Gehalt

Beispiel ADT “Zähler modulo 8“ COUNT8: 8-elementige Menge N mit 2 Operationen inc und reset auf N inc : N  N (Weiterzählen) reset :  N (Rücksetzen/Löschen) mit den Eigenschaften: 8-malige Anwendung von inc nach reset führt zum selben Resultat wie reset alle möglichen Werte sind von reset aus mittels inc zu erreichen COUNT8 - Klasse von Algebren [N ; inc, reset ] : dazu gehören zum Beispiel: N = {0, 1, 2, 3, 4, 5, 6, 7} mit  n + 1 für 0  n  6 inc(n) =  ,  0 für n = 7 reset = 0 .

Beispiel ADT “Zähler modulo 8“ COUNT8: dazu gehören aber z.B. auch: N = {0, -1, -2, -3, -4, -5, -6, -7} mit  n - 1 für -6  n  0 inc(n) =  ,  0 für n = -7 reset = 0 . N = {-10, -8, -6, -4, -2, 0, 2, 4} mit  -10 für n = 4  n + 2 sonst reset = -10 . ÜA: Man überlege sich einen weiteren Datentyp zu COUNT8, dessen Elemente keine Zahlen sind.

Es ist leicht zu sehen, daß alle Datentypen, die zu COUNT8 gehören, zueinander isomorph sind. ÜA: Man beweise dies. Zu ORD hingegen gehören sehr unterschiedliche Datentypen. Da die Unterschiede insbesondere auch die Anzahl der Elemente betreffen, sind die Datentypen i.a. nichtisomorph zueinander. COUNT8 heißt deshalb monomorpher abstrakter Datentyp, ORD ist ein polymorpher abstrakter Datentyp. Definition “monomorpher bzw. polymorpher ADT" Ist ein abstrakter Datentyp eine Isomorphieklasse von Algebren, so heißt der abstrakte Datentyp monomorph, sonst polymorph.