Theses

Extensions of LiSA (Library for Static Analysis)

The Software and System Veryfication group at UniVE is currently developing LiSA, a Java library that aims to ease the creation and implementation of static analyzers based on the Abstract Interpretation theory. Such analyzer is designed to be easily extended to other domains, programming languages, and properties of interests. Therefore, I am highly interested in any thesis that is focused towards the formalization and implementation of novel extensions of such analyzer. Possible thesis topics range from developing a parser to translate a programming language (e.g., Java, Python or JavaScript) to LiSA Abstract Syntax Tree (suitable for a bachelor theses), to the formalization and/or implementation of well known complex domains (suitable for master theses – a prerequisite in this case would be to have attended the course on “Software correctness, security, and reliability“).

A Web application for Chess Instructors

I am a passionate chess player and instructor. Nowadays, there are several open source or freeware chess engines, and they all rely on the UCI protocol. There are also several Web interfaces (such as lichess and chess.com) that allows to play and train people all around the world. I would like to rely on these chess engines to automatically develop chess exercises and training programs that can be adopted by chess instructors for players at different strength levels. Such project will be developed in Java. There is no specific requirement for bachelor or master theses in this context, since the bases are already covered by the mandatory courses of the bachelor curriculum in Computer Science.