Chapter. Applying Program Analysis to Code Retrieval