Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
An observationally complete program logic for imperative higher-order functions
Honda K., Yoshida N., Berger M. Theoretical Computer Science517 75-101,2014.Type:Article
Date Reviewed: Apr 13 2015

In some programming languages, variables may refer to procedures; these references may be read to call the procedures and updated to refer to new procedures. If the procedures are recursive, it has been unknown whether there exists any “observationally complete” logic that can always prove if two programs have different behaviors.

The authors answer this question positively for programs in an imperative extension of call-by-value PCF (a typed, higher-order functional language). For this purpose, they extend a classical logic language by “evaluation formulas” that are able to specify the pre-/post-state relationships of programs. This is, in general, tricky because of the circularity of a recursive procedure P stored in a program variable x that may call the procedure stored in x under the assumption that x holds P itself. After presenting a sound proof calculus for their logic, the authors show that it is observationally complete by reducing every PCF program into a finite canonical form (FCF) from which a characteristic formula can be derived that captures the whole behavior of the FCF.

Apart from the formal details that represent the core of the paper, the authors give ample space to the general motivation of their work and provide various examples that make the material accessible. They also discuss in depth how their work is embedded in the existing corpus on complete logic for imperative languages with higher-order procedures. In particular, an early impossibility result implies that even under finite models (where first-order logic is decidable), their logic is undecidable.

Reviewer:  Wolfgang Schreiner Review #: CR143337 (1507-0604)
Bookmark and Share
  Featured Reviewer  
 
Computational Logic (F.4.1 ... )
 
 
Semantics Of Programming Languages (F.3.2 )
 
Would you recommend this review?
yes
no
Other reviews under "Computational Logic": Date
Extended Horn sets in propositional logic
Chandru V., Hooker J. Journal of the ACM 38(1): 205-221, 1991. Type: Article
Nov 1 1991
Preservation of expressive completeness in temporal models
Amir A., Gabbay D. (ed)   (,1991. Type: Proceedings
Oct 1 1987
Monotone versus positive
Ajtai M., Gurevich Y. (ed) Journal of the ACM 34(4): 1004-1015, 1987. Type: Article
Jul 1 1988
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