Operational and axiomatic semantics of PCF

  • Authors:
  • Brian T. Howard;John C. Mitchell

  • Affiliations:
  • Department of Computer Science, Stanford University;Department of Computer Science, Stanford University

  • Venue:
  • LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
  • Year:
  • 1990

Quantified Score

Hi-index 0.00

Visualization

Abstract

PCF, as considered in this paper, is a lazy typed lambda calculus with functions, pairing, fixed-point operators and arbitrary algebraic data types. The natural equational axioms for PCF include &eegr;-equivalence and the so-called “surjective pairing” axiom for pairs. However, the reduction system pcf&eegr;,sp defined by directing each equational axiom is not confluent, for virtually any choice of algebraic data types. Moreover, neither &eegr;-reduction nor surjective pairing seems to have a counterpart in ordinary execution. Therefore, we consider a smaller reduction system pcf without &eegr;-reduction or surjective pairing. The system pcf is confluent when combined with any linear, confluent algebraic rewrite rules. The system is also computationally adequate, in the sense that whenever a closed term of “observable” type has a pcf&eegr;,sp normal form, this is also the unique pcf normal form. Moreover, the equational axioms for PCF, including (&eegr;) and surjective pairing, are sound for pcf observational equivalence. These results suggest that if we take the equational axioms as defining the language, the smaller reduction system gives an appropriate operational semantics.