• Keine Ergebnisse gefunden

Vorlesung vom 04.02.09: Schlußbemerkungen

N/A
N/A
Protected

Academic year: 2022

Aktie "Vorlesung vom 04.02.09: Schlußbemerkungen"

Copied!
64
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Praktische Informatik 3

Einf¨uhrung in die Funktionale Programmierung

Vorlesung vom 04.02.09:

Schlußbemerkungen

Christoph L¨uth

WS 08/09

(2)

Fahrplan

Teil I: Grundlagen Teil II: Abstraktion

Teil III: Beispiele, Anwendungen, Ausblicke

Datenmodellierung mit XML Effizienzerw¨agungen

Grafik Schluss

Christoph L¨uth: Praktische Informatik 3 1 WS 08/09

(3)

Organisatorisches

Ausgef¨ulltenScheinvordruck zum Fachgespr¨achmitbringen

Nur wer ausgef¨ullten Scheinvordruck abgibt, erh¨alt auch einen.

Evaluationsbogen ausf¨ullen

(4)

Inhalt

Wiederholung

R¨uckblick, Ausblick

Christoph L¨uth: Praktische Informatik 3 3 WS 08/09

(5)

Vorlesung vom 29.10.08: Grundbegriffe

Was sind die Bestandteile einerFunktionsdefinition?

WelcheAuswertungsstrategien gibt es, welche benutzt Haskell?

Was bedeutetStriktheit?

(6)

Vorlesung vom 29.10.08: Grundbegriffe

Was sind die Bestandteile einerFunktionsdefinition?

WelcheAuswertungsstrategien gibt es, welche benutzt Haskell?

Was bedeutetStriktheit?

Christoph L¨uth: Praktische Informatik 3 4 WS 08/09

(7)

Vorlesung vom 29.10.08: Grundbegriffe

Was sind die Bestandteile einerFunktionsdefinition?

WelcheAuswertungsstrategien gibt es, welche benutzt Haskell?

Was bedeutetStriktheit?

(8)

Vorlesung vom 05.11.08: Funktionen und Datentypen

Wie werdensyntaktischFunktionen definiert?

Was ist dieAbseitsregel?

Welches sind diewesentlichen Eigenschaften derKonstruktoren eines algebraischen Datentyps?

Welche vordefiniertenBasisdatentypengibt es in Haskell?

Christoph L¨uth: Praktische Informatik 3 5 WS 08/09

(9)

Vorlesung vom 05.11.08: Funktionen und Datentypen

Wie werdensyntaktischFunktionen definiert?

Was ist dieAbseitsregel?

Welches sind diewesentlichen Eigenschaften derKonstruktoren eines algebraischen Datentyps?

Welche vordefiniertenBasisdatentypengibt es in Haskell?

(10)

Vorlesung vom 05.11.08: Funktionen und Datentypen

Wie werdensyntaktischFunktionen definiert?

Was ist dieAbseitsregel?

Welches sind diewesentlichen Eigenschaften derKonstruktoren eines algebraischen Datentyps?

Welche vordefiniertenBasisdatentypengibt es in Haskell?

Christoph L¨uth: Praktische Informatik 3 5 WS 08/09

(11)

Vorlesung vom 05.11.08: Funktionen und Datentypen

Wie werdensyntaktischFunktionen definiert?

Was ist dieAbseitsregel?

Welches sind diewesentlichen Eigenschaften derKonstruktoren eines algebraischen Datentyps?

Welche vordefiniertenBasisdatentypengibt es in Haskell?

(12)

Vorlesung vom 12.11.08: Typvariablen und Polymorphie

Was istPolymorphiein funktionalen Sprachen?

Wo ist der Unterschied zu Java? Woran kann Typableitungscheitern?

Was ist der Typ von \x y-> (x, 3) : [(, y)]?

Was ist ein Beispiel f¨ur einen Ausdruck vom Typ [[a], Int)]?

Christoph L¨uth: Praktische Informatik 3 6 WS 08/09

(13)

Vorlesung vom 12.11.08: Typvariablen und Polymorphie

Was istPolymorphiein funktionalen Sprachen?

Wo ist der Unterschied zu Java?

Woran kann Typableitungscheitern?

Was ist der Typ von \x y-> (x, 3) : [(, y)]?

Was ist ein Beispiel f¨ur einen Ausdruck vom Typ [[a], Int)]?

