Studying at the University of Verona

Here you can find information on the organisational aspects of the Programme, lecture timetables, learning activities and useful contact details for your time at the University, from enrolment to graduation.

This information is intended exclusively for students already enrolled in this course.
If you are a new student interested in enrolling, you can find information about the course of study on the course page:

Laurea in Informatica - Enrollment from 2025/2026

The Study Plan includes all modules, teaching and learning activities that each student will need to undertake during their time at the University.
Please select your Study Plan based on your enrollment year.

2° Year  activated in the A.Y. 2015/2016

ModulesCreditsTAFSSD
12
B
INF/01
6
C
FIS/01
6
B
ING-INF/05
12
B
ING-INF/05
Un insegnamento a scelta tra i seguenti

3° Year  activated in the A.Y. 2016/2017

ModulesCreditsTAFSSD
12
B
ING-INF/05
Un insegnamento a scelta tra i seguenti
Prova finale
6
E
-
activated in the A.Y. 2015/2016
ModulesCreditsTAFSSD
12
B
INF/01
6
C
FIS/01
6
B
ING-INF/05
12
B
ING-INF/05
Un insegnamento a scelta tra i seguenti
activated in the A.Y. 2016/2017
ModulesCreditsTAFSSD
12
B
ING-INF/05
Un insegnamento a scelta tra i seguenti
Prova finale
6
E
-

Legend | Type of training activity (TTA)

TAF (Type of Educational Activity) All courses and activities are classified into different types of educational activities, indicated by a letter.




S Placements in companies, public or private institutions and professional associations

Teaching code

4S00005

Credits

6

Language

Italian

Scientific Disciplinary Sector (SSD)

INF/01 - INFORMATICS

Period

I sem. dal Oct 3, 2016 al Jan 31, 2017.

Learning outcomes

The course covers standard principles and methods in theoretical computer science, notably in automata theory and computability.
The course aims at providing theoretical computer science and programming languages capabilities.
At the end of the course, the student will have to show: to know and understand advanced computer science notions; to be able to apply the acquired capabilities and knowledge for solving problems in its field of study; to be able to develop necessary expertise for affording the following studies with a sufficient degree of autonomy.

Program

The course requires the standard courses on Programming, Algorithms, Discrete mathematics and logic. It is introductory for the advanced courses in Complexity, Programming languages and Compilers, as well as for the courses in Security and Cryptography, Static Analysis and Protection, Artificial Intelligence, Automated Deduction, Semantics, Non-standard computational models.
The course is structured in two parts.

Automata and formal languages (28h):
Formal languages and grammars,
finite state automata and regular languages,
context-free languages, normal forms, Push-down automata,
Chomsky classification of formal languages.

Computability (34h):
intuitive notion of algorithm,
Turing analysis of computable functions, Turing machines and WHILE-programs,
Church thesis,
Goedelization, universality,
Theorem s-m-n, unsolvable problems and halting problem,
metaprogramming,
recursive and recursive enumerable sets,
Recursion theorems, Rice Theorem,
reducibility, complete, creative and productive sets.

Reference texts
Author Title Publishing house Year ISBN Notes
N. Jones Computability and Complexity MIT Press 1997
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman Introduction to Automata Theory, Languages and Computation (Edizione 2) Addison-Wesley 2000 0201441241
Michael Sipser Introduction to the Theory of Computation PWS 1997 053494728X
H. Rogers Theory of recursive functions and effective computability MIT Press 1988

Examination Methods

Written exam in 4 sessions, with intermediate evaluation. The exams are scheduled as follows: 1 intermediate (written) evaluation during the course, 1 exam in the Extraordinary Session at the end of the course, 1 exam in the Summer Session and 1 exams in the Fall Session. Each exam is split into two parts which can be passed separately and the whole evaluation is obtained as the mathematical average of the two evaluations. The exam is passed if the average evaluation is greater or equal to 18/30. Each evaluation remains valid for the whole current academic year.

Mandatory oral exam for evaluation greater than 26.

The task of the written exam consists in verifying the comprehension of course contents and the capability to apply these contents in the resolution of exercises in which students have to mainly classify languages (regular or context free) and sets (recursive theory and completeness) by using the formal proof tools provided in the course.
The task of the oral exam is that of verify an advanced comprehension of the course contents allowing a critic analysis and a reprocessing of the studied notions and results. This comprehension may be verified also by asking theorems and proofs.

Students with disabilities or specific learning disorders (SLD), who intend to request the adaptation of the exam, must follow the instructions given HERE