I am mainly interested in formal methods
and programming languages for distributed and mobile systems, such as
service oriented systems (including microservices and serverless) and IoT systems. I aim at providing
languages, analysis techniques and tools to support the programming of
correct concurrent and distributed applications. I am currently active
in reversible computing (see also our overview book), and in
particular reversible
debugging of Erlang programs,
and choreographic
programming.
DCore: French ANR project on Causal Debugging for Concurrent Systems
SmartCloud: French ANR project on Smart Dynamic Adaptivity for Cloud Computing Systems
ReGraDe-CS: European HEU Marie Skłodowska-Curie Postdoc Fellowship on Reversible Gray Debugging of Concurrent Systems, as supervisor
RCR: Reversible Computing Research Group, which aims at coordinating the Italian research in the field of reversible computing
RISICO: Italian GNCS project on "Reversibilita' In SIstemi COncorrenti: analisi quantitative e funzionali" (Reversibility in Concurrent Systems: Functional and Quantitative Analysis)
SAFER: EU (FEDER) and the Spanish MCI/AEI project on "Analysis and Validation of Software and Web Resources", as international collaborator
OVERLAY: fOrmal VERification, Logic, Automata, and sYnthesis research group on Formal Methods for AI
Distinguished Reviewer Award in the "31st European Symposium on Programming" (ESOP 2022), part of the European joint conferences on theory & practice of software (ETAPS)
My PhD thesis has been awarded the prize for the best PhD theses in Theoretical Computer Science by the Italian Chapter of EATCS in 2007.
Work
You can find more detailed information about my work and my job history (talks, projects, event organization, teaching, ...) here.
Teaching
Office hours: by e-mail appointment, at my office (Mura Anteo Zamboni 7, second floor).
I am currently teaching Computer Architecture (first cycle degree in Computer Science), Service-Oriented Software Engineering (second cycle degree in Computer Science) and Computational Methods for Bioinformatics (second cycle degree in Bioinformatics). See here for more information.
I will soon start teaching Introduction to Quantum Computing and Microservices Software Architectures.