Abstract
An interesting area in static analysis is the study of numeric properties. Complex properties can be analyzed using abstract interpretation, provided that an adequate abstract domain is defined. Each domain can represent and manipulate a family of properties, providing a different trade-off between the precision and complexity of the analysis. The contribution of this paper is a new numeric abstract domain called octahedron that represents constraints of the form (± x j ± ... ± x k ≥ c), where x i are numerical variables such that x i ≥ 0. The implementation of octahedra is based on a new kind of decision diagrams called Octahedron Decision Diagrams (OhDD).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Alur, R., Dill, D.L.: A theory of timed automata. Theoretical Computer Science 126(2), 183–235 (1994)
Behrmann, G., Larsen, K.G., Pearson, J., Weise, C., Yi, W.: Efficient timed reachability analysis using clock difference diagrams. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 341–353. Springer, Heidelberg (1999)
Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers C-35(8), 677–691 (1986)
Clarisó, R., Cortadella, J.: Verification of timed circuits with symbolic delays. In: Proc. of Asia and South Pacific Design Automation Conference, pp. 628–633 (2004)
Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proc. of the ACM Symposium on Principles of Programming Languages, pp. 238–252. ACM Press, New York (1977)
Cousot, P., Halbwachs, N.: Automatic discovery of linear restraints among variables of a program. In: Proc. of the ACM Symposium on Principles of Programming Languages, pp. 84–97. ACM Press, New York (1978)
Dill, D.L.: Timing assumptions and verification of finite-state concurrent systems. In: Sifakis, J. (ed.) CAV 1989. LNCS, vol. 407, pp. 197–212. Springer, Heidelberg (1990)
Dor, N., Rodeh, M., Sagiv, M.: CSSV: towards a realistic tool for statically detecting all buffer overflows in C. In: Proceedings of the ACM SIGPLAN 2003 conference on Programming lan guage design and implementation, pp. 155–167. ACM Press, New York (2003)
Asarin, E., Bozga, M., Kerbrat, A., Maler, O., Pnueli, M., Rasse, A.: Data structures for the verification of timed automata. In: Maler, O. (ed.) HART 1997. LNCS, vol. 1201, pp. 346–360. Springer, Heidelberg (1997)
Fujita, M., McGeer, P.C., Yang, J.C.-Y.: Multi-terminal binary decision diagrams: An efficient data structure for matrix representation. Formal Methods in System Design 10(2/3), 149–169 (1997)
Halbwachs, N., Proy, Y.-E., Roumanoff, P.: Verification of real-time systems using linear relation analysis. Formal Methods in System Design 11(2), 157–185 (1997)
Henzinger, T.A.: The Temporal Specification and Verification of Real-Time Systems. PhD thesis, Stanford University (August 1991)
Mauras, C.: Symbolic simulation of interpreted automata. In: 3rd Workshop on Synchronous Programming (December 1996)
Minato, S.: Zero-supressed BDDs for set manipulation in combinatorial problems. In: Proc. ACM/IEEE Design Automation Conference, pp. 272–277 (1993)
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.: The octagon abstract domain. In: Analysis, Slicing and Tranformation (in Working Conference on Reverse Engineering), October 2001, pp. 310–319. IEEE CS Press, Los Alamitos (2001)
Møller, J., Lichtenberg, J., Andersen, H.R., Hulgaard, H.: Difference decision diagrams. In: Computer Science Logic, The IT University of Copenhagen, Denmark (1999)
Murata, T.: State equation, controllability and maximal matchings of Petri nets. IEEE Transactions on Automatic Control AC-22(3), 412–416 (1977)
New Polka: Convex Polyhedra Library, http://www.irisa.fr/prive/bjeannet/newpolka.html
Piguet, C., et al.: Memory element of the Master-Slave latch type, constructed by CMOS technology. US Patent 5,748,522 (1998)
Rudell, R.: Dynamic variable ordering for ordered binary decision diagrams. In: Proc. International Conf. Computer-Aided Design (ICCAD), pp. 42–47 (1993)
Simon, A., King, A., Howe, J.M.: Two Variables per Linear Inequality as an Abstract Domain. In: Leuschel, M. (ed.) LOPSTR 2002. LNCS, vol. 2664, pp. 71–89. Springer, Heidelberg (2003)
Somenzi, F.: CUDD: Colorado university decision diagram package, Available online at http://vlsi.colorado.edu/~fabio/CUDD
Wang, F.: Symbolic parametric safety analysis of linear hybrid systems with BDD-like datastructures. In: Alur, R., Peled, D.A. (eds.) CAV 2004. LNCS, vol. 3114, pp. 295–307. Springer, Heidelberg (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Clarisó, R., Cortadella, J. (2004). The Octahedron Abstract Domain. In: Giacobazzi, R. (eds) Static Analysis. SAS 2004. Lecture Notes in Computer Science, vol 3148. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27864-1_23
Download citation
DOI: https://doi.org/10.1007/978-3-540-27864-1_23
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-22791-5
Online ISBN: 978-3-540-27864-1
eBook Packages: Springer Book Archive