Abstract: Introduction to Declarative Programming, Logic Programming, Agent-Oriented Programming with practical lab sessions in Prolog.

Contents:
The course will introduce rational software agents. In particular, it will present languages for modeling and implementing their reasoning mechanism. Some space will be devoted to connections between Prolog, Semantic Web and Computational Linguistics.

Program:
The course will devote about eight-ten hours to introducing Prolog, the logic programming language that better shows how to support rationality of a software system. About four-six hours will be spent in laboratory to better understand the Prolog language from a practical viewpoint. The remaining hours of the course will be devoted to Jason, a logic-based agent-oriented programming language (related with the Multiagent Systems course of the Master in Computer Science), and to connections between Prolog, Semantic Web and Computational Linguistics (related with the Data Semantics course of the Master in Computer Science).