Affiliation:
1. University of Groningen, The Netherlands
2. Microsoft, Serbia
Abstract
Static analyses based on
typestates
are important in certifying correctness of code contracts. Such analyses rely on Deterministic Finite Automata (DFAs) to specify properties of an object. We target the analysis of contracts in low-latency environments, where many useful contracts are impractical to codify as DFAs and/or the size of their associated DFAs leads to sub-par performance. To address this bottleneck, we present a
lightweight
compositional typestate analyzer, based on an expressive specification language that can succinctly specify code contracts. By implementing it in the static analyzer
Infer
, we demonstrate considerable performance and usability benefits when compared to existing techniques. A central insight is to rely on a sub-class of DFAs whose analysis uses efficient bit-vector operations.
Publisher
Association for Computing Machinery (ACM)
Subject
Theoretical Computer Science,Software
Reference26 articles.
1. 2021. Infer TOPL. (2021). Retrieved from https://fbinfer.com/docs/checker-topl/
2. 2021. RAIL model. (2021). Retrieved from https://web.dev/rail/Accessed: 2021-09-30.
3. Scalable Typestate Analysis for Low-Latency Environments
4. FlowDroid