elenco   
        corso   

Fondamenti dell'Informatica: Calcolabilitą e Complessitą A

(Corso di Laurea in Informatica (quinquennale))

Codice: 4I038Crediti: 6Semestre: 1Sigla: FCC 

Docente

Pierpaolo Degano   degano@di.unipi.it  Stanza 285  Tel. 0502212757

Prerequisiti

Obiettivi di apprendimento

Descrizione

Il corso introduce le nozioni fondamentali della teoria della calcolabilità. e della complessità. La prima parte delinea i concetti e la natura dei problemi che hanno soluzione effettiva. La seconda parte caratterizza i problemi che sono risolvibili con risorse di calcolo limitate.

English Description

We will introduce the basics of computability and complexity theory. The first part studies the concepts and the nature of effectively solvable problems. The second part characterizes the problems that are solvable with limited computing resources.

Programma

Introduzione (5h + 3h)
Programmi for/while e macchine di Turing.
Funzioni calcolabili e non; problemi solubili e non; il problema della fermata.

Calcolabilità (10h + 6h)
Le funzioni calcolabili e la tesi di Church.
Funzioni ricorsive primitive e generali.
La forma normale di Kleene.
Funzioni universali e interpreti.
Il teorema s-m-n.
Insiemi ricorsivi e ricorsivamente enumerabili; riducibilità.
Il teorema di Rice.

Complessità (10h + 6h)
Complessità di problemi e sue misure: tempo e spazio.
Classi di complessità e loro robustezza; problemi ardui e problemi completi.
Funzioni polinomiali e riducibilità polinomiale.
La classe P-time e la P-completezza; principali problemi P-completi.
La classe NP-time e la NP-completezza.
Teorema di Cook e principali problemi NP-completi.
Altre classi di complessità.
Gerarchie di classi di complessità.

Ore lezione: 25Ore esercitazione: 15   

Bibliografia

Testi di riferimento Testi di consultazione

Modalità di esame


Ulteriore pagina web del corso:


home


email