Prolog eLearning
Tutorial
Navigation
Aufgaben
SWISH Interpreter
Kapitel
1: Fakten, Regeln
2: Matching
3: Rekursion
4: Listen
5: Arithmetik
6: Listenprädikate
7: DCGs
8: param. DCGs
9: Terme
10: Cut, Negation
11/12: weitere Prädikate
Nützliche Links
Learn Prolog Now
SWISH Online Interpreter
HedgeDoc – Code Austausch
Aufgaben
Hier findest du eine Übersicht der Aufgaben:
1: Fakten, Regeln
01.01. Atome, Variablen und komplexe Terme
01.01.01. Atome, Variablen und komplexe Terme – Tester
01.02. Klauseln, Regeln, Fakten, Prädikate
01.02.01. Klauseln, Regeln, Fakten, Prädikate – Anzahl
01.03. Formuliere Fakten und Regeln
01.03.01. Formuliere Fakten und Regeln – Aufgaben
01.04. Familiendatenbank
01.04.01. Familiendatenbank – Wissensbasis
01.04.02. Familiendatenbank – Verstehen der Aufgabe
01.04.03. Familiendatenbank – Prolog
01.04.04. Familiendatenbank – Zusatzaufgabe
2: Matching
02.01. Matching
02.01.01. Matching Tester
02.02. Die Negation des Unifikationsoperators
02.02.01. Negation des Unifikationsoperators
02.03. Linien
02.03.01. Linien – Verstehen der Prädikate
02.03.02. Linien – Verstehen 2
02.03.03. Linien – Endspurt
02.04. Beweis und Suchbaum
02.04.01. Beweis – magic(X).
02.04.02. Suchbaum – magic(X).
02.05. Englische Grammatik
02.05.01. Englische Grammatik – Anfragen verstehen
02.05.02. Englische Grammatik – Matches
02.05.03. Englische Grammtik – Verständnisaufgabe
02.05.04. Englische Grammatik – Vertiefung
02.06. Deutsche Grammatik
02.06.01. Deutsche Grammatik – Einstieg
02.06.02. Deutsche Grammatik – Verständnis
02.06.03. Deutsche Grammatik – Vertiefung
02.06.04. Deutsche Grammatik – Plural/Maskulinum
02.06.05. Deutsche Grammatik – Finale
02.07. Kreuzworträtsel (Zusatzaufgabe)
3: Rekursion
03.01. Fressen und gefressen werden
03.01.01. Fressen und gefressen werden
03.02. Vorfahr
03.02.01. Vorfahr – Rekursion verstehen
03.03. Züge
03.03.01. Züge
03.04. greater_than
03.04.01. greater_than
03.04.02. greater_than – Version A
03.04.03. greater_than – Version B
03.05. Addition
03.06. swap
03.06.01. swap – Vorgehensweise
03.06.02 – swap/2
03.07. Learn Prolog Now!
4: Listen
04.01. syntaktisch wohlgeformte Liste
04.01.01. syntaktisch wohlgeformte Liste – Fragen
04.02. Matching von Listen
04.03. Matching von Listen mit anonymer Variable
04.04. Einfache Listenprädikate – third
04.04.01. einfache Listenprädikate – third Hinweise
04.05. einfache Listenprädikate – tausch
04.05.01 tausch/2
04.06. member
04.07. all_members
04.07.01. all_members – Anfragen und mehr
04.08. set_equal
04.08.01. set_equal – Hinweise
04.08.02. set_equal – nützliche Prädikate
04.09. endlicher Automat
04.09.01. endlicher Automat – Verstehen
04.09.02. endlicher Automat – Vertiefung
04.09.03. endlicher Automat – Accept
04.09.04. endlicher Automat – Selbstversuch
04.10. Grammatik
04.10.01 Grammatik – Verständnis
04.11. Übersetzung
04.12. Endliche Transduktoren (Zusatzaufgabe)
04.13. twice (Zusatzaufgabe)
04.14. combine (Zusatzaufgabe)
04.14.01. Zusatzaufgabe – combine1
04.14.02. Zusatzaufgabe – combine2
04.14.03. Zusatzaufgabe – combine3
04.15. Logikaufgabe (Zusatzaufgabe)
5: Arithmetik
05.01. Arithmetische Operatoren
05.01.01. Arithmetische Operatoren
05.02. produkt/3
05.02.01. produkt/3 – Verständnis
05.03. direkterNachfolger/2
05.04. Listenlänge bestimmen
05.04.01. Listenlänge bestimmen – Fehlersuche
05.05. Prädikate für den Vergleich von Listenlängen
05.05.01. Prädikate für den Vergleich von Listenlängen
05.05.02. Prädikate für den Vergleich von Listenlängen
05.05.03. Prädikate für den Vergleich von Listenlängen
05.06. maximales Listenelement bestimmen
05.06.01. maximales Listenelement bestimmen
05.07. Listenelemente verdoppeln
05.07.01. Listenelemente verdoppeln – Regel formulieren
05.08. Skalare Multiplikation
05.09. Skalarprodukt (dot product)
05.10. Zusatzaufgaben
05.10.01. Zusatzaufgabe – arit/2
05.10.02. Zusatzaufgabe – Minimum
05.10.03. Zusatzaufgabe – gerade/2
6: Listenprädikate
06.01. Grammatik mit append/3
06.02. Palindrom
06.02.01. – palindrom/2 – Was ist ein Palindrom?
06.02.02. palindrom/2 – Verschiedene Strategien
06.02.03. palindrom/3 Strategie mit Akkumulatoren
06.02.04. palindrom/2 Strategie mit reverse/2
06.03. Wiederholwörter
06.03.01. wiederhol/1
06.03.02. wiederhol/1 – Vorbereitung
06.03.03. wiederhol/3 – Zusammensetzung
06.04. Listenprädikate sublist
06.05.01. Listenprädikate first und last
06.05.02. Listenprädikate swapfl (Zusatzaufgabe)
06.05.02.01. Listenprädikate sublist und swapfl
06.06. deleteall/3
06.06.01. deleteall/3
06.07. delete_sublist/3
06.08. Verflachung von Listen (Zusatzaufgabe)
06.09. permute/2 (Zusatzaufgabe)
06.10. Parser
06.11. Logikrätsel 1 (Zusatzaufgabe)
06.12. Logikrätsel 2 (Zusatzaufgabe)
7: DCGs
07.01. Grammatiken in Prolog
07.02. externe/interne Notation
07.03. rechtslineare Grammatik für formale Sprache
07.03.01. FSA zu rechtslinearer Grammatik
07.04. DCG formale kontextfreie Sprache
07.04.01. CFG zu DCG
07.05. Erweiterte Grammatik
07.05.01 – Grammatiken
07.05.02. Grammatiken 2
07.05.03 – Erweiterung der Grammatik
07.06. Aussagenlogik (Zusatzaufgabe)
8: param. DCGs
08.01. externe/interne Notation
08.02. Grammatik
08.03. Separieren des Lexikons
08.04. kontextsensitive Sprachen
9: Terme
09.01. Matching- und Vergleichsoperatoren
09.02. negierte Matching- und Vergleichsoperatoren
09.03. Typ von Termen 1
09.04. functor/3
09.05. arg/3
09.06. univ =../2
09.07. Typ von Termen 2
09.07.01. termtype einzelne Abfragen
09.07.02. Typ von Termen 2 – Prädikat
09.08. Parser
09.09. Operatoren
09.10. jealous/2 (Zusatzaufgabe)
10: Cut, Negation
10.01. Generate all
10.02. Cut – Wirkungsweise
10.02.01 Cut – Verstehen des Prädikates
10.03. grüner Cut
10.03.01. grüner Cut
10.04. roter/grüner Cut
10.04.01. roter Cut
10.05. split/3
10.06. Zugverbindungen (Zusatzaufgabe)
10.07. Zusatzaufgaben
11/12: weitere Prädikate
11.01. Memorisierung
11.02. assert, retract
11.03. alle Lösungen
11.04. Strukturierung der Ergebnisse
11.05. max/2 mit Manipulation der Datenbasis
11.06. Zugverbindungen (Zusatzaufgabe)
11.07. Übung
11.08. Arbeit mit Dateien