Abstract
We use a fully abstract denotational model to show that nested function calls and recursive definitions can be eliminated from SPCF (a typed functional language with simple non-local control operators) without losing expressiveness. We describe — via simple typing rules — an affine fragment of SPCF in which function nesting and recursion (other than iteration) are not permitted. We prove that this affine fragment is fully expressive in the sense that every term of SPCF is observationally equivalent to an affine term.
Our proof is based on the observation of Longley — already used to prove universality and full abstraction results for models of SPCF — that every type of SPCF is a retract of a first-order type. We describe retractions of this kind which are definable in the affine fragment. This allows us to transform an arbitrary SPCF term into an affine one by mapping it to a first-order term, obtaining an (affine) normal form, and then projecting back to the original type. In the case of finitary SPCF, the retraction is based on a simple induction, which yields bounds for the size of the resulting term. In the infinitary case, it is based on an analysis of the relationship between SPCF definable functions and strategies for computing them sequentially.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Asperti, A.: Light affine logic. In: Proceedings of LICS 1998. IEEE press, Los Alamitos (1998)
Braüner, T.: An axiomatic approach to adequacy. PhD thesis, BRICS (1996)
Cartwright, R., Felleisen, M.: Observable sequentiality and full abstraction. In: Proceedings of POPL 1992 (1992)
Cartwright, R., Curien, P.-L., Felleisen, M.: Fully abstract semantics for observably sequential languages. Information and Computation (1994)
Curien, P.-L.: On the symmetry of sequentiality. In: Main, M.G., Melton, A.C., Mislove, M.W., Schmidt, D., Brookes, S.D. (eds.) MFPS 1993. LNCS, vol. 802. Springer, Heidelberg (1994)
Scedrov, A., Girard, J.-Y., Scott, P.: Bounded linear logic: A modular approach to polynomial-time computability. Theoretical Computer Science 97, 1–66 (1992)
Lafont, Y.: Soft linear logic and polynomial time. Theoretical Computer Science (2004) (to appear)
Laird, J.: Bistability: an extensional characterization of sequentiality. In: Baaz, M., Makowsky, J.A. (eds.) CSL 2003. LNCS, vol. 2803, pp. 372–383. Springer, Heidelberg (2003)
Laird, J.: Bistability: A sequential domain theory (2004), Available from http://www.cogs.susx.ac.uk/users/jiml
Laird, J.: Locally boolean domains. To appear in Theoretical Computer Science (2005)
Longley, J.: The sequentially realizable functionals. Annals of Pure and Applied Logic (1998)
J. Longley. Universal types and what they are good for. In Domain Theory, Logic and Computation: Proceedings of the 2nd International Symposium on Domain Theory. Kluwer, 2004.
Reynolds, J.: Syntactic control of interference. In: Conf. Record 5th ACM Symposium on Principles of Programming Languages, pp. 39–46 (1978)
Riecke, J.G.: The Logic and Expressibility of Simply-Typed Call-by-Value and Lazy Languages. PhD thesis, Massachusetts Institute of Technology, Available as technical report MIT/LCS/TR-523 (MIT Laboratory for Computer Science) (1991)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Laird, J. (2005). The Elimination of Nesting in SPCF. In: Urzyczyn, P. (eds) Typed Lambda Calculi and Applications. TLCA 2005. Lecture Notes in Computer Science, vol 3461. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11417170_18
Download citation
DOI: https://doi.org/10.1007/11417170_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25593-2
Online ISBN: 978-3-540-32014-2
eBook Packages: Computer ScienceComputer Science (R0)