Programming Languages and Technical Disruption
[Video of my keynote presentation at PLDI 2016.] What do cheating on fuel economy, the London Whale, and building a better mosquito trap have in common? We are constantly bombarded with technical innovations that disrupt…
Steel: A Concurrent Separation Logic Framework to Scale Up Verification in F*
In recent years, the F* ecosystem has been successfully used to formally verify real-world applications ranging from parsers to cryptographic providers. Nevertheless, verification is still time-consuming, and scaling up is still challenging due to (1)…
Reproducible Codes and Cryptographic Applications
In this talk I will present a work in progress on structured linear block codes. The investigation starts from well-known examples and generalizes them to a wide class of codes that we call reproducible codes.…
Towards Secure and Interpretable AI: Scalable Methods, Interactive Visualizations, and Practical Tools
The explosion of available idea repositories — scientific papers, patents, product descriptions — represents an unprecedented opportunity to accelerate innovation and lead to a wealth of discoveries. Given the scale of the problem and its…
When deep learning met code search
Decoding Multisensory Attention from Electroencephalography for Use in a Brain-Computer Interface
Brain-computer interfaces (BCIs) offer a non-verbal and covert way for humans to interact with a machine. They are designed to interpret user’s brain state that can be translated into action or other communication purposes. While…
Efficient Robot Skill Learning: Grounded Simulation Learning and Imitation Learning from Observation
For autonomous robots to operate in the open, dynamically changing world, they will need to be able to learn a robust set of skills from relatively little experience. This talk begins by introducing Grounded Simulation…
Algorithmic Improvisation for Dependable and Secure Autonomy
Algorithmic Improvisation, also called control improvisation, is a new framework for automatically synthesizing systems with random but controllable behavior. In this talk, I will present the theory of algorithmic improvisation and show how it can…