Bit-Vector Typestate Analysis
نویسندگان
چکیده
Static analyses based on typestates are important in certifying correctness of code contracts. Such rely Deterministic Finite Automata (DFAs) to specify properties an object. We target the analysis contracts low-latency environments, where many useful impractical codify as DFAs and/or size their associated leads sub-par performance. To address this bottleneck, we present a lightweight compositional typestate analyzer, expressive specification language that can succinctly By implementing it static analyzer Infer , demonstrate considerable performance and usability benefits when compared existing techniques. A central insight is sub-class whose uses efficient bit-vector operations.
منابع مشابه
Extending Typestate Checking Using Conditional Liveness Analysis
We present a practical extension to typestate checking which is capable of proving programs free of uninitialized variable errors even when these programs contain conditionally initialized variables where the initialization of a variable depends upon the equality of one or more ‘@tagn variables to a constant. The user need not predeclare the relationship between a conditionally initialized vari...
متن کاملGradual Typestate
Typestate reflects how the legal operations on imperative objects can change at runtime as their internal state changes. A typestate checker can statically ensure, for instance, that an object method is only called when the object is in a state for which the operation is welldefined. Prior work has shown how modular typestate checking can be achieved thanks to access permissions and state guara...
متن کاملExtending Typestate Analysis to Multiple Interacting Objects∗
This paper extends static typestate analysis to temporal specifications of groups of interacting objects, which are expressed using tracematches. Unlike typestate, a tracematch state may change due to operations on any of a set of objects bound by the tracematch. The paper proposes a lattice-based operational semantics equivalent to the original tracematch semantics but better suited to static ...
متن کاملSolving Bit-Vector Equations
This paper is concerned with solving equations on xed and non-xed size bit-vector terms. We deene an equational transformation system for solving equations on terms where all sizes of bit-vectors and extraction positions are known. This transformation system suggests a generalization for dealing with bit-vectors of unknown size and unknown extraction positions. Both solvers adhere to the princi...
متن کاملBit-Vector Optimization
A variety of applications of Satisfiability Modulo Theories (SMT) require finding a satisfying assignment which optimizes some user-given function. Optimization in the context of SMT is referred to as Optimization Modulo Theories (OMT). Current OMT research is mostly dedicated to optimization in arithmetic domains. This paper is about Optimization modulo Bit-Vectors (OBV). We introduce two OBV ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Formal Aspects of Computing
سال: 2023
ISSN: ['1433-299X', '0934-5043']
DOI: https://doi.org/10.1145/3595299