Logics, at the crossing of mathematics, philosophy, and computer science, has proved in the last decades a powerful tool in understanding complex systems. It is instrumental in the development of formal methods, whose applications include security, databases, program and systems verification, and program analysis.
However, the rise of machine learning techniques challenges the classical approaches of formal methods. In particular, it is very hard today to assess whether a machine learning engine is fair, correct, or even terminating. We aim at crossing this gap by developing logical tools and formal methods for understanding and analysing machine learning algorithms. The long-term objective is to give logical foundations to the emerging field of data science and support the design and engineering of trustworthy data systems.