Lehrinhalte

Einführung in die Informatik

  • Signal, Nachicht, Information, Verarbeitung
  • Dualsystem, Arithmetik, IEEE
  • Huffman, Alphabete
  • Wissen, Modell, Steuern, Regeln
  • Systembegriff
  • Algorithmenbegriff
  • Von-Neumann-Architektur
  • Semi-Thue, Markov
  • Chomsky

Halbgruppen und Relationen

  • Halbgruppen, Monoide
  • Relationen, Graphen
  • Relationen und Verbände
  • Boole'sche Algebren
  • Endliche Automaten
  • Petrinetze

Termalgebren

  • Ein- und mehrsortige Algebren
  • Termalgebren
  • Normalformen und Konfluenz
  • Auswertung von Termen
  • Termersetzungssysteme
  • Vertiefung: Algorithmenbegriff

Aussagenlogik und Prädikatenlogik

  • Aussagenlogik
  • Kalküle der AL
  • Normalformen der AL
  • Prädikatenlogik
  • Normalformen und Kalküle der PL

Funktionales Programmieren

  • Lambda-Kalkül
  • Funktionales Programmieren
  • Haskell
  • ADTs
  • Bools, Zahlen, Zeichen, Liste, Tupel
  • Definitionen und Kontrollfluß, Patterns, Guards
  • Beispiele: Listen von… Zahlen, Zeichen, Wahrheitswerten
  • Funktionen höherer Ordnung I
  • Sortieren
  • Listenbeschreibungen und Generatoren
  • Funktionen höherer Ordnung II
  • Unendliche Listen
  • Typen, Typklassen, Vererbung
  • Beispiele vordefinierter Typklassen
  • Programmieren: Zusicherung, Fallunterscheidung, Zerlegung, Rekursion, Generate and Test
  • Optimierung: Durchreichen von Zwischenergebnissen

Abstrakte Datentypen

  • Natürliche Zahlen
  • Listenbeschreibungen und Generatoren
  • Keller
  • Schlangen
  • Prioritätsschlange
  • Reihungen
  • Datei
  • Definitionen und Syntax: Module
  • Binärbaum
  • Tiefen- und Breitensuche
  • Binäre Suchbäume
  • Mengen und Vielfachmengen

Algorithmenkonstruktion

  • Aufwand
  • Teile und Herrsche (anhand von Sortierverfahren, Strassen)
  • Gierige Algorithmen (Zeitpläne, spannende Bäume, Toposort)
Login

Links