Abstract
The C-light language is described, which is a representative subset of C. C-light permits deterministic expressions, limited use of switch and goto statements, and, instead of library functions for work with dynamic memory, includes C++ statements new and delete. A survey of structured operational semantics of the C-light language in Plotkin's style is given.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.REFERENCES
Kernighan, B.W. and Ritchie, D., The C Programming Language, Englewood Cliffs, New Jersey: Prentice-Hall, 1978. Translated under the title Yazyk programmirovaniya Ci, Moscow: Finansy i statistika, 1985.
ISO/IEC 9899:1999, Programming languages-C, 1999.
Nepomniaschy, V.A. and Ryakin, O.M., Prikladnye metody verifikatsii programm (Applied Methods of Program Verification), Moscow: Radio i Svyaz', 1988.
Apt, K.R. and Olderog, E.R., Verification of Sequential and Concurrent Programs, Springer, 1991.
Gurevich, Y. and Huggings, J.K., The Semantics of the C Programming Language, Proc. of the Int. Conf. on Comput. Sci. Logic; Lecture Notes Comput. Sci., 1993, vol. 702, pp. 274-309.
Huggins, J.K. and Shen, W., The Static and Dynamic Semantics of C (extended abstract), Local Proc. of Int. Workshop on Abstract State Machines, ETH TIK-Rep., 2000, no. 87, pp. 272-284.
Plotkin, G.D., A Structure Approach to Operational Semantics, Techn. Rep. FN-19, Aarhus Univ., DAIMI, 1981.
Norrish, M., Deterministic Expressions in C, Proc. of Europ. Symp. on Programming (ESOP99); Lecture Notes Comput. Sci., 1999, vol. 1576, pp. 147-161.
Norrish, M., C Formalized in HOL, PhD Dissertation, Computer Lab., Univ. of Cambridge, 1998.
Nepomniaschy, V.A., Anureev, I.S., Mikhailov, I.N., and Promskii, A.V., Toward Verification of C Programs. Part 1: C-light Language, Preprint of Inst. of Information Systems, Sib. Div., Russ. Acad. Sci., Novosibirsk, 2001, no. 84.
Nepomniaschy, V.A., Anureev, I.S., Mikhailov, I.N., and Promskii, A.V., Toward Verification of C Programs. Part 3: Translation from C-light to C-light-kernel and Its Formal Justification, Preprint of Inst. of Information Systems, Sib. Div., Russ. Acad. Sci., Novosibirsk, 2002, no. 97.
Nepomniaschy, V.A. and Sulimov, A.A., Problem-Oriented Knowledge Bases and Their Use in the Program Verification System SPEKTR, Izv. Ross. Akad. Nauk, Teor. Sist. Upr., 1997, no. 2, pp. 169-175.
Nepomniaschy, V.A., Anureev, I.S., Mikhailov, I.N., and Promskii, A.V., Toward Verification of C Programs: C-light Language, Konferentsiya, posvyashchennaya 90-letiyu so dnya rozhdeniya A.A. Lyapunova (Proc. of Conf. Devoted to the 90th Anniversary of the Birth of A.A. Lyapunov), Novosibirsk, 2001, pp. 423-432 (keynote paper).
Nepomniaschy, V.A., Anureev, I.S., Mikhailov, I.N., and Promskii, A.V., Toward Verification of C Programs. Part 2: C-light-kernel Language and Its Axiomatic Semantics, Preprint of Inst. of Information Systems, Sib. Div., Russ. Acad. Sci., Novosibirsk, 2001, no. 87.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Nepomniaschy, V.A., Anureev, I.S., Mikhailov, I.N. et al. Towards Verification of C Programs. C-Light Language and Its Formal Semantics. Programming and Computer Software 28, 314–323 (2002). https://doi.org/10.1023/A:1021045909505
Issue Date:
DOI: https://doi.org/10.1023/A:1021045909505