Vai al contenuto principale
Se prosegui nella navigazione del sito, ne accetti le politiche:
  • Condizioni di utilizzo e trattamento dei dati
Prosegui
x
e-Learning - UNIMIB
  • Home
  • My Media
  • Altro
Ascolta questa pagina con ReadSpeaker
Italiano ‎(it)‎
English ‎(en)‎ Italiano ‎(it)‎
 Login
e-Learning - UNIMIB
Home My Media
Percorso della pagina
  1. Area di Scienze
  2. Corso di Laurea Magistrale
  3. Informatica [F1802Q - F1801Q]
  4. Insegnamenti
  5. A.A. 2023-2024
  6. 1° anno
  1. Modelli e Computazione
  2. Introduzione
Insegnamento con unità didattiche Titolo del corso
Modelli e Computazione
Codice identificativo del corso
2324-1-F1801Q132
Descrizione del corso SYLLABUS

Blocchi

Salta Unità didattiche

Unità didattiche

Titolo del corso Modelli della Concorrenza Codice identificativo del corso 2324-1-F1801Q132-F1801Q132M
Descrizione del corso SYLLABUS
Titolo del corso Teoria della Computazione Codice identificativo del corso 2324-1-F1801Q132-F1801Q133M
Descrizione del corso SYLLABUS

Syllabus del corso

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

Obiettivi

Il corso ha come obiettivo l'acquisizione di capacità di analisi e di sintesi in riferimento ai modelli e metodi computazionali utilizzati dall'informatica. In particolare lo studente dovrà acquisire capacità di formalizzare e modellare problemi utilizzando anche approcci teorici moderni sviluppati per poter trattare problematiche computazionali nel mondo web e di gestione di grandi molidi dati e nell'ambito della analisi e verifica di sistemi software. Il corso si compone di due moduli, il primo denominato Modelli della concorrenza fornisce gli strumenti teorici per comprendere e manipolare concetti di base dell'informatica relativi al comportamento e descrizione di processi, quali ad esempio la concorrenza. Il secondo modulo, denominato 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 intendono fornire capacità in merito alla soluzione di problematiche teoriche poste dalle nuove tecnologie (web, flusso di dati, reti complesse, etc.) mediante strutture dati recentemente proposte.

Contenuti sintetici

Teoria della Computazione: nozioni di base di teoria della computazione (decidibilità, intrattabilità, riduzioni). Classificazione dei problemi in funzione della complessità computazionale. Complessità di approssimazione e parametrica. 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. Applicazioni ed esemplificazioni all'analisi di dati del web. Modelli formali per la specifica e la verifica di correttezza.
Modelli della Concorrenza: modelli interattivi e reattivi, calcoli di processi e reti di Petri. Sintassi e semantica a interleaving (sistemi di transizioni) e a ordini parziali (reti di Petri), semantica osservazionale e bisimulazione. La specifica di proprietà e la loro verifica (logiche modali e temporali, algoritmi di verifica).

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 mole di dati, sia con strutture dati che con tecniche algoritmiche avanzate.

3 Strutture dati di indicizzazione (es. 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.

5 Modelli formali per la specifica e la verifica di correttezza. La semantica assiomatica dei programmi sequenziali

6 Modelli della concorrenza: modelli di sistemi reattivi, calcoli di processi e reti di Petri.

7 Sintassi e semantica a interleaving (sistemi di transizioni) e a ordini parziali (reti di Petri), semantica osservazionale e bisimulazione

8 La specifica di proprietà e la loro verifica (logiche modali e temporali, algoritmi di verifica).

Prerequisiti

Nessuno.

Modalità didattica

Lezioni frontali ed esercitazioni. Il corso è in lingua italiana.

Materiale didattico

Dispense e articoli pubblicati sul sito dell'insegnamento. Testi di consultazione indicati sul sito dell'insegnamento.

Periodo di erogazione dell'insegnamento

Primo semestre.

Modalità di verifica del profitto e valutazione

L'esame è integrato. Vengono erogate due prove scritte, una per la parte di Teoria e una per la parte di Modelli. Le prove scritte consistono nello svolgimento di esercizi relativi all'acquisizione di competenze specifiche nelle tematiche principali del programma del corso. Le prove orali invece comprendono una discussione della parte scritta e domande sui contenuti dell'insegnamento (si vedano i dettagli nei syllabi dei due moduli).

Il voto finale è la media dei voti parziali ottenuti sulle singole due parti.

Orario di ricevimento

Su appuntamento o come orario da ricevimento indicato su sito web.

Esporta

Aims

Concurrent models Formal Models for correctness specification and verification. Interactive and reactive models, process calculi, Petri nets. Syntax and semantics of interleaving (transition systems) and of partial orders (petri nets), observational semantics and bisimulation. Specifying and verifying properties (modal and temporal logics, verification algorithms). Theory of Computation Basic notions of theory of computation (decidability, intractability, Classification of problems with respect their computational complexity. Approximation complexity. Modern approaches to indexing, compression of large data sets by using novel data structures and algorithmic techniques. Indexed data structures (ex. Suffix-tree, trie, hashing), pattern matching.

Contents

The main objective of the course is the acquisition of skills related to the analysis and development of computational models and methods in computer science. The student should gain the ability of formalizing and modelling problems using theoretical models and modern computational approaches to solve problems arising from the WEB and the analysis and verification of software systems. The course consists of two sessions, the first one devoted to Concurrent models deals with the theoretical tools used to face basic concepts in computer science concerning the behaviour and description of processes, such as concurrency. The second session introduces to the Theory of Computation and 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.

Various notes. Suggested book: L. Aceto, A. Ingolfsdottir, K.G. Larsen, J. Srba,Reactive Systems, modelling, Specification and verification, Cambridge Univ. Press, 2007.

Detailed program

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

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

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

4 Applications to the analysis of massive data.

5 Formal Models for correctness specification and verification, assiomatic semantics

6 Concurrent models: models of reactive systems, process calculi, Petri nets

7 Syntax and semantics of interleaving (transition systems) and of partial orders (Petri nets), observational semantics and bisimulation.

8 Specifying and verifying properties (modal and temporal logics, verification algorithms).

Prerequisites

None.

Teaching form

Lectures and practice exercises. The course is in Italian.

Textbook and teaching resource

Notes and papers available on the course site. Reference texts suggested on the course site.

Semester

First semester.

Assessment method

Oral and written exams. The written exam consists of two assignments one for each module of the course, Theory and Models. Each assignment consists of a list of exercises whose solution requires the acquisition of skills related to the main topics of the course syllabus. The oral exam consists in a discussion of the written assignments with the main aim (see the details of the two modules).

The final grade is the average of the two grades obtained for each single module.

Office hours

By appointment or as indicated by the web-site.

Entra

Scheda del corso

CFU
12
Periodo
Primo Semestre
Tipo di attività
Obbligatorio
Ore
106
Tipologia CdS
Laurea Magistrale
Lingua
Italiano

Opinione studenti

Vedi valutazione del precedente anno accademico

Bibliografia

Trova i libri per questo corso nella Biblioteca di Ateneo

Metodi di iscrizione

Iscrizione manuale
Accesso ospiti

Non sei collegato. (Login)
Politiche
Ottieni l'app mobile
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy
  • Accessibilità
  • Statistiche