Formalization of the Nominative Algorithmic Algebra in Mizar

  • Artur Korniłowicz
  • Andrii Kryvolap
  • Mykola Nikitchenko
  • Ievgen Ivanov
Conference paper
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 656)

Abstract

We describe a formalization of the nominative algorithmic algebra in the Mizar proof assistant. This algebra is a generalization of Glushkov algorithmic algebras which is well suited for representing semantics and specifying properties of programs on complex data structures which interact with external environment in convenient and unified way. We describe formal definitions and formally proven and checked statements about the carrier sets and operations (program compositions) of this algebra. The obtained results are useful for implementing methods of automated verification of software, for example, for the Internet of Things (IoT) and ensuring safety of IoT systems.

Keywords

Formal methods Proof assistant Semantics Algorithmic algebras Formal verification 

References

  1. 1.
    International Telecommunication Union: Overview of the Internet of Things. ITU-T Recommendation Y.4000/Y.2060, June 2012. http://handle.itu.int/11.1002/1000/11559
  2. 2.
    Wiedijk, F. (ed.): The Seventeen Provers of the World. Lecture Notes in Artificial Intelligence, vol. 3600. Springer, Heidelberg (2006)Google Scholar
  3. 3.
    The CompCert project. http://compcert.inria.fr
  4. 4.
    CakeML: A verified implementation of ML. https://cakeml.org
  5. 5.
    The seL4 Microkernel. https://sel4.systems
  6. 6.
    CertiKOS: an extensible architecture for building certified concurrent OS kernels. In: OSDI 2016 Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation, Savannah, GA, USA, 2–4 November 2016 (2016)Google Scholar
  7. 7.
    Nipkow, T., Wenzel, M., Paulson, L.C.: Isabelle/HOL: A Proof Assistant for Higher-Order Logic. Springer, Heidelberg (2002)CrossRefMATHGoogle Scholar
  8. 8.
    Kryvolap, A., Nikitchenko, M., Schreiner, W.: Extending Floyd-Hoare logic for partial pre- and postconditions. Communications in Computer and Information Science, vol. 412, pp. 355–378. Springer (2013). http://dx.doi.org/10.1007/978-3-319-03998-5_18
  9. 9.
    Korniłowicz, A., Kryvolap, A., Nikitchenko, M., Ivanov, I.: An approach to formalization of an extension of Floyd-Hoare logic. In: Proceedings of the 13th International Conference on ICT in Education, Research and Industrial Applications: Integration, Harmonization and Knowledge Transfer (ICTERI 2017), Kyiv, Ukraine, 15–18 May 2017. CEUR-WS.org (2017). http://ceur-ws.org/Vol-1844/10000504.pdf
  10. 10.
    Nikitchenko, N.S.: A composition nominative approach to program semantics, IT-TR 1998-020. Technical report, Technical University of Denmark (1998)Google Scholar
  11. 11.
    Glushkov, V.: Automata theory and formal transformations of microprograms. Cybernetics 5, 3–10 (1965). (in Russian)CrossRefGoogle Scholar
  12. 12.
    Floyd, R.: Assigning meanings to programs. In: Mathematical Aspects of Computer Science, vol. 19, pp. 19–32 (1967)Google Scholar
  13. 13.
    Hoare, C.: An axiomatic basis for computer programming. Commun. ACM 12(10), 576–580 (1969). doi: 10.1145/363235.363259 CrossRefMATHGoogle Scholar
  14. 14.
    Nikitchenko, M., Shkilniak, S.: Algebras and logics of partial quasiary predicates. Algebra Discret. Math. 23(2), 263–278 (2017)Google Scholar
  15. 15.
    Skobelev, V., Nikitchenko, M., Ivanov, I.: On algebraic properties of nominative data and functions. Commun. Comput. Inf. Sci. 469, 117–138 (2014). doi: 10.1007/978-3-319-13206-8_6 Google Scholar
  16. 16.
    Grabowski, A., Korniłowicz, A., Naumowicz, A.: Four decades of Mizar. J. Autom. Reason. 55(3), 191–198 (2015). doi: 10.1007/s10817-015-9345-1 MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Korniłowicz, A., Kryvolap, A., Nikitchenko, M., Ivanov, I.: Formalization of the algebra of nominative data in Mizar. In: 2017 Federated Conference on Computer Science and Information Systems (2017, accepted)Google Scholar
  18. 18.
    Bancerek, G., Byliński, C., Grabowski, A., Korniłowicz, A., Matuszewski, R., Naumowicz, A., Pąk, K., Urban, J.: Mizar: state-of-the-art and beyond. In: Intelligent Computer Mathematics – International Conference, CICM 2015, Proceedings, Washington, DC, USA, pp. 261–279 (2015). http://dx.doi.org/10.1007/978-3-319-20615-8_17
  19. 19.
    Grabowski, A., Korniłowicz, A., Schwarzweller, C.: Equality in computer proof assistants. In: Ganzha, M., Maciaszek, L.A., Paprzycki, M. (eds.) Proceedings of the 2015 Federated Conference on Computer Science and Information Systems. Annals of Computer Science and Information Systems, vol. 5, pp. 45–54. IEEE (2015). http://dx.doi.org/10.15439/2015F229
  20. 20.
    Byliński, C.: Partial functions. Formaliz. Math. 1(2), 357–367 (1990)Google Scholar
  21. 21.
    Byliński, C.: Some basic properties of sets. Formaliz. Math. 1(1), 47–53 (1990)Google Scholar
  22. 22.
    Bancerek, G., Trybulec, A.: Miscellaneous facts about functions. Formaliz. Math. 5(4), 485–492 (1996)Google Scholar

Copyright information

© Springer International Publishing AG 2018

Authors and Affiliations

  • Artur Korniłowicz
    • 1
  • Andrii Kryvolap
    • 2
  • Mykola Nikitchenko
    • 2
  • Ievgen Ivanov
    • 2
  1. 1.Institute of InformaticsUniversity of BiałystokBiałystokPoland
  2. 2.Taras Shevchenko National University of KyivKievUkraine

Personalised recommendations