Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Bagnara, R., Hill, P.M., Zaffanella, E.: Weakly-relational Shapes for Numeric Abstractions: Improved Algorithms and Proofs of Correctness. Formal Methods in System Design 35(3), 279–323 (2009)
Baykan, C.A., Fox, M.S.: Spatial Synthesis by Disjunctive Constraint Satisfaction. Artificial Intelligence for Engineering, Design, Analysis and Manufacturing 11(4), 245–262 (1997)
Bellman, R.: On a Routing Problem. Quarterly of Applied Mathematics 16, 87–90 (1958)
Berdine, J., Chawdhary, A., Cook, B., Distefano, D., O’Hearn, P.: Variance Analyses from Invariance Analyses. In: POPL, pp. 211–224. ACM (2007)
Cousot, P., Cousot, R., Feret, J., Mauborgne, L., Miné, A., Monniaux, D., Rival, X.: The ASTREÉ Analyzer. In: Sagiv, M. (ed.) ESOP 2005. LNCS, vol. 3444, pp. 21–30. Springer, Heidelberg (2005)
Cousot, P., Halbwachs, N.: Automatic Discovery of Linear Restraints among Variables of a Program. In: POPL, pp. 84–97. ACM Press (1978)
Floyd, R.W.: Algorithm 97: Shortest Path. CACM 5(6), 345 (1962)
Gulavani, B.S., Chakraborty, S., Nori, A.V., Rajamani, S.K.: Automatically Refining Abstract Interpretations. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 443–458. Springer, Heidelberg (2008)
Harrison, W.H.: Compiler Analysis for the Value Ranges of Variables. IEEE Transactions on Software Engineering SE-3(3), 243–250 (1977)
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 Melbourne
Jeannet, B., Miné, A.: Apron: A Library of Numerical Abstract Domains for Static Analysis. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 661–667. Springer, Heidelberg (2009)
Jhala, R., Majumdar, R.: Software Model Checking. ACM Computing Surveys 41(4), 21:1–21:54 (2009)
Magill, S., Berdine, J., Clarke, E., Cook, B.: Arithmetic Strengthening for Shape Analysis. In: Riis Nielson, H., Filé, G. (eds.) SAS 2007. LNCS, vol. 4634, pp. 419–436. Springer, Heidelberg (2007)
Miné, A.: A New Numerical Abstract Domain Based on Difference-Bound Matrices. In: Danvy, O., Filinski, A. (eds.) PADO 2001. LNCS, vol. 2053, pp. 155–172. Springer, Heidelberg (2001)
Miné, A.: Weakly Relational Numerical Abstract Domains. PhD thesis, École Polytechnique (2004), http://www.di.ens.fr/~mine/these/these-color.pdf
Miné, A.: The Octagon Abstract Domain. HOSC 19(1), 31–100 (2006)
Robbins, E., Howe, J.M., King, A.: Theory Propagation and Reification. Science of Computer Programming (to appear), http://kar.kent.ac.uk/37600
Simon, A., King, A.: Taming the Wrapping of Integer Arithmetic. In: Riis Nielson, H., Filé, G. (eds.) SAS 2007. LNCS, vol. 4634, pp. 121–136. Springer, Heidelberg (2007)
Simon, A., King, A., Howe, J.M.: The Two Variable Per Inequality Abstract Domain. HOSC 31(1), 182–196 (2010), http://kar.kent.ac.uk/30678
Warshall, S.: A Theorem on Boolean Matrices. JACM 9(1), 11–12 (1962)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Chawdhary, A., Robbins, E., King, A. (2014). Simple and Efficient Algorithms for Octagons. In: Garrigue, J. (eds) Programming Languages and Systems. APLAS 2014. Lecture Notes in Computer Science, vol 8858. Springer, Cham. https://doi.org/10.1007/978-3-319-12736-1_16
Download citation
DOI: https://doi.org/10.1007/978-3-319-12736-1_16
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-12735-4
Online ISBN: 978-3-319-12736-1
eBook Packages: Computer ScienceComputer Science (R0)