In computer science, Programming Computable Functions (PCF) is a typed functional language introduced by Gordon Plotkin in 1977,[1] based on previous unpublished material by Dana Scott.[note 1] It can be considered to be an extended version of the typed lambda calculus or a simplified version of modern typed functional languages such as ML or Haskell.
A fully abstract model for PCF was first given by Robin Milner.[2] However, since Milner's model was essentially based on the syntax of PCF it was considered less than satisfactory.[3] The first two fully abstract models not employing syntax were formulated during the 1990s. These models are based on game semantics[4][5] and Kripke logical relations.[6] For a time it was felt that neither of these models was completely satisfactory, since they were not effectively presentable. However, Ralph Loader demonstrated that no effectively presentable fully abstract model could exist, since the question of program equivalence in the finitary fragment of PCF is not decidable.[7]
Plotkin 1977
was invoked but never defined (see the help page).Milner 1977
was invoked but never defined (see the help page).Ong 1995
was invoked but never defined (see the help page).Hyland 2000
was invoked but never defined (see the help page).Abramsky 2000
was invoked but never defined (see the help page).O'Hearn 1995
was invoked but never defined (see the help page).Loader 2001
was invoked but never defined (see the help page).
Cite error: There are <ref group=note>
tags on this page, but the references will not show without a {{reflist|group=note}}
template (see the help page).