Abstract
We extend abstract interpretation for the purpose of verifying hybrid systems. Abstraction has been playing an important role in many verification methodologies for hybrid systems, but some special care is needed for abstraction of continuous dynamics defined by ODEs. We apply Cousot and Cousot’s framework of abstract interpretation to hybrid systems, almost as it is, by regarding continuous dynamics as an infinite iteration of infinitesimal discrete jumps. This extension follows the recent line of work by Suenaga, Hasuo and Sekine, where deductive verification is extended for hybrid systems by (1) introducing a constant \(\mathtt {dt}\) for an infinitesimal value; and (2) employing Robinson’s nonstandard analysis (NSA) to define mathematically rigorous semantics. Our theoretical results include soundness and termination via uniform widening operators; and our prototype implementation successfully verifies some benchmark examples.
We thank Kohei Suenaga and the anonymous referees for useful discussions and comments. This research was supported in part by Grants-in-Aid No. 24680001 & 15KT0012, JSPS; Grant-in-Aid for JSPS Fellows; NSF CAREER award #1156059; and NSF award #1162076.
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 subscriptionsNotes
- 1.
The prototype [29] is available at http://www-mmm.is.s.u-tokyo.ac.jp/~kkido/.
- 2.
There are also examples in which discretization even leads to unsound analysis results.
- 3.
The name “standard” is confusing with the distinction between standard and nonstandard entities in NSA. The use of “standard” in the former sense is scarce in this paper.
- 4.
If we interpret commands as functions \( {\mathcal P}(\mathbf {Var}\rightarrow {}^{*}{}{\mathbb {R}}) \rightarrow {\mathcal P}(\mathbf {Var}\rightarrow {}^{*}{}{\mathbb {R}})\), the interpretation \(\llbracket \mathtt {while}\; x<10 \;\mathtt {do}\; x:= x+\mathtt {dt} \rrbracket \{(x\mapsto 0)\}\) by a least fixed point will be \(\{x\mapsto r \mid \exists n \in \mathbb {N}.\; r = n*\mathtt {dt}\}\), not \(\{x\mapsto r \mid \exists n \in {}^{*}{}{\mathbb {N}}.\; r = n*\mathtt {dt}\wedge r\le 10\}\) as we expect. The problem is that internality—an “well-behavedness” notion in NSA—is not preserved in such a modeling.
- 5.
One can see that the ascending chain defined by \(X_n := \{k*\mathtt {dt}\mid 0\le k \le n\}\) does not have the supremum in \({}^{*}{}{{\mathcal P}}(\mathbb {R}^n)\) since \(\{k*\mathtt {dt}\mid k\in \mathbb {N}\}\) is not internal (see [28, Appendix A]).
- 6.
Recall that \(\textsc {While}^{\mathtt {dt}}\) is a modeling language and we do not execute them.
References
Alur, R., Courcoubetis, C., Henzinger, T.A., Ho, P.: Hybrid automata: an algorithmic approach to the specification and verification of hybrid systems. In: Grossman, R.L., Ravn, A.P., Rischel, H., Nerode, A. (eds.) HS 1991 and HS 1992. LNCS, vol. 736. Springer, Heidelberg (1993)
Bagnara, R., Hill, P.M., Zaffanella, E.: The parma polyhedra library: toward a complete set of numerical abstractions for the analysis and verification of hardware and software systems. Sci. Comput. Program. 72(1–2), 3–21 (2008)
Bagnara, R., Hill, P.M., Ricci, E., Zaffanella, E.: Precise widening operators for convex polyhedra. Sci. Comput. Program. 58(1–2), 28–56 (2005)
Beauxis, R., Mimram, S.: A non-standard semantics for Kahn networks in continuous time. In: CSL, pp. 35–50 (2011)
Chen, X., Ábrahám, E., Sankaranarayanan, S.: Flow*: an analyzer for non-linear hybrid systems. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 258–263. Springer, Heidelberg (2013)
Chernikova, N.: Algorithm for finding a general formula for the non-negative solutions of a system of linear equations. USSR Comput. Math. Math. Phys. 4(4), 151–158 (1964)
Chernikova, N.: Algorithm for finding a general formula for the non-negative solutions of a system of linear inequalities. USSR Comput. Math. Math. Phys. 5(2), 228–233 (1965)
Chernikova, N.: Algorithm for discovering the set of all the solutions of a linear programming problem. USSR Comput. Math. Math. Phys. 8(6), 282–293 (1968)
Cousot, P.: Semantic foundations of program analysis. In: Muchnick, S., Jones, N. (eds.) Program Flow Analysis: Theory and Applications, chap. 10, pp. 303–342. Prentice-Hall Inc, Englewood Cliffs, New Jersey (1981)
Cousot, P., Cousot, R.: Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Conference Record of the Fourth ACM Symposium on Principles of Programming Languages, Los Angeles, California, USA, January 1977. pp. 238–252 (1977)
Cousot, P., Cousot, R.: Abstract interpretation frameworks. J. Log. Comput. 2(4), 511–547 (1992)
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: Conference Record of the Fifth Annual ACM Symposium on Principles of Programming Languages, Tucson, Arizona, USA, January 1978, pp. 84–96 (1978)
Feret, J.: Static analysis of digital filters. In: Schmidt, D. (ed.) ESOP 2004. LNCS, vol. 2986, pp. 33–48. Springer, Heidelberg (2004)
Fränzle, M., Herde, C., Teige, T., Ratschan, S., Schubert, T.: Efficient solving of large non-linear arithmetic constraint systems with complex boolean structure. JSAT 1(3–4), 209–236 (2007)
Frehse, G.: PHAVer: algorithmic verification of hybrid systems past HyTech. In: Morari, M., Thiele, L. (eds.) HSCC 2005. LNCS, vol. 3414, pp. 258–273. Springer, Heidelberg (2005)
Frehse, G., Le Guernic, C., Donzé, A., Cotton, S., Ray, R., Lebeltel, O., Ripado, R., Girard, A., Dang, T., Maler, O.: SpaceEx: scalable verification of hybrid systems. In: Gopalakrishnan, G., Qadeer, S. (eds.) CAV 2011. LNCS, vol. 6806, pp. 379–395. Springer, Heidelberg (2011)
Goldblatt, R.: Lectures on the Hyperreals: An Introduction to Nonstandard Analysis. Graduate Texts in Mathematics. Springer, New York (1998)
Halbwachs, N.: Determination automatique de relations linaires vrifiespar les variables d’un programme. Thse de 3e cycle, Universit Scientifique et Mdicale de Grenoble (1979)
Halbwachs, N.: Delay analysis in synchronous programs. In: Proceedings of 5th International Conference on Computer Aided Verification, CAV 1993, Elounda, Greece, 28 June - 1 July 1993, pp. 333–346 (1993)
Halbwachs, N., Proy, Y., Roumanoff, P.: Verification of real-time systems using linear relation analysis. Formal Methods Syst. Des. 11(2), 157–185 (1997)
Hasuo, I., Suenaga, K.: Exercises in Nonstandard Static Analysis of hybrid systems. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 462–478. Springer, Heidelberg (2012)
Henriksen, K.S., Banda, G., Gallagher, J.P.: Experiments with a convex polyhedral analysis tool for logic programs. CoRR abs/0712.2737 (2007) http://arxiv.org/abs/0712.2737
Henzinger, T.A., Ho, P.: Algorithmic analysis of nonlinear hybrid systems. In: Proceedings of 7th International Conference Computer Aided Verification, Liège, Belgium, 3–5 July 1995, pp. 225–238 (1995)
Henzinger, T.A., Ho, P., Wong-Toi, H.: HYTECH: A model checker for hybrid systems. STTT 1(1–2), 110–122 (1997)
Hurd, A., Loeb, P.: An Introduction to Nonstandard Real Analysis. Pure and Applied Mathematics. Elsevier Science, New York (1985)
Kido, K.: An Alternative Denotational Semantics for an Imperative Language with Infinitesimals. Bachelor’s thesis, The University of Tokyo: Japan (2013)
Kido, K., Chaudhuri, S., Hasuo, I.: Abstract interpretation with infinitesimals–towards scalability in nonstandard static analysis (2015). extended version with appendices http://arxiv.org/
Kido, K., Chaudhuri, S., Hasuo, I.: Source code of the prototype nonstandard abstract interpreter (2015). http://www-mmm.is.s.u-tokyo.ac.jp/~kkido/
Le Verge, H.: A note on Chernikova’s Algorithm. Technical report 635, IRISA, Rennes, France, Febuary 1992
Mauborgne, L., Rival, X.: Trace partitioning in abstract interpretation based static analyzers. In: Sagiv, M. (ed.) ESOP 2005. LNCS, vol. 3444, pp. 5–20. Springer, Heidelberg (2005)
Platzer, A., Quesel, J.-D.: KeYmaera: a hybrid theorem prover for hybrid systems (system description). In: Armando, A., Baumgartner, P., Dowek, G. (eds.) IJCAR 2008. LNCS (LNAI), vol. 5195, pp. 171–178. Springer, Heidelberg (2008)
Robinson, A.: Non-standard Analysis. Studies in logic and the foundations of mathematics. North-Holland Pub. Co., Amsterdam (1966)
Suenaga, K., Hasuo, I.: Programming with Infinitesimals: A While-Language for Hybrid System Modeling. In: Aceto, L., Henzinger, M., Sgall, J. (eds.) ICALP 2011, Part II. LNCS, vol. 6756, pp. 392–403. Springer, Heidelberg (2011)
Suenaga, K., Sekine, H., Hasuo, I.: Hyperstream processing systems: nonstandard modeling of continuous-time signals. In: The 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2013, Rome, Italy, 23–25 January 2013, pp. 417–430 (2013)
Winskel, G.: The Formal Semantics of Programming Languages: An Introduction. MIT Press, Cambridge (1993)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kido, K., Chaudhuri, S., Hasuo, I. (2016). Abstract Interpretation with Infinitesimals. In: Jobstmann, B., Leino, K. (eds) Verification, Model Checking, and Abstract Interpretation. VMCAI 2016. Lecture Notes in Computer Science(), vol 9583. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-49122-5_11
Download citation
DOI: https://doi.org/10.1007/978-3-662-49122-5_11
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-49121-8
Online ISBN: 978-3-662-49122-5
eBook Packages: Computer ScienceComputer Science (R0)