Write a Blog >>
PLDI 2021
Sun 20 - Sat 26 June 2021 PLDI
Mon 21 Jun 2021 09:55 - 10:35 at Infer Practitioners - Session 1 Chair(s): Dino Distefano

Static analysis tools that produce high numbers of false positives may harm productivity and are less likely to be adopted. Previous research has addressed this challenge by proposing filtration and prioritization techniques for warnings that improve the usability of these tools, e.g., by showing true positives first. In this talk, we describe our preliminary efforts with a neural language model, based on long-short term memory (LTSM) networks, capable of detecting and classifying true and false positive patterns found by Facebook Infer. The model was trained with Infer’s intermediate language information from over 500 warnings—collected from 5 real-world projects and manually labeled as true/false positives. After data cleansing, we applied distinct types of transformations to the input to improve the model generalization, such as abstracting numbers and strings both in literals and identifiers, extracting English words from identifiers, and abstracting program-specific words. Different combinations of these transformations were used to train and test the model to understand which set of transformations offers the best performance. Our model produces a list of warnings sorted by the probability of being a false positive. Experiments consider two different scenarios: 1) within-project classification, where developers continuously run the tool over the same set of projects; and, 2) cross-project classification, where developers deploy the tool on a new program. Preliminary results show an accuracy of 86% for the first scenario and 66% for the second. Performing cross-project classification is more challenging since the model has to capture false positive patterns in programs that were not seen before, potentially with new vocabulary and dependencies.

Mon 21 Jun

Displayed time zone: Eastern Time (US & Canada) change

09:00 - 11:45
Session 1Infer Practitioners at Infer Practitioners
Chair(s): Dino Distefano Facebook London
09:00
40m
Talk
Journey to null safety for Java at Facebook. An experience report.
Infer Practitioners
Artem Pianykh Facebook London, Mitya Lyubarskiy Facebook London
09:40
15m
Live Q&A
Q&A 1
Infer Practitioners

09:55
40m
Talk
Classifying and Prioritizing Facebook Infer's Warnings
Infer Practitioners
Sofia Reis Instituto Superior Técnico, U. Lisboa & INESC-ID, João Francisco Roberto Martins Instituto Superior Técnico, U. Lisboa & INESC-ID, João F. Ferreira INESC-ID and IST, University of Lisbon, Rui Abreu Faculty of Engineering, University of Porto, Portugal
10:35
15m
Live Q&A
Q&A 2
Infer Practitioners

10:50
40m
Talk
Compositional checking of safety temporal properties
Infer Practitioners
Radu Grigore Facebook
11:30
15m
Live Q&A
Q&A 3
Infer Practitioners