Abstract
In this paper, a new kind of annotations called attribute annotations and the methodology for their application in deductive program verification are proposed. A collection of annotating attributes for the C-kernel subset of the C language is described, and, on their basis, two versions of axiomatic semantics of C-kernel—forward semantics and mixed forward semantics—are presented.
Similar content being viewed by others
References
Leroy, X., Formal Verification of a Realistic Complier, Commun. ACM, 2009, no. 7, pp. 107–115.
Filliatre, J.C. and Marché, C., Multi-Prover Verification of C Programs, Proc. 6th Int. Conf. on Formal Engineering Methods (ICFEM-04), 2004; Lect. Notes Comput. Sci., 2004, vol. 3308, pp. 15–29.
Leino, K.R.M. and Rümmer, P., A Polymorphic Intermediate Verification Language: Design and Logical Encoding, Proc. 16th Int. Conf. on Tools and Algorithms for the Construction and Analysis of Systems (TACAS-2010); Lect. Notes Comput. Sci., 2010, vol. 6015, pp. 312–327.
Leino, K.R.M., Dafny: An Automatic Program Verifier for Functional Correctness, Proc. 16th Int. Conf. on Logical Partition (LPAR-16); Lect. Notes Comput. Sci., 2010, vol. 6355, pp. 348–370.
Cohen, E., Dahlweid, M., Hillebrand, M., et al., VCC: A Practical System for Verifying Concurrent C, Proc. 22nd Int. Conf. on Theorem Proving in Higher-Order Logics (TPHOLs 2009), Munich, 2009; Lect. Notes Comput. Sci., 2009, vol. 5674, pp. 23–42.
Alkassar, E., Hillebrand, M.A., Leinenbach, D., Schirmer, N.W., and Starostin, A., The Verisoft Approach to Systems Verification, Proc. 2nd IFIP Working Conf. on Verified Software: Theories, Tools, and Experiments (VSTTE-08); Lect. Notes Comput. Sci., 2008, vol. 5295, pp. 209–224.
Nepomnyashchy, V.A., Anureev, I.S., and Promskii, A.V., Towards Verification of C Programs: Axiomatic Semantics of the C-Kernel Language, Program. Comput. Software, 2003, vol. 29, no. 6, pp. 338–350.
Nepomniaschy, V.A., Anureev, I.S., and Promsky, A.V., Verification-Oriented Language C-Light and Its Structural Operational Semantics, Proc. of Conf. on Perspectives of System Informatics (PSI-03); Lect. Notes Comput. Sci., 2003, vol. 2890, pp. 1–5.
Nepomniaschy, V.A., Anureev, I.S., Mikhailov, I.N., and Promsky, A.V., Towards Verification of C Programs. C-Light Language and Its Formal Semantics, Program. Comput. Software, 2002, vol. 28, no. 6, pp. 314–323.
Nepomnyashchy, V., Anureev, I.S., and Promskii, A.V., On the Way to Verification of C Programs. C-Light Language and Its Transformational Semantics, Probl. Programmir., 2006, nos. 2–3, pp. 359–368.
Nepomnyashchy, V.A., Anureev, I.S., Mikhailov, I.N., and Promskii, A.V., C-Light Language Oriented on Verification, in Formal’nye metody i modeli informatiki: Sbornik nauchnykh trudov. Seriya “Sistemnaya informatika” (Formal Methods and Models of Informatics. Collection Sci. Papers. Ser. System Informatics), Novosibirsk: Siber. Otd. Ross. Akad. Nauk RAN, 2004, no. 9, pp. 51–134.
Anureev I.S., Maryasov I.V., Nepomnyashchii V.A. C-Programs Verification Based on Mixed Axiomatic Semantics, Autom. Control Comput. Sci., 2011, vol. 45, no. 7, pp. 485–500.
ISO/IEC 9899: Programming Languages-C, 1999.
Nepomniaschy, V.A. and Sulimov, A.A., Problem-Oriented Means of Program Specification and Verification in Project SPECTRUM, Proc. Int. Symp. on Design and Implementation of Symbolic Computation Systems, (DISCO-93), Gmunden, 1993, Lect. Notes Comput. Sci., 1993, vol. 722, pp. 374–378.
Nepomniaschy, V.A. and Sulimov, F.F., Problem-Oriented Verification System and Its Application to Linear Programs, Theor. Comput. Sci., 1993, vol. 119, pp. 173–185.
Nepomnyashchy, V.A., Anureev, I.S., Promsky, A.V., and Dubranovsky, I.V., Towards Verification of C# Programs: A Three-Level Approach, Program. Comput. Software, 2006, vol. 32, no. 4, pp. 190–203.
Anureev, I.S., Introduction to the Atoment Language, Joint Bull. Novosibirsk Comp. Center. and Inst. Inform. Syst. Ser.: Comput. Sci., 2010, vol. 30, no. 4, pp. 1–16.
Nepomniaschy, V.A., Anureev, I.S., Atuchin, M.M., Mar’yasov, I.V., Petrov, A.A., and Promsky, A.V., C Program Verification in SPECTRUM Multilanguage System, Autom. Control Comput. Sci., 2011, vol. 45, no. 7, pp. 413–420.
Author information
Authors and Affiliations
Corresponding author
Additional information
Original Russian Text © M.M. Atuchin, I.S. Anureev, 2011, published in Modelirovanie i Analiz Informatsionnykh Sistem, 2011, No. 4, pp. 21–33.
About this article
Cite this article
Atuchin, M.M., Anureev, I.S. Attribute annotations and their use in C program deductive verification. Aut. Control Comp. Sci. 46, 308–316 (2012). https://doi.org/10.3103/S0146411612070036
Received:
Published:
Issue Date:
DOI: https://doi.org/10.3103/S0146411612070036