Abstract
Modeling and analysis techniques are presented for real-time, safety-critical software. Software analysis is the task of verifying whether the computer code will execute safely, free of run-time errors. The critical properties that prove safe execution include bounded-ness of variables and termination of the program in finite time. In this paper, dynamical system representations of computer programs along with specific models that are pertinent to analysis via an optimization-based search for system invariants are developed. It is shown that the automatic search for system invariants that establish the desired properties of computer code, can be formulated as a convex optimization problem, such as linear programming, semidefinite programming, and/or sum of squares programming.
This work was supported by the National Science Foundation under Grant CNS-0451865 and by the Boeing Co. under Grant MIT-BA-GTA-1.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Boyd, S., Ghaoui, L.E., Feron, E., Balakrishnan, V.: Linear Matrix Inequalities in Systems and Control Theory. Society for Industrial and Applied Mathematics (1994)
Bemporad, A., Mignone, D., Morari, M.: Moving horizon estimation for hybrid systems and fault detection. In: Proc. American Control Conference, June 1999, pp. 2471–2475 (1999)
Bertsimas, D., Tsitsikilis, J.: Introduction to Linear Optimization. Athena Scientific (1997)
Branicky, M.S., Borkar, V.S., Mitter, S.K.: A unified framework for hybrid control: model and optimal control theory. IEEE Transactions on Automatic Control 43(1), 31–45 (1998)
Colon, M.A., Sankaranarayanan, S., Sipma, H.B.: Linear invariant generation using non-linear constraint solving. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 420–433. Springer, Heidelberg (2003)
Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proc. 4th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 1977, pp. 238–252 (1977)
Cousot, P., Cousot, R.: Systematic design of program analysis frameworks. In: Conference Record of the Sixth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Antonio, Texas, pp. 269–282. ACM Press, New York (1979)
Cousot, P.: Semantic foundations of program analysis. In: Muchnick, S., Jones, N. (eds.) Program Flow Analysis: Theory and Applications, ch. 10, pp. 303–342. Prentice-Hall, Englewood Cliffs (1981)
Dams, D.: Abstract interpretation and partition refinement for Model Checking. Ph.D. Thesis, Eindhoven University of Technology (1996)
Heck, B.S., Wills, L.M., Vachtsevanos, G.J.: Software technology for implementing reusable, distributed control systems. IEEE Control Systems Magazine 23(1), 21–35 (2003)
Prajna, S., Jadbabaie, A.: Safety verification of hybrid systems using barrier certificates. In: Alur, R., Pappas, G.J. (eds.) HSCC 2004. LNCS, vol. 2993, pp. 477–492. Springer, Heidelberg (2004)
Johansson, M., Rantzer, A.: On the computation of piecewise quadratic Lyapunov functions. In: Proc. 36th IEEE Conference on Decision and Control, San Diego, California (December 1997)
Johansson, M., Rantzer, A.: Computation of piecewise quadratic Lyapunov functions for hybrid systems. IEEE Transactions on Automatic Control 43(4), 555–559 (1998)
Harper, J., Megretski, A.: Personal communication (2000)
Hedlund, S., Rantzer, A.: Optimal control of hybrid systems. In: Proc. 38th IEEE Conference on Decision and Control, Phoenix, Arizona (December 1999)
Alur, R., Pappas, G.J. (eds.): HSCC 2004. LNCS, vol. 2993. Springer, Heidelberg (2004)
Lafferriere, G., Pappas, G.J., Sastry, S.: Hybrid systems with finite bisimulations. In: Antsaklis, P.J., Kohn, W., Lemmon, M.D., Nerode, A., Sastry, S.S. (eds.) HS 1997. LNCS, vol. 1567. Springer, Heidelberg (1999)
Lafferriere, G., Pappas, G.J., Sastry, S.: Reachability analysis of hybrid systems using bisimulations. In: Proc. of the 37th IEEE Conference on Decision and Control, Tampa, pp. 1623–1628 (1998)
Laurent, M.: Tighter linear and semidefinite relaxations for max-cut based on the Lovász–Schrijver Lift-and-Project procedure. SIAM Journal on Optimization 12(2), 345–375
Lygeros, J., Tomlin, C., Sastry, S.: Controllers for reachability specifications for hybrid systems. Automatica 35(3), 349–370 (1999)
Monniaux, D.: Abstract interpretation of programs as Markov decision processes. In: Cousot, R. (ed.) SAS 2003. LNCS, vol. 2694, pp. 237–254. Springer, Heidelberg (2003)
Parrilo, P.A.: Minimizing Polynomial Functions. In: Algorithmic and Quantitative Real Algebraic Geometry. DIMACS Series in Discrete Mathematics and Theoretical Computer Science, vol. 60, pp. 83–99. AMS
Gatermann, K., Parrilo, P.A.: Symmetry groups, semidefinite programs, and sums of squares. Journal of Pure and Appl. Algebra 192(1-3), 95–128 (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Roozbehani, M., Feron, E., Megrestki, A. (2005). Modeling, Optimization and Computation for Software Verification. In: Morari, M., Thiele, L. (eds) Hybrid Systems: Computation and Control. HSCC 2005. Lecture Notes in Computer Science, vol 3414. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31954-2_39
Download citation
DOI: https://doi.org/10.1007/978-3-540-31954-2_39
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25108-8
Online ISBN: 978-3-540-31954-2
eBook Packages: Computer ScienceComputer Science (R0)