FOUNDATIONS OF PROGRAMMING LANGUAGES - PART 2
| Official course title | FOUNDATIONS OF PROGRAMMING LANGUAGES - MOD.2 |
| Academic Year | 2011/2012 |
| Course code | CM0189 |
| University credits | 6 of 12 of FOUNDATIONS OF PROGRAMMING LANGUAGES |
| Degree level | Second Cycle Degree M.D.270 |
| Educational sector code | INF/01 |
| Semester/trimester | II Semestre |
| Course year | 1 |
Professor
Degree Programmes and curricula
Other parts of the course
Contents
Educational Goals
The aim of the course is that of presenting the formal techniques which can be used to describe and analyze the behavior of a a program.
The first part of the course introduces the students to the main concepts and formal techniques which have been proposed in order to model concurrent systems and to analyze their properties, in particular to CCS and Petri nets.
The second part of the course introduces the students to the mathematical principles, the formal techniques and the concepts at the base of the formal semantics of programming languages.
Requirements
Logic, Computability and Formal Languages.
Contents
First part:
- Reactive and concurrent systems.
- The language CCS: sintax and SOS semantics.
- Behavioural equivalences and Bisimulation.
- Hennessy-Milner logic.
- An introduction to Petri nets.
Second part:
- The language While: syntax.
- Semantics of expressions.
- Operational Semantics.
- Denotational Semantics.
- Axiomatic Semantics.
Recommended Reading List
First part:
L. Aceto, A. Ingolfsdottir, K.G. Larsen, J. Srba, Reactive systems, modeling, specification and Verification, Cambridge University Press, 2007.
Papers supplied by the teacher.
Second part:
H.R. Nielson, F. Nielson: Semantics with Applications, A Formal Introduction. Wiley 1999. Available at: http://www.daimi.au.dk/~bra8130/Wiley_book/wiley.html
Assessment
written and oral
Teaching Methods
Lessons in class.
Teaching Language
English.
Other information
Further information can be found on
http://moodle.dsi.unive.it/



