Guessing Program Annotations with Probabilistic Inference
- đ¤ Speaker: Aditya Nori, Microsoft Researcher
- đ Date & Time: Wednesday 06 April 2011, 15:00 - 16:00
- đ Venue: Small lecture theatre, Microsoft Research Ltd, 7 J J Thomson Avenue (Off Madingley Road), Cambridge
Abstract
Program analysis tools require annotations in order to be effective. We present techniques to guess annotations using hints from the programmer. In our experience, we find that it is easier for programmers to give hints, if we allow specifying facts that are likely to hold. For instance, the programmer might state that if a pointer is probed inside a method and then accessed, then it is very likely that the pointer has not been validated on entry to the method. We propose using probabilistic inference to deal with such hints, using probability as the uniform currency in representing and manipulating uncertainty. We give two examples from our experience: (1) Merlin, an inference engine for information flow annotations, and (2) Anek, an inference engine for aliasing annotations known as access permissions. These experiences have led to a general framework called BayeZ for guessing annotations via a combination of logical and probabilistic inference. We present preliminary results for BayeZ together with applications beyond programming languages.
Series This talk is part of the Microsoft Research Cambridge, public talks series.
Included in Lists
- All Talks (aka the CURE list)
- bld31
- Cambridge Centre for Data-Driven Discovery (C2D3)
- Cambridge talks
- Chris Davis' list
- Guy Emerson's list
- Interested Talks
- Microsoft Research Cambridge, public talks
- ndk22's list
- ob366-ai4er
- Optics for the Cloud
- personal list
- PMRFPS's
- rp587
- School of Technology
- Small lecture theatre, Microsoft Research Ltd, 7 J J Thomson Avenue (Off Madingley Road), Cambridge
- Trust & Technology Initiative - interesting events
- yk449
Note: Ex-directory lists are not shown.
![[Talks.cam]](/static/images/talkslogosmall.gif)

Aditya Nori, Microsoft Researcher
Wednesday 06 April 2011, 15:00-16:00