Simple and Efficient Algorithms for Octagons
The numerical domain of Octagons can be viewed as an exercise in simplicity: it trades expressiveness for efficiency and ease of implementation. The domain can represent unary and binary constraints where the coefficients are + 1 or − 1, so called octagonal constraints, and comes with operations that have cubic complexity. The central operation is closure which computes a canonical form by deriving all implied octagonal constraints from a given octagonal system. This paper investigates the role of incrementality, namely closing a system where only one constraint has been changed, which is a dominating use-case. We present two new incremental algorithms for closure both of which are conceptually simple and computationally efficient, and argue their correctness.
KeywordsModel Check Unary Constraint Canonical Representation Short Path Algorithm Incremental Algorithm
Unable to display preview. Download preview PDF.
- 4.Berdine, J., Chawdhary, A., Cook, B., Distefano, D., O’Hearn, P.: Variance Analyses from Invariance Analyses. In: POPL, pp. 211–224. ACM (2007)Google Scholar
- 6.Cousot, P., Halbwachs, N.: Automatic Discovery of Linear Restraints among Variables of a Program. In: POPL, pp. 84–97. ACM Press (1978)Google Scholar
- 9.Harrison, W.H.: Compiler Analysis for the Value Ranges of Variables. IEEE Transactions on Software Engineering SE-3(3), 243–250 (1977)Google Scholar
- 10.Harvey, W., Stuckey, P.J.: A Unit Two Variable Per Inequality Integer Constraint Solver for Constraint Logic Programming. In: Patel, M., Kotagiri, R. (eds.) Twentieth Australasian Computer Science Conference, pp. 102–111. Macquarie University (1997), Also available as TR 95/30 from University of MelbourneGoogle Scholar
- 12.Jhala, R., Majumdar, R.: Software Model Checking. ACM Computing Surveys 41(4), 21:1–21:54 (2009)Google Scholar
- 15.Miné, A.: Weakly Relational Numerical Abstract Domains. PhD thesis, École Polytechnique (2004), http://www.di.ens.fr/~mine/these/these-color.pdf
- 17.Robbins, E., Howe, J.M., King, A.: Theory Propagation and Reification. Science of Computer Programming (to appear), http://kar.kent.ac.uk/37600