6 ECTS credits
150 u studietijd
Aanbieding 2 met studiegidsnummer 4023874FNW voor werkstudenten in het 1e semester met een gespecialiseerd master niveau.
1) Theoretical background: syntax, semantics and proof theory of clausal logic
2) From logic programming to Prolog: SLD-resolution, steering the search process, negation as failure
3) Applications: knowledge representation, search algorithms, meta-programming
4) Evaluation variants: co-routining evaluation
5) Advanced reasoning techniques: definite clause grammars in natural language processing, constraint logic programming
All transparencies and their accompanying code are available on the website.
Book:
Simply Logical - Intelligent Reasoning by Example
Peter Flach, Wiley, 1994
Freely available at http://www.cs.bris.ac.uk/~flach/SimplyLogical.html
The goal of this course is three-fold:
- to offer students insight into the theoretical background that underlies the declarative programming paradigm
- to familiarize students with specific programming languages in this paradigm
- to acquaint students with applications in the domain of artificial intelligence and automated reasoning for which declarative programming is well-suited
The corresponding competences are:
Knowledge and Understanding:
Students have to be able to describe and motivate the underlying principles of declarative programming and logic programming in particular. Based on this theoretical background, students have to be capable of deriving the declarative as well as the procedural interpretation of a concrete logic program.
Application of Knowledge and Understanding:
Students have to be able to apply their newly gained knowledge to typical problems in artificial intelligence.
To this end, the students will develop modest logic programs during the exercise sessions.
Students also have to be able to design a more elaborate knowledge-based system and implement this using logic programming techniques. To this end, students will complete an individual programming project.
Making Judgements:
Students have to be capable of determining whether a given problem lends itself to an implementation that is based on logic programming.
Communication:
Students have to be able to motivate the decisions they make with respect to the aforementioned project, demonstrating that they can communicate clearly on the above topics.
Learning Skills:
Referencing the concepts taught in this course, students will be able to acquaint themselves independently with programming languages from the declarative paradigm and recognize opportunities for applying such languages in practice.
De beoordeling bestaat uit volgende opdrachtcategorieën:
Examen Schriftelijk bepaalt 50% van het eindcijfer
ZELF Praktijkopdracht bepaalt 50% van het eindcijfer
Binnen de categorie Examen Schriftelijk dient men volgende opdrachten af te werken:
Binnen de categorie ZELF Praktijkopdracht dient men volgende opdrachten af te werken:
The exam consists of two parts:
- a written exam about the entire course (50%)
- three programming projects, 1 being an on-line quiz, and 2 solving a given problem in prolog (50%)
The end result is calculated as the average of the results on both parts.
Deze aanbieding maakt deel uit van de volgende studieplannen:
Master in Applied Sciences and Engineering: Computer Science: Artificial Intelligence (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Multimedia (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Software Languages and Software Engineering (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Multimedia for Northwestern Polytechnical University (NPU) (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Data Management and Analytics (enkel aangeboden in het Engels)