Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Predicative methodology
Hehner E., Gupta L., Malton A. Acta Informatica23 (5):487-505,1986.Type:Article
Date Reviewed: Aug 1 1987

Once we have accepted that the significant effort in programming is not coding but problem solving, we naturally recognize the necessity of formalizing the entire activity of program derivation. First, we need a formal specification language, and there are obvious advantages in having uniformity of language for expressing both specifications and programs. There are many proposals that meet this requirement. In fact, it is carried to an extreme in Prolog, where specifications are even executable.

In this paper, which may be seen as an extension of [1], the authors choose Predicate Logic as the uniformizing language. They then show how the usual high-level program notations can be viewed as abbreviations for predicates that are particular, in that they are proved satisfiable by implementation. This allows them to identify program derivation with the construction, step by step, via the rules of Predicate Calculus, of the formal proof that the specification is implementable. But the enormous amount of detail is often a serious obstacle and causes many to reject formality.

“Mathematicians do not always prove a theorem from axioms;” a large stock of definitions, theorems, and proof techniques, which are the result of a long series of preceding experiences, helps them. Analogously, programmers should be able to formalize their “know-how” or “program paradigms” that allow them to avoid always starting from scratch.

The paper reviewed moves in this direction. A number of useful theorems are reported that serve for deriving example programs. I hope many others will follow this path, not necessarily with the same formalism but with the same aim.

The paper is clearly written and well organized. Everyone who thinks that a correct program activity is not too far from (constructive) mathematics should find it interesting and stimulating.

Reviewer:  A. Bossi Review #: CR111363
1) Hehner, E. C. R.Predicative programming, Parts I and II, Commun. ACM 27 (1984), 134–151. See <CR> Rev. 8410-0846.
Bookmark and Share
 
Miscellaneous (D.1.m )
 
 
Computational Logic (F.4.1 ... )
 
 
Specification Techniques (F.3.1 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Miscellaneous": Date
Integrating APL with symbol manipulation, numerical software and graphics
Apiola H., Peltola P. ACM SIGAPL APL Quote Quad 20(4): 10-17, 1990. Type: Article
Aug 1 1992
An improved parallel thinning algorithm
Holt C., Stewart A., Clint M., Perrott R. Communications of the ACM 30(2): 156-160, 1987. Type: Article
Aug 1 1987
On the complexity of recursion in problem-solving
Er M. International Journal of Man-Machine Studies 20(6): 537-544, 1984. Type: Article
May 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy