| No. | Date | Topic |
|---|---|---|
| 1. | 23.2. | Introduction to declarative programming languages. Comparison to classical imperative languages. Introduction to programming for artificial intelligence. |
| 2. | 2.3. | Lisp and Scheme: basic language idioms, atoms, lists, recursion. |
| 3. | 9.3. | Scheme: lambda abstraction, built-in functions, advanced data structures. |
| 4. | 16.3. | Scheme: relations between iterations and tail recursion optimisations guaranteed by the language standard, built-in high-order functions. |
| 5. | 23.3. | Scheme: state space search, applications in artificial intelligence. |
| No. | Date | Topic |
|---|---|---|
| 6. | 30.3. | Haskell: types, patterns, built-in functions, lambda abstraction. |
| 7. | 6.4. | Haskell: advanced properties of the language in comparison to Scheme. |
Prolog (we follow Peter Flach's Simply Logical course book)
| No. | Date | Topic |
|---|---|---|
| 8. | 13.4. | Prolog: facts, rules and queries. Recursion. Query answering. |
| 9. | 20.4. | Prolog: functions and list operations (SL chapter 1 cont'd) |
| 10. | 27.4. | Prolog and logic: clauses, Herbrand base, interpretation, model, closed-world assumption, decidability. |
| 11. | 4.5. | Cut and negation. Extralogical operators, arithmetics. |
| 12a. 12b. | 18.5. | Combinatorial search in Prolog. |
| 13. | 25.5. | Inductive reasoning in logic |
prolog-model_questions.pdf Three exemplary examination questions (Prolog part)