(14)

Vorlesung vom 12.11.08: Typvariablen und Polymorphie

Was istPolymorphiein funktionalen Sprachen?

Wo ist der Unterschied zu Java?

Woran kann Typableitungscheitern?

Was ist der Typ von \x y-> (x, 3) : [(, y)]?

Was ist ein Beispiel f¨ur einen Ausdruck vom Typ [[a], Int)]?

Christoph L¨uth: Praktische Informatik 3 6 WS 08/09

(15)

Vorlesung vom 12.11.08: Typvariablen und Polymorphie

Was istPolymorphiein funktionalen Sprachen?

Wo ist der Unterschied zu Java?

Woran kann Typableitungscheitern?

Was ist der Typ von \x y-> (x, 3) : [(, y)]?

Was ist ein Beispiel f¨ur einen Ausdruck vom Typ [[a], Int)]?

(16)

Vorlesung vom 19.11.08: Funktionen h¨ oherer Ordnung

Was ist eine Funktion h¨oher Ordnung?

Was isteinfache Rekursion?

Was ist einfache Rekursion aufListen?

Was ist der Unterschied zwischen foldrund foldl? Was sind Typklassen in Haskell?

Was ist der Unterschied zwischen Polymorphie und Typklassen?

Christoph L¨uth: Praktische Informatik 3 7 WS 08/09

(17)

Vorlesung vom 19.11.08: Funktionen h¨ oherer Ordnung

Was ist eine Funktion h¨oher Ordnung?

Was isteinfache Rekursion?

Was ist einfache Rekursion aufListen?

Was ist der Unterschied zwischen foldrund foldl? Was sind Typklassen in Haskell?

Was ist der Unterschied zwischen Polymorphie und Typklassen?

(18)

Vorlesung vom 19.11.08: Funktionen h¨ oherer Ordnung

Was ist eine Funktion h¨oher Ordnung?

Was isteinfache Rekursion?

Was ist einfache Rekursion aufListen?

Was ist der Unterschied zwischen foldrund foldl? Was sind Typklassen in Haskell?

Was ist der Unterschied zwischen Polymorphie und Typklassen?

Christoph L¨uth: Praktische Informatik 3 7 WS 08/09

(19)

Vorlesung vom 19.11.08: Funktionen h¨ oherer Ordnung

Was ist eine Funktion h¨oher Ordnung?

Was isteinfache Rekursion?

Was ist einfache Rekursion aufListen?

Was ist der Unterschied zwischen foldrund foldl?

Was sind Typklassen in Haskell?

Was ist der Unterschied zwischen Polymorphie und Typklassen?

(20)

Vorlesung vom 19.11.08: Funktionen h¨ oherer Ordnung

Was ist eine Funktion h¨oher Ordnung?

Was isteinfache Rekursion?

Was ist einfache Rekursion aufListen?

Was ist der Unterschied zwischen foldrund foldl?

Was sind Typklassen in Haskell?

Was ist der Unterschied zwischen Polymorphie und Typklassen?

Christoph L¨uth: Praktische Informatik 3 7 WS 08/09

(21)

Vorlesung vom 19.11.08: Funktionen h¨ oherer Ordnung

Was ist eine Funktion h¨oher Ordnung?

Was isteinfache Rekursion?

Was ist einfache Rekursion aufListen?

Was ist der Unterschied zwischen foldrund foldl?

Was sind Typklassen in Haskell?

Was ist der Unterschied zwischen Polymorphie und Typklassen?

(22)

Vorlesung vom 19.11.08: Funktionen h¨ oherer Ordnung

Was ist eine Funktion h¨oher Ordnung?

Was isteinfache Rekursion?

Was ist einfache Rekursion aufListen?

Was ist der Unterschied zwischen foldrund foldl?

Was sind Typklassen in Haskell?

Was ist der Unterschied zwischen Polymorphie und Typklassen?

Christoph L¨uth: Praktische Informatik 3 7 WS 08/09

(23)

Vorlesung vom 26.11.08: Standarddatentypen

Was sind dievier Phasen der Programmentwicklung?

Welche Standarddatentypen gibt es?

Wie definiere ich an den Bl¨attern markierte B¨aume? Was ist das:

data X a = X a [X a]

(24)

Vorlesung vom 26.11.08: Standarddatentypen

