1.Calcolabilitą. Modelli di calcolo: la Macchina di Turing. Funzioni
calcolabili e problemi decidibili. Enumerazione delle funzioni calcolabili,
funzione universale. Tesi di Church. Esistenza di problemi non decidibili.
Problemi semidecidibili.
2. Complessitą. Macchine di Turing con risorse limitate. Classi di
complessitą. Alcune classi: P, NP, EXP, PSPACE. Riduzioni polinomiali
e problemi completi. NP-completezza, teorema di Cook, esempi di problemi
NP completi.
3. Linguaggi formali. Grammatiche a struttura di frase. Linguaggi
regolari, espressioni regolari, automi finiti. Linguaggi liberi dal
contesto, alberi di derivazione; automi a pila.