Practical Reliability of Systems
Recent years have shown adoption of new software trends such as machine learning, programmable computer networks, and blockchain frameworks. Several software bugs and attacks have demonstrated the importance of bringing formal guarantees to such systems. Techniques from verification, automated reasoning and program synthesis were shown successful in providing such guarantees for software systems. My research extends these techniques to these new software trends.
In this talk, I will focus on deep learning and will present two novel, complementary methods, leveraging abstract interpretation and logical constraints, for making deep learning models more reliable and interpretable.