Was sind dievier Phasen der Programmentwicklung?

Welche Standarddatentypen gibt es?

Wie definiere ich an den Bl¨attern markierte B¨aume? Was ist das:

data X a = X a [X a]

Christoph L¨uth: Praktische Informatik 3 8 WS 08/09

(25)

Vorlesung vom 26.11.08: Standarddatentypen

Was sind dievier Phasen der Programmentwicklung?

Welche Standarddatentypen gibt es?

Wie definiere ich an den Bl¨attern markierte B¨aume?

Was ist das:

data X a = X a [X a]

(26)

Vorlesung vom 26.11.08: Standarddatentypen

Was sind dievier Phasen der Programmentwicklung?

Welche Standarddatentypen gibt es?

Wie definiere ich an den Bl¨attern markierte B¨aume?

Was ist das:

data X a = X a [X a]

Christoph L¨uth: Praktische Informatik 3 8 WS 08/09

(27)

Vorlesung vom 03.12.08: ADTs

Was ist einabstrakter Datentyp?

Was ist einModul, und was sind seineBestandteile?

Wieso sind geordnete B¨aume ein abstrakter und kein algebraischer Datentyp?

Wieso sind Listen ein algebraischer und kein abstrakter Datentyp? Haben abstrakte Datentypen einen verkapseltenZustand?

(28)

Vorlesung vom 03.12.08: ADTs

Was ist einabstrakter Datentyp?

Was ist einModul, und was sind seineBestandteile?

Wieso sind geordnete B¨aume ein abstrakter und kein algebraischer Datentyp?

Wieso sind Listen ein algebraischer und kein abstrakter Datentyp? Haben abstrakte Datentypen einen verkapseltenZustand?

Christoph L¨uth: Praktische Informatik 3 9 WS 08/09

(29)

Vorlesung vom 03.12.08: ADTs

Was ist einabstrakter Datentyp?

Was ist einModul, und was sind seineBestandteile?

Wieso sind geordnete B¨aume ein abstrakter und kein algebraischer Datentyp?

Wieso sind Listen ein algebraischer und kein abstrakter Datentyp? Haben abstrakte Datentypen einen verkapseltenZustand?

(30)

Vorlesung vom 03.12.08: ADTs

Was ist einabstrakter Datentyp?

Was ist einModul, und was sind seineBestandteile?

Wieso sind geordnete B¨aume ein abstrakter und kein algebraischer Datentyp?

Wieso sind Listen ein algebraischer und kein abstrakter Datentyp?

Haben abstrakte Datentypen einen verkapseltenZustand?

Christoph L¨uth: Praktische Informatik 3 9 WS 08/09

(31)

Vorlesung vom 03.12.08: ADTs

Was ist einabstrakter Datentyp?

Was ist einModul, und was sind seineBestandteile?

Wieso sind geordnete B¨aume ein abstrakter und kein algebraischer Datentyp?

Wieso sind Listen ein algebraischer und kein abstrakter Datentyp?

Haben abstrakte Datentypen einen verkapseltenZustand?

(32)

Vorlesung vom 10.12.08: Signaturen und Eigenschaften

Was w¨are ein ADT f¨ur Array aaus Aufgabenblatt 2?

Welche Operationen k¨onnte ein ADT f¨ur Graphen haben?

Welche Eigenschaften m¨ussten gelten?

Christoph L¨uth: Praktische Informatik 3 10 WS 08/09

(33)

Vorlesung vom 10.12.08: Signaturen und Eigenschaften

Was w¨are ein ADT f¨ur Array aaus Aufgabenblatt 2?

Welche Operationen k¨onnte ein ADT f¨ur Graphen haben?

Welche Eigenschaften m¨ussten gelten?

(34)

Vorlesung vom 10.12.08: Signaturen und Eigenschaften

Was w¨are ein ADT f¨ur Array aaus Aufgabenblatt 2?

Welche Operationen k¨onnte ein ADT f¨ur Graphen haben?

Welche Eigenschaften m¨ussten gelten?

Christoph L¨uth: Praktische Informatik 3 10 WS 08/09

(35)

Vorlesung vom 17.12.08: Induktion und Beweis

Was ist strukturelleInduktion?

Wie beweist man folgende Behauptung:

map f (map g xs) = map (f. g) xs

Wie beweist man folgende Behauptung:

