Skip to main content
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
e-Learning - UNIMIB
  • Home
  • My Media
  • More
Listen to this page using ReadSpeaker
English ‎(en)‎
English ‎(en)‎ Italiano ‎(it)‎
 Log in
e-Learning - UNIMIB
Home My Media
Percorso della pagina
  1. Science
  2. Master Degree
  3. Informatica [F1802Q - F1801Q]
  4. Courses
  5. A.A. 2023-2024
  6. 1st year
  1. Theory of Computation
  2. Summary
Unità didattica Course full name
Theory of Computation
Course ID number
2324-1-F1801Q132-F1801Q133M
Course summary SYLLABUS

Blocks

Back to Models and Computation

Course Syllabus

  • Italiano ‎(it)‎
  • English ‎(en)‎
Export

Obiettivi

Teoria della Computazione ha come obiettivo l'acquisizione di strumentalità di base dell'informatica volte alla comprensione della complessità computazionale dei problemi, alla loro classificazione e alle metodologie algoritmiche per la loro soluzione. Inoltre, si intende fornire capacità in merito alla soluzione di problematiche teoriche poste dalle nuove tecnologie (web, dati massivi, reti complesse, etc.) mediante strutture dati recentemente proposte.

Contenuti sintetici

Nozioni di base di teoria della computazione (decidibilità, intrattabilità, riduzioni). Classificazione dei problemi in funzione della complessità computazionale. Approcci moderni per la gestione, indicizzazione, compressione di dati massivi sia con strutture dati che con tecniche algoritmiche innovative. Strutture dati succinte (FM-index), indicizzazione e ricerca per i big-data con tecniche di hashing probabilistico, algoritmi di compressione dati.

Programma esteso

1. Nozioni di base di teoria della computazione (decidibilità, intrattabilità, riduzioni). Classificazione dei problemi in funzione della complessità computazionale.

2. Approcci moderni per la gestione, indicizzazione, compressione di grandi moli di dati, sia con strutture dati che con tecniche algoritmiche avanzate.

3. Strutture dati di indicizzazione (FM-index, bloom filters, hashing), pattern matching, paradigma shift-and, compressione dati LZ, strutture dati succinte.

4. Applicazioni ed esemplificazioni all'analisi di big-data.

Prerequisiti

Nessuno

Modalità didattica

Lezioni frontali ed esercitazioni.

Materiale didattico

Dispense e slides del docente.
Libro: Sipser, Michael. Introduzione alla teoria della computazione.

Periodo di erogazione dell'insegnamento

Primo semestre.

Modalità di verifica del profitto e valutazione

Prova scritta. La prova scritta consiste nello svolgimento di esercizi relativi all'acquisizione di competenze specifiche nelle tematiche principali del programma del corso.

Orario di ricevimento

Per appuntamento.

Export

Aims

Theory of Computation deals with the acquisition of basic theoretical tools that allow to understand the computational complexity of problems, how they are classified according to their complexity and then how they can be solved by algorithmic methodologies. The course provides skills on the use and design of novel data structures that are relevant in dealing with modern applications (web, complex networks, massive data, and so on).

Contents

Basic notions of theory of computation (decidability, intractability). Classification of problems with respect to their computational complexity. Modern approaches to indexing, compression of large data sets by using novel data structures and algorithmic techniques. Indexing data structures (suffix tree, trie, hashing, FM-index), pattern matching, the shift-and paradigm, data compression. Applications to the WEB (complex networks).

Detailed program

1. Basic notions of theory of computation (decidability, intractability, reductions). Classification of problems with respect to their computational complexity.

2. Modern approaches to indexing, compression of massive data sets by using novel data structures and algorithmic techniques.

3. Indexing data structures (bloom filters, hashing), pattern matching, the shift-and paradigm, data compression, succinct data structures.

4. Applications to the analysis of massive data.

Prerequisites

None

Teaching form

Lectures and practice exercises.

Textbook and teaching resource

Slides and written notes.
Textbook: Sipser, Michael. Introduction to the Theory of Computation. 3rd ed.

Semester

First semester.

Assessment method

Oral exam. The written exam consists of a list of exercises whose solution requires the acquisition of skills related to the main topics of the course syllabus.

Office hours

By appointment.

Enter

Key information

Field of research
INF/01
ECTS
6
Term
First semester
Activity type
Mandatory
Course Length (Hours)
52
Degree Course Type
2-year Master Degreee
Language
Italian

Staff

    Teacher

  • DC
    Davide Cozzi
  • Yuri Pirola
    Yuri Pirola
  • RR
    Raffaella Rizzi

Enrolment methods

Manual enrolments
Self enrolment (Student)

You are not logged in. (Log in)
Policies
Get the mobile app
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy policy
  • Accessibility
  • Statistics