[ Home |
Research |
Teaching ]
Tesi di Laurea: Alcuni Spunti
Le aree di ricerca di cui mi occupo sono quelle elencate di seguito.
Gli studenti intenzionati a lavorare su questi temi nell'ambito della loro
tesi di laurea (triennale o specialistica) sono invitati a contattarmi.
- Verifica di Proprietà Quantitative di Programmi
La verifica formale di proprietà di programmi è un'attività
che in certi contesti diventa importante, se non necessaria. Ci riferiamo
in particolare a tutti quei contesti in cui l'esecuzione di un programma
che non soddisfi la proprietà richiesta può portare a conseguenze
catastrofiche. Esempi sono i programmi per la gestione delle transazioni
bancarie o i programmi che regolano il funzionamento degli aerei o delle
centrali elettriche. Tra le tante proprietà di interesse ci sono quelle che riguardano
la quantità di risorse (tempo o spazio di calcolo, ma non solo)
che il programma consuma a tempo di esecuzione. I risultati di ricerca teorici
e concreti prodotti in questi ultimi anni in questa direzione sono notevoli,
ma esistono ancora moltissimi problemi aperti.
- La Computazione Quantistica.
Nell'informatica tradizionalmente intesa, l'unità di informazione
fondamentale è il bit, o cifra binaria, che può assumere soltanto
due valori. In altre parole, l'informazione è discreta.
All'inizio degli anni Ottanta, il premio Nobel
Richard Feynman suggerì un punto di vista diverso, in cui
la complessità e la potenza della meccanica
quantistica vengono messe a disposizione del calcolo, della computazione.
In particolare, il bit viene sostituito dal qubit che a differenza
del suo predecessore può avere più di due stati (un'infinità,
in particolare). D'altra parte, la meccanica quantistica impone di accedere
e modificare i qubit solo in certi modi. Negli anni Novanta si è scoperto che
un problema che in senso classico si crede essere difficile, ovvero la
fattorizzazione dei numeri naturali, potrebbe essere risolto in tempo
polinomiale da un (ancora ipotetico) calcolatore quantistico. I principi
della meccanica quantistica sono poi stati sfruttati per risolvere il
problema della distribuzione delle chiavi, in ambito crittografico.
- Complessità Computazionale e Crittografia.
La complessità computazionale è una branca dell'informatica
teorica che si occupa di studiare la quantità di risorse
necessarie a risolvere i problemi computazionali. Negli ultimi vent'anni, la complessità
computazionale ha interagito profondamente con la crittografia, che nel frattempo
è assurta allo status di scienza proprio grazie a tale interazione.