This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Predicate Logic for Software Engineering
September 1993 (vol. 19 no. 9)
pp. 856-862

The interpretations of logical expressions found in most introductory textbooks are not suitable for use in software engineering applications because they do not deal with partial functions. More advanced papers and texts deal with partial functions in a variety of complex ways. This paper proposes a very simple change to the classic interpretation of predicate expressions, one that defines their value for all values of all variables, yet is almost identical to the standard definitions. It then illustrates the application of this interpretation in software documentation.

[1] J. H. Cheng and C. B. Jones, "On the usability of logics which handle partial functions," inProc. Third Refinement Workshop, C. Morgan and J. Woodcock, Eds. Heidelberg Germany: Springer-Verlag, 1991.
[2] E. W. Dijkstra,A Discipline of Programming. Englewood Cliffs, NJ: Prentice-Hall, 1976.
[3] William F. Farmer, "A partial functions version of Church's simple theory of types,"J. Symbolic Logic, pp. 1269-1291, Sept. 1990.
[4] P. R. Halmos,Naive Set Theory. New York: Van Nostrand Rheinhold, 1960.
[5] E. Mendelson,Introduction to Mathematical Logic. Princeton, NJ: Van Nostrand, 1964.
[6] D. L. Parnas, "Tabular representation of relations," CRL Report 260, McMaster University, TRIO (Telecommunications Research Institute of Ontario), Oct. 1992.
[7] D. L. Parnas, G. J. K. Asmis, and J. Madey, "Assessment of safety-critical software in nuclear power plants,"Nuclear Safety, vol. 32, no. 2, pp. 189-198, Apr.-June 1991.
[8] D. L. Parnas and J. Madey, "Functional documentation for computer systems engineering (version 2)," CRL Report 237, McMaster University, Hamilton Canada, TRIO (Telecommunications Research Institute of Ontario), Sept. 1991.
[9] D. L. Parnas, J. Madey, and M. Iglewski, "Formal documentation of well-structured programs," CRL Report 259, McMaster University, TRIO (Telecommunications Research Institute of Ontario), Sept. 1992.

Index Terms:
software engineering; logical expressions; partial functions; predicate expressions; predicate logic; software documentation; tabular expressions; formal logic; software engineering
Citation:
D.L. Parnas, "Predicate Logic for Software Engineering," IEEE Transactions on Software Engineering, vol. 19, no. 9, pp. 856-862, Sept. 1993, doi:10.1109/32.241769
Usage of this product signifies your acceptance of the Terms of Use.