A unified approach of program verification

Dedicated to the memory of Antal Iványi

Open access

Abstract

The subject of this paper is a program verification method that takes into account abortion caused by partial functions in program statements. In particular, boolean expressions of various statements will be investigated that are not well-defined. For example, a loop aborts if its execution begins in a state for which the loop condition is undefined. This work considers the program constructs of nondeterministic sequential programs and also deals with the synchronization statement of parallel programs introduced by Owicki and Gries [7]. The syntax of program constructs will be reviewed and their semantics will be formally defined in such a way that they suit the relational model of programming developed at Eőtvős Loránd University [3, 4]. This relational model defines the program as a set of its possible executions and also provides definition for other important programming notions like problem and solution. The proof rules of total correctness [2, 5, 8, 9, 7] will be extended by treating abortion caused by partial functions. The use of these rules will be demonstrated by means of a verification case study.

[1] K. R. Apt, E.-R. Olderog, Verification of Sequential and Concurrent Program, Springer-Verlag, 1997. )67

[2] E. W. Dijkstra, A Discipline of Programming, Prentice-Hall, Englewood Clifis, New York, 1976. )65, 68, 73

[3] Á. Fóthi, Mathematical Approach to Programming, Ann. Univ. Sci. Budapest. Sect. Comput. 9 (1988) 105–114. )65, 68

[4] Á. Fóthi et al, Some concepts of a Relational Model of Programming, Proc. 4th Symposium on Programming Language and Software Tools, Visegrfiad, Hungary, June 8-14, 1995. (ed. Varga L.,) pp. 434–446, )65

[5] Á. Fóthi, Bevezetfies a programozfiashoz, ELTE Eőtvős Kiadó. 2005. (in Hungarian). )65, 68

[6] T. Gregorics, Concept of abstract program, Acta Universitatis Sapientiae, In- formatica, 4, 1 (2012) 7–16. )68, 69

[7] D. Gries, S. Owicki, An axiomatic proof technique for parallel programs, Acta Inf., 6, 4 (1976) 319–340. )65, 73

[8] D. Gries, The Science of Programming, Springer, Berlin, 1981. )65, 67, 73

[9] C. A. Hoare, An axiomatic basis for computer programming, Comm. of the ACM 12, 10 (1969) 576–580. )65, 67, 73

[10] Z. Manna, Mathematical theory of computation, McGraw Hill, 1974. )67

[11] W.-P. de Roever et al, Concurrency Verification, Cambridge University Press, 2001. )67

Acta Universitatis Sapientiae, Informatica

The Journal of "Sapientia" Hungarian University of Transylvania

Journal Information

Metrics

All Time Past Year Past 30 Days
Abstract Views 0 0 0
Full Text Views 159 159 27
PDF Downloads 28 28 3