Foundations of Computing (2019/2020)

Course code
4S02789
Credits
12
Coordinator
Massimo Merro
Teaching is organised as follows:
Unit Credits Academic sector Period Academic staff
INTELLIGENZA ARTIFICIALE 6 INF/01-INFORMATICS See the unit page See the unit page
LINGUAGGI 6 INF/01-INFORMATICS I semestre Massimo Merro

Learning outcomes

The aim of the course is to present: (i) the theoretical bases of programming languages; (ii) the main paradigms and techniques of symbolic representation and automatic solution of problems. For this purpose, in the language module, various paradigmatic languages ​​will be studied, even of a higher order. This module will focus on the concepts of operational and system-based semantics. Instead, the Artificial Intelligence module provides tools for designing, applying, and evaluating algorithms for difficult problems. The mechanized solution of such problems captures aspects of artificial intelligence or computational rationality.

Syllabus

Please, refer to the programs of the two modules that constitute the course.

Assessment methods and criteria

The candidate must pass the exams of both modules with a mark greater than or equal to 18/30. The mark of the entire course is obtained from the average by excess of the votes obtained in the two modules.

Reference books
Author Title Publisher Year ISBN Note
Stuart Russell, Peter Norvig Artificial Intelligence: A Modern Approach (Edizione 2) Prentice Hall 2003 0137903952
Rina Dechter Constraint Processing (Edizione 1) Morgan Kaufmann 2003 ISBN 978-1-55860-890-0
Richard S. Satto and Andrew G. Barto Reinforcement Learning: an introduction MIT press 1998 ISBN 0-262-19398-1
Carl A. Gunter Semantics of Programming Languages MIT Press 1992 0262570955
Peter Sewell Semantics of Programming Languages (Edizione 5) Cambridge University Press 2017
G. Winskel The formal Semantics of Programming Languages MIT Press 1993
Benjamin Pierce Types and Programming Languages (Edizione 1) MIT Press 2002 ISBN-10: 0262162091