Compact Difference Bound Matrices [chapter]

Aziem Chawdhary, Andy King
2017 Lecture Notes in Computer Science  
The Octagon domain, which tracks a restricted class of two variable inequality, is the abstract domain of choice for many applications because its domain operations are either quadratic or cubic in the number of program variables. Octagon constraints are classically represented using a Difference Bound Matrix (DBM), where the entries in the DBM store bounds c for inequalities of the form xi´xj ď c, xi'xj ď c or´xi´xj ď c. The size of such a DBM is quadratic in the number of variables, giving a
more » ... epresentation which can be excessively large for number systems such as rationals. This paper proposes a compact representation for DBMs, in which repeated numbers are factored out of the DBM. The paper explains how the entries of a DBM are distributed, and how this distribution can be exploited to save space and significantly speed-up long-running analyses. Moreover, unlike sparse representations, the domain operations retain their conceptually simplicity and ease of implementation whilst reducing memory usage.
doi:10.1007/978-3-319-71237-6_23 fatcat:xi3muphymzgotbby4bdhk5ye5u