reverse (reverse xs ++ ys) = reverse ys ++ xs

(36)

Vorlesung vom 17.12.08: Induktion und Beweis

Was ist strukturelleInduktion?

Wie beweist man folgende Behauptung:

map f (map g xs) = map (f. g) xs

Wie beweist man folgende Behauptung:

reverse (reverse xs ++ ys) = reverse ys ++ xs

Christoph L¨uth: Praktische Informatik 3 11 WS 08/09

(37)

Vorlesung vom 17.12.08: Induktion und Beweis

Was ist strukturelleInduktion?

Wie beweist man folgende Behauptung:

map f (map g xs) = map (f. g) xs

Wie beweist man folgende Behauptung:

reverse (reverse xs ++ ys) = reverse ys ++ xs

(38)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a? Wozu dientreturn?

WelcheEigenschaften haben die Operationen? Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

Christoph L¨uth: Praktische Informatik 3 12 WS 08/09

(39)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen? Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

(40)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen? Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

Christoph L¨uth: Praktische Informatik 3 12 WS 08/09

(41)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

(42)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

Christoph L¨uth: Praktische Informatik 3 12 WS 08/09

(43)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen?

. . . eine Zeichenkette ausgeben?

(44)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen?

. . . eine Zeichenkette ausgeben?

Christoph L¨uth: Praktische Informatik 3 12 WS 08/09

(45)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen?

. . . eine Zeichenkette ausgeben?

(46)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a? Wozu dientreturn?

WelcheEigenschaften haben die Operationen? Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

Christoph L¨uth: Praktische Informatik 3 13 WS 08/09

(47)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen? Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

(48)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen? Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

Christoph L¨uth: Praktische Informatik 3 13 WS 08/09

(49)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

(50)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen? . . . eine Zeichenkette ausgeben?

Christoph L¨uth: Praktische Informatik 3 13 WS 08/09

(51)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen?

. . . eine Zeichenkette ausgeben?

(52)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen?

. . . eine Zeichenkette ausgeben?

Christoph L¨uth: Praktische Informatik 3 13 WS 08/09

(53)

Vorlesung vom 07.01.09: Ein-/Ausgabe

Was unterscheidet Aktionen (IO a) von anderen ADTs?

Was sind die Operationen des ADTIO a?

Wozu dientreturn?

WelcheEigenschaften haben die Operationen?

Wie kann man. . .

. . . aus einer Datei lesen?

. . . die Kommandozeilenargumente lesen?

. . . eine Zeichenkette ausgeben?

(54)

Zusammenfassung Haskell

St¨arken:

Abstraktion durch

Polymorphieund Typsystem algebraischeDatentypen FunktionenohererOrdnung Flexible Syntax

Haskell alsMeta-Sprache Ausgereifter Compiler Viele B¨uchereien

Schw¨achen:

Komplexit¨at Dokumentation

z.B. im Vergleich zu Java’s APIs B¨uchereien

Noch viel im Fluß Tools ¨andern sich Zum Beispiel HGL Entwicklungsumgebungen

Christoph L¨uth: Praktische Informatik 3 14 WS 08/09

(55)

Andere Funktionale Sprachen

Standard ML(SML):

Streng typisiert, strikte Auswertung Formal definierte Semantik

Drei aktiv unterst¨utze Compiler

Verwendet in Theorembeweisern (Isabelle, HOL) http://www.standardml.org/

Caml,O’Caml:

Streng typisiert, strikte Auswertung

Hocheffizienter Compiler, byte code & native Nur ein Compiler (O’Caml)

(56)

Andere Funktionale Sprachen

LISP & Scheme

Ungetypt/schwach getypt

Seiteneffekte

Viele effiziente Compiler, aber viele Dialekte

Auch industriell verwendet

Christoph L¨uth: Praktische Informatik 3 16 WS 08/09

(57)

Funktionale Programmierung in der Industrie

Erlang

schwach typisiert, nebenl¨aufig, strikt Fa. Ericsson — Telekom-Anwendungen FL

ML-artige Sprache

Chip-Verifikation der Fa. Intel Galois Connections

Hochqualit¨atssoftwarein Haskell

Hochsicherheitswebserver, Cryptoalgorithmen

(58)

Perspektiven

Funktionale Programmierung in 10 Jahren?

Anwendungen:

