Skip to main content

A Proof System for MSVL Programs in Coq

  • Conference paper
  • First Online:
Structured Object-Oriented Formal Language and Method (SOFL+MSVL 2016)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10189))

  • 497 Accesses

Abstract

In this paper, we propose a semi-automatic proof approach for programs written in Modeling, Simulation and Verification Language (MSVL) based on the interactive theorem prover Coq. To this end, first, the syntax and semantics of MSVL are briefly introduced, and the specification and proof tactics of Coq are described. Further, an axiomatic system of MSVL programs is specified in Coq. Based on these, MSVL programs and related properties can be recognized in Coq so that theorems to be proved can be formalised and the verification can be conducted when proof tactics are provided in the Coq prover. Finally, an example is given to illustrate how our proposed approach works.

The research is supported by the National Natural Science Foundation of China under Grant Nos. 61133001, 61572386, 61420106004 and 91418201.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Bledsoe, W., Loveland, D.: Interactive Theorem Proving and Program Development. Contemporary Mathematics Series, vol. 29. American Mathematical Society, Providence (1984)

    Google Scholar 

  2. Clarke, E.M., Grumberg, O., Peled, D.: Model Checking, pp. 54–56. MIT Press, Cambridge (2000)

    Google Scholar 

  3. Duan, Z., Tian, C.: A unified model checking approach with projection temporal logic. In: Liu, S., Maibaum, T., Araki, K. (eds.) ICFEM 2008. LNCS, vol. 5256, pp. 167–186. Springer, Heidelberg (2008). doi:10.1007/978-3-540-88194-0_12

    Chapter  Google Scholar 

  4. Comert, F., Ovatman, T.: Attacking state space explosion problem in model checking embedded TV software. IEEE Trans. Consum. Electron. 61(4), 572–579 (2015)

    Article  Google Scholar 

  5. Duan, Z., Yang, X., Koutny, M.: Frammed temporal logic programming. Sci. Comput. Program. 70(1), 31–61 (2008)

    Article  MATH  Google Scholar 

  6. Barras, B., Boutin, S., Cornes, C., et al.: The Coq proof assistant: reference manual. Rapport technique - INRIA (2000), https://coq.inria.fr

  7. Wang, X., Duan, Z., Zhao, L.: Formalizing and implementing types in MSVL. In: Liu, S., Duan, Z. (eds.) SOFL+MSVL 2013. LNCS, vol. 8332, pp. 62–75. Springer, Cham (2014). doi:10.1007/978-3-319-04915-1_5

    Chapter  Google Scholar 

  8. Duan, Z.: An Extended Interval Temporal Logic and A Framing Technique for Temporal Logic Programming. Ph.D Thesis (Technical Report No. 556). University of Newcastle upon Tyne (1996)

    Google Scholar 

  9. Owre, S., Rushby, J.M., Shankar, N.: PVS: a prototype verification system. In: Kapur, D. (ed.) CADE 1992. LNCS, vol. 607, pp. 748–752. Springer, Heidelberg (1992). doi:10.1007/3-540-55602-8_217

    Google Scholar 

  10. Brock, B., Kaufmann, M., Moore, J.S.: ACL2 theorems about commercial microprocessors. In: Srivas, M., Camilleri, A. (eds.) FMCAD 1996. LNCS, vol. 1166, pp. 275–293. Springer, Heidelberg (1996). doi:10.1007/BFb0031816

    Chapter  Google Scholar 

  11. Gordon, M., Melham, T.: Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, Cambridge (1993)

    MATH  Google Scholar 

  12. Kalvala, S.: Using isabelle to prove simple theorems. In: Joyce, J.J., Seger, C.-J.H. (eds.) HUG 1993. LNCS, vol. 780, pp. 514–517. Springer, Heidelberg (1994). doi:10.1007/3-540-57826-9_160

    Chapter  Google Scholar 

  13. Howe, D.J.: Importing mathematics from HOL into Nuprl. In: Goos, G., Hartmanis, J., Leeuwen, J., Wright, J., Grundy, J., Harrison, J. (eds.) TPHOLs 1996. LNCS, vol. 1125, pp. 267–281. Springer, Heidelberg (1996). doi:10.1007/BFb0105410

    Chapter  Google Scholar 

  14. Ma, Q., Duan, Z., Zhang, N., Wang, X.: Verification of distributed systems with the axiomatic system of MSVL. Formal Aspects Comput. 27(1), 103–131 (2015)

    Article  MathSciNet  MATH  Google Scholar 

  15. Appel, A.W., Blazy, S.: Separation logic for small-step cminor. In: Schneider, K., Brandt, J. (eds.) TPHOLs 2007. LNCS, vol. 4732, pp. 5–21. Springer, Heidelberg (2007). doi:10.1007/978-3-540-74591-4_3

    Chapter  Google Scholar 

  16. Chlipala, A.: Mostly-automated verification of low-level programs in computational separation logic. In: Proceedings of the ACM SIGPLAN 2011 Conference on Programming Language Design and Implementation, vol. 47(6), pp. 234–245 (2011)

    Google Scholar 

  17. Yang, X., Duan, Z., Ma, Q.: Axiomatic semantics of projection temporal logic programs. Math. Struct. Comput. Sci. 20(5), 865–914 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  18. Valmari, A.: A stubborn attack on state explosion. In: Clarke, E.M., Kurshan, R.P. (eds.) CAV 1990. LNCS, vol. 531, pp. 156–165. Springer, Heidelberg (1991). doi:10.1007/BFb0023729

    Chapter  Google Scholar 

  19. Godefroid, P., Wolper, P.: A partial approach to model checking. Inf. Comput. 110(2), 305–326 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  20. Zhang, N., Duan, Z., Tian, C.: An axiomatization for cylinder computation model. In: Cai, Z., Zelikovsky, A., Bourgeois, A. (eds.) COCOON 2014. LNCS, vol. 8591, pp. 71–83. Springer, Cham (2014). doi:10.1007/978-3-319-08783-2_7

    Google Scholar 

  21. Zhang, N., Duan, Z.: A semantic model for many-core parallel computing. In: Wang, W., Zhu, X., Du, D.-Z. (eds.) COCOA 2011. LNCS, vol. 6831, pp. 464–479. Springer, Heidelberg (2011). doi:10.1007/978-3-642-22616-8_36

    Chapter  Google Scholar 

  22. Esparza, J.: Model checking using net unfoldings. Sci. Comput. Program. 23, 151–195 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  23. Ma, Y., Duan, Z., Wang, X.: An interpreter for framed tempura and its application. In: Proceedings of First Joint IEEE/IFIP Symposium on Theoretical Aspects of Software Engineering, pp. 251–260. IEEE Press (2007)

    Google Scholar 

  24. Borgstrom, J., Gordon, A., Pucella, R.: Roles, stacks, histories: a triple for hoare. In: Reflections on the Work of C.A.R. Hoare, pp. 71–99 (2010)

    Google Scholar 

  25. Duan, Z., Zhang, N., Koutny, M.: A complete proof system for propositional projection temporal logic. Theoret. Comput. Sci. 497(5), 84–107 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  26. Tian, C., Duan, Z., Zhang, L.: A decision procedure for propositional projection temporal logic with infinite models. Acta Informatica 45, 43–78 (2008)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zhenhua Duan .

Editor information

Editors and Affiliations

Appendices

A Appendix: State Axioms and inference rules

Axioms

figure x

Inference Rules

figure y

B Appendix: Axioms and inference rules Over Intervals

Axioms

figure z

Inference Rules

figure aa

C Appendix: Deducting Frog Routing Problem in Coq

figure ab

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Qian, L., Duan, Z., Zhang, N., Tian, C. (2017). A Proof System for MSVL Programs in Coq. In: Liu, S., Duan, Z., Tian, C., Nagoya, F. (eds) Structured Object-Oriented Formal Language and Method. SOFL+MSVL 2016. Lecture Notes in Computer Science(), vol 10189. Springer, Cham. https://doi.org/10.1007/978-3-319-57708-1_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-57708-1_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-57707-4

  • Online ISBN: 978-3-319-57708-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics