Extensions of a Generic Static Analyzer

I am currently developing a generic static analyzer mostly for prototyping and teaching purposes. The analyzer is written in Java, currently analyzes a subset of the Java programming language, and supports very few simple analysis. However, such analyzer has been 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. A prerequisite for developing a thesis in such context is to have attended the course on “Software correctness, security, and reliability

Using Chess Engines 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 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.