Integration von XML, DBS (X#/Xen, Microsoft) Integration in Rahmenwerke (F# & .Net, Microsoft) Eingebettetedom¨anenspezifische Sprachen

Forschung:

Ausdrucksst¨arkereTypsysteme ur effizienteImplementierungen

und eingebauteKorrektheit(Typ als Spezifikation) Parallelit¨at?

Christoph L¨uth: Praktische Informatik 3 18 WS 08/09

(59)

Warum funktionale Programmierung nie Erfolg haben wird

Programmierungnur kleiner Teil der SW-Entwicklung Unterst¨utzung:

Libraries, Dokumentation, Entwicklungsumgebungen

Nichtverbreitet — funktionale Programmierer zu teuer Konservatives Management

“Nobody ever got fired for buying IBM”

(60)

Was lernt uns funktionale Programmierung?

Abstraktion

Denken in Algorithmen, nicht in Programmiersprachen

Konzentration auf wesentlicheElemente moderner Programmierung: Typisierung und Spezifikation

Datenabstraktion

Modularisierung und Dekomposition

Blick ¨uber den Tellerrand — Blick in die Zukunft Studium6= Programmierkurs— was kommt in 10 Jahren?

Christoph L¨uth: Praktische Informatik 3 20 WS 08/09

(61)

Was lernt uns funktionale Programmierung?

Abstraktion

Denken in Algorithmen, nicht in Programmiersprachen

Konzentration auf wesentlicheElemente moderner Programmierung:

Typisierung und Spezifikation Datenabstraktion

Modularisierung und Dekomposition

Blick ¨uber den Tellerrand — Blick in die Zukunft Studium6= Programmierkurs— was kommt in 10 Jahren?

(62)

Was lernt uns funktionale Programmierung?

Abstraktion

Denken in Algorithmen, nicht in Programmiersprachen

Konzentration auf wesentlicheElemente moderner Programmierung:

Typisierung und Spezifikation Datenabstraktion

Modularisierung und Dekomposition

Blick ¨uber den Tellerrand — Blick in die Zukunft Studium6= Programmierkurs— was kommt in 10 Jahren?

Christoph L¨uth: Praktische Informatik 3 20 WS 08/09

(63)

Hilfe!

Haskell: prim¨are Entwicklungssprache am DFKI, FG SKS Formale Programmentwicklung:http://www.tzi.de/cofi/hets Sicherheit in der Robotik:http://www.dfki.de/sks/sams Wir suchenstudentische Hilfskr¨afte

ur diese Projekte Wir bieten:

AngenehmesArbeitsumfeld Interessanteatigkeit Wir suchenTutoren f¨ur PI3

(64)

Tsch¨uß!

Christoph L¨uth: Praktische Informatik 3 22 WS 08/09

Referenzen

ÄHNLICHE DOKUMENTE

Zeigen Sie, dass jede normale algebraische Kurve eine komplexe Struktur zulässt, d. mit einer Hausdorff-Topologie und einem komplexen Atlas versehen

Zeigen Sie: Der Bahnenraum G\Y mit seiner Quotiententopologie ist hausdorffsch, und er lässt sich auf eindeutige Weise mit einer komplexen Struktur versehen, so dass die

(c) (3. Liouville'scher Satz) Jede nicht-konstante elliptische Funktion zum Gitter Λ nimmt auf C /Λ jeden Wert gleich oft an, wobei die Werte mit ihren Vielfachheiten zu rechnen

Zeigen Sie: Jede holomorphe Abbildung zwischen elliptischen Kurven ist entweder konstant oder eine endliche (surjektive) unverzweigte Überlagerung. Letztere werden

Insbesondere erhält man mit der Definition „Y isogen zu X ⇔ es gibt eine Isogenie Y → X“ eine Äquivalenzrelation auf der Menge der elliptischen Kurven.

Auch diese Eigenschaften hängen nicht von der Anordnung der C i ab. Ein Verzweigungstyp [G, P, C] heiÿt (schwach) rigide, wenn C (schwach)

Jede rationale, rigide Verzweigungstyp [G, P, C] ist Verzweigungstyp einer (eindeutig bestimm- ten) Galoiserweiterung L| Q ¯ (T ), die über Q definiert ist. Folgern Sie, dass

Praktische Informatik 3: Funktionale Programmierung Vorlesung 10 vom 20.12.2016: Aktionen und ZuständeI. Christoph Lüth Universität Bremen