Semantics (2005/2006)

Course partially running

Course code
4S00065
Name of lecturer
Andrea Masini
Number of ECTS credits allocated
5
Academic sector
INF/01 - INFORMATICS
Language of instruction
Italian
Location
VERONA
Period
not yet allocated

Learning outcomes

Scopo del corso è quello di introdurre le principali tecniche matematiche usate nello studio dei linguaggi di programmazione:

* sistemi di tipi
* semantica operazionale
* domini
* semantica denotazionale

Il corso si rivolge a studenti con uno spiccato interesse per l'informatica teorica.

Il corso presuppone le competenze acquisite nei corsi di "Programmazione", "Logica", "Algebra", "Linguaggi di Programmazione" e "Fondamenti dell'informatica" della laurea triennale in informatica.

Syllabus

1 semantica operazionale
1.1 il linguaggio IMP
1.2 regole di valutazione
2 principi di induzione
2.1 induzione matematica, strutturale e ben fondata
2.2 induzione sulle derivazioni
2.3 definizioni per induzione
3 definizioni induttive
3.1 regole e induzione
3.2 regole di prova per la semantica operazionale
3.3 operatori e punti fissi
4 semantica denotazionale di IMP
4.1 semantica denotazionale
4.2 confronto con la semantica operazionale
4.3 ordini parziali completi (cpo)
4.4 teorema di Knaster-Tarski di punto fisso
5 introduzione alla teoria dei domini
5.1 costruzione di cpo
5.2 un metalinguaggio per la teoria dei domini
6 la ricorsione
6.1 il linguaggio REC
6.1 call-by value e call-by-name (semantiche operazionali e denotazionali)
7 linguaggi tipati
7.1 tipi
7.2 un linguaggio call-by-value: semantica operazionale e denotazionale
7.3 un linguaggio call-by-name: semantica operazionale e denotazionale
7.5 confronto delle semantiche operazionali e denotazionali

Reference books
Author Title Publisher Year ISBN Note
G. Winskel The formal Semantics of Programming Languages MIT Press 1993

Assessment methods and criteria

L'esame consiste in una prova orale

Share