Einführung in das Symbolische Programmieren
mit PROLOG
Vorlesung mit Tutorium
CIS, SS 2009
Hans Leiß
Organisatorisches
Vorlesung | Mo, 12-14 | Raum 1.14, Oettingenstr.67
|
Tutorium | Mi, 8-10 | Raum 1.14 Oettingenstr.67
|
(Teilgruppe) | Mo, 14-16 | Rechnerraum Z8 (Gobi) Oettingenstr.67
|
Bei Fragen außerhalb der Veranstaltungszeiten können Sie mir eine Nachricht
schicken an
leiss@cis.uni-muenchen.de
oder in meine
Mentorenstunde | Mi, 13-14 | Raum B 107, Oettingenstr.67
|
kommen.
Vorlesungsfolien
Die Folien der Vorlesung werden hier im Lauf des Semesters als
.pdf-Datei
zur Verfügung gestellt. Markieren Sie die Seiten, die Sie noch nicht haben,
und drucken Sie jeweils nur die aus.
Tutorium
Tutorinnen: Doris Peter, Katharina Groth
Es werden möglichst jede Woche Übungsaufgaben gestellt, die Sie allein oder
in einer 2-er Gruppe lösen sollten. Die abgegebenen Lösungen werden von
einer Tutorin korrigiert. In einer Stunde pro Woche wird eine korrekte Lösung am
Rechner oder an der Tafel erklärt, Fragen zur Vorlesung geklärt und
weitere Aufgaben gerechnet.
Am Ende des Semesters gibt es eine Abschlußklausur, die für den
Proseminarschein erfolgreich bestanden werden muß.
Proseminarscheine
Um einen Proseminarschein zu erhalten, sind entsprechende Prolog-Kenntnisse
nachzuweisen. Dazu werden Programmieraufgaben verteilt, die man
selbständig lösen muß. Am Ende des Semesters wird eine
Klausur geschrieben. Dabei sollte man 60 Prozent der Aufgaben lösen
können.
Klausurtermin: Mo, 20.7.2009, 12 Uhr, Raum 1.14, Oettingenstr.67
Es gibt keine Nachholklausur! Die Klausur wird Ende der ersten Woche der
Semesterferien korrigiert sein; die Ergebnisse mit Matrikelnummern werden
hier bekanntgegeben.
Ergebnisse zu: Symbolisches Programmieren, SS 2009 3.8.2009
--------------------------------------------------
1. Klausur: max.mögliche Punkte 53 (max.erreicht: 51)
Bestanden: bei >=40% der max.möglichen Punkte (>= 21.2)
Ergab: 17 der 29 Klausurteilnehmer haben bestanden
2. Hausaufgaben: max.mögl.Punkte 154 (max.erreicht: 146)
3. Proseminarschein bei bestandener Klausur
4. Leistungsbewertung:
- im Magisterstudium: entsprechend dem Anteil der
Leistung := 0,4 x Hausaufgabenpunkte/154 + 0,6 x Klausurpunkte/53
an der max.erreichbaren Leistung.
- im Bachelorstudium Informatik: (Hausaufgaben dürfen nicht
gewertet werden)
Leistung := Klausurpunkte/53 =< 53/53 = 1 = 100%
Noten: 1,0 bei mind. 94%, 1,3 bei mind. 88%, usw. in 6%-Schritten bis
3,7 bei mind. 46%, 4,0 bei mind. 40%
8x sehr gut (bis mind. 82%)
2x gut (bis mind. 64%)
5x befriedigend (bis mind. 46%)
3x ausreichend
11x nicht bestanden (weniger als 40%)
5. Ergebnisse:
Matr.Nr. Hausaufg(%) Klausur(%) = Leistung(%) = Note
------------------------------------------------------
2248875 53 25 36 - (Magister)
2256551 27 8 15 -
2313665 49 63 58 3,0
2551122 7 2 4 -
2557839 7 6 6 -
2573371 35 14 23 -
3013320 68 39 50 3,7
4087029 95 96 96 1,0
6048703 46 11 25 -
6060847 31 28 29 -
8023220 53 6 25 -
8030806 37 5 18 -
8048513 0 82 49 3,3
8061749 87 87 87 1,7
8063320 67 92 82 1,7
8069543 91 94 93 1,3
8093330 89 78 83 1,7
8100229 35 15 23 -
-----------------------------------------------------
3105292 (5) 93 93 1,3 (Bachelor)
6084324 (0) 92 92 1,3
6087676 (4) 78 78 2,0
8055220 (0) 30 30 -
8059645 (0) 41 41 4,0
8060229 (12) 61 61 3,0
8068199 (0) 38 38 -
8070004 (0) 41 41 4,0
8073996 (0) 67 67 2,7
8077681 (23) 95 95 1,0
48204631 (0) 54 54 3,3
Seminarscheine können Sie in den Semesterferien im Sekretariat
des CIS abholen, Ihre Klausur in meinen Sprechstunden Mi 13-15 Uhr
(ausser 17.8-30.8) in meinem Zimmer B 107 einsehen.
Für den Kurs Computerlinguistik-II im WS 2009/10 sind
Prologkenntnisse erforderlich, aber der Proseminarschein
zu Symb.Programmieren ist keine formale Voraussetzung.
Sie können und sollten also CL-II mitmachen, auch wenn
Ihnen der Proseminarschein zu Symb.Programmieren fehlt.
Das Nötigste zu Prolog werden wir in CL-II wiederholen,
aber hauptsächlich werden wir Prolog als Werkzeug benutzen.
Je besser sie es beherrschen, desto einfacher wird CL-II.
Schöne Semesterferien!
H.Leiß
Literatur
Außerdem findet man im Internet verschiedene Tutorien zu Prolog.
PROLOG
Wir benutzen das SWI-Prolog von Jan Wielemaker, Version 5.6.47 (mit der
XPCE-Bedienoberfläche, oder neuer). Dazu gibt es eine WWW-Seite unter
http://www.swi-prolog.org/
wo man sich eine Kopie von SWI-Prolog besorgen kann, um es auf
dem eigenen PC zu installieren. Auf dieser Seite findet man im
Abschnitt Documentation eine WWW-Version des Handbuchs für
SWI-Prolog. Darin sucht man durch Anklicken der 4 Bilder in der ersten Zeile.
SWI-Prolog von der Linux/Unix-Shell aufrufen:
In einem X-Terminal gibt man auf der Unix/Linux-Shell den Befehl
xpce (am Inst.für Informatik auch: pl-cis)
ein; dann startet SWI-Prolog 5.2.47 (bzw. SWI-Prolog 5.2.54). Es hat ein
integriertes graphisches Hilfesystem, einen graphischen Tracer zur
Fehlersuche, und eine vereinfachte Version des Emacs-Editors geladen. Mit
dem SWI-Prolog-Befehl
help(Befehl). oder apropos(Thema).
kann man dann über ein Hilfsfenster Information über einen
PROLOG-Befehl oder ein Thema im Handbuch suchen lassen.
Mit dem SWI-Prolog-Befehl
emacs.
kann man den Editor aufrufen, der in einem eigenen Fenster startet. (Wir
werden üben, wie man damit eine Programmdatei schreibt und das Programm an
Prolog schickt.) Mit dem
SWI-Prolog-Befehl
guitracer.
kann man den graphischen oder ,,symbolischen'' Tracer aufrufen, um die
Abarbeitung eines Programms schrittweise zu verfolgen. (Der Tracer muß
aber mit weiteren Befehlen, debug. oder trace. oder
spy(Befehl) eingeschaltet werden.) Mit dem SWI-Prolog-Befehl
manpce.
kann man Hilfe über die Programmierung der graphischen
Bedienoberfläche bekommen. Es erscheint ein Fenster, wovon wir höchstens
brauchen, daß man unter ,,Tools'' u.a. den Emacs-Editor und den
graphischen ,,Tracer'' findet. (M.E. ist der nicht-graphische Tracer
trace/2 hilfreicher.)
Prolog beenden oder abbrechen
Man beendet Prolog durch die Eingabe von
halt. oder ^D d.h. gleichzeitigem Drücken der Ctrl bzw.
Strg-Taste und der Taste d.
Wenn sich das Programm in einer Endlosschleife befindet, muß man es durch
Eingabe von
^C d.h. gleichzeitigem Drücken der Ctrl bzw.
Strg-Taste und der Taste c
stoppen und kann es dann mit
halt. oder ^D
abbrechen.
Programme schreiben
Programme schreibt man in einem Editor, speichet sie in einer Datei und
lädt diese Datei, z.B. meineProgramm.pro, indem man in Prolog den Befehl
consult('meineProgramm.pro'). oder ['meineProgramm.pro'].
eingibt (ggf. mit passenden Pfadnamen). Wir empfehlen, als Editor den
eingebauten Editor zu benutzen, den man mit emacs. aus Prolog
aufruft. (In seiner Fensterleiste gibt es Optionen, die Datei zu sichern und
nach Prolog zu laden.)
Dateien mit Prolog-Programmen sollten einen Namen tragen, der mit
,,.pro'' endet. Daran erkennt der Emacs-Editor, daß es sich um
PROLOG-Programme handeln soll; er kann dann die Schlüsselwörter von
PROLOG farbig markieren und die Programme lesbar formatieren. Außerdem
bietet er dann ein Menü Prolog an, in dem man bestimmte Befehle,
z.B. das Laden einer Programm-Datei in das laufende PROLOLG-System, durch
anklicken mit der Maus aufrufen kann.
File translated from
TEX
by
TTH,
version 3.67.
On 3 Aug 2009, 18:42.