skip to main content
research-article

Linearity and PCF: a semantic insight!

Published:19 September 2011Publication History
Skip Abstract Section

Abstract

Linearity is a multi-faceted and ubiquitous notion in the analysis and the development of programming language concepts. We study linearity in a denotational perspective by picking out programs that correspond to linear functions between coherence spaces.

We introduce a language, named SlPCF*, that increases the higher-order expressivity of a linear core of PCF by means of new operators related to exception handling and parallel evaluation. SlPCF* allows us to program all the finite elements of the model and, consequently, it entails a full abstraction result that makes the reasoning on the equivalence between programs simpler.

Denotational linearity provides also crucial information for the operational evaluation of programs. We formalize two evaluation machineries for the language. The first one is an abstract and concise operational semantics designed with the aim of explaining the new operators, and is based on an infinite-branching search of the evaluation space. The second one is more concrete and it prunes such a space, by exploiting the linear assumptions. This can also be regarded as a base for an implementation.

Skip Supplemental Material Section

Supplemental Material

_talk9.mp4

References

  1. S. Abramsky and G. McCusker. Linearity, sharing and state: a fully abstract game semantics for idealized algol with active expressions. ENTCS, 3, 1996.Google ScholarGoogle Scholar
  2. S. Abramsky, P. Malacaria, and R. Jagadeesan. Full abstraction for PCF. I & C, 163 (2): 409--470, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. S. Alves, M. Fernández, M. Florido, and I. Mackie. The power of linear functions. In LNCS 4207, pages 119--134. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. Alves, M. Fernández, M. Florido, and I. Mackie. Linear recursive functions. In LNCS 4600, pages 182--195. 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. S. Alves, M. Fernández, M. Florido, and I. Mackie. Gödel's system t revisited. TCS, 411 (11--13): 1484--1500, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. R. Amadio and P. L. Curien. Domains and Lambda-Calculi Cambridge University Press, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. G. Berry. Stable models of typed λ-calculi. In LNCS 62, pages 72--89. 1978. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. G. Berry. Modèles completement adequats et stable du lambda-calcul typé. PhD thesis, Université de Paris VII, France, 1979.Google ScholarGoogle Scholar
  9. G. Berry and P. L. Curien. Sequential algorithms on concrete data structures. TCS, 20: 265--321, 1982.Google ScholarGoogle ScholarCross RefCross Ref
  10. G. M. Bierman. Program equivalence in a linear functional language. JFP, 10 (2): 167--190, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. G. M. Bierman, A. M. Pitts, and C. V. Russo. Operational properties of lily, a polymorphic linear lambda calculus with recursion. ENTCS, 41 (3), 2000.Google ScholarGoogle Scholar
  12. A. Bucciarelli and T. Ehrhard. Sequentiality and strong stability. In Proc. LICS'91, pages 138--145, 1991.Google ScholarGoogle ScholarCross RefCross Ref
  13. A. Bucciarelli and T. Ehrhard. A theory of sequentiality. TCS, 113 (2): 273--291, 7 June 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. A. Bucciarelli, A. Carraro, T. Ehrhard, and A. Salibra. On linear information systems. In EPTCS 22, pages 38--48, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  15. P. L. Curien. Definability and full abstraction. ENTCS, 172: 301--310, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. T. Ehrhard and L. Regnier. Differential interaction nets. TCS, 364 (2): 166--195, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. M. Gaboardi and L. Paolini. Syntactical, operational and denotational linearity. In Workshop LOGIC. 2007.Google ScholarGoogle Scholar
  18. M. Gaboardi and M. Piccolo. Categorical models for a semantically linear λ-calculus. In EPTCS 22, pages 1--13, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  19. J. Y. Girard. Linear logic. TCS, 50: 1--102, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. J. Y. Girard, Y. Lafont, and P. Taylor. Proofs and Types. Cambridge University Press, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. J. R. Hindley. BCK-combinators and linear λ-terms have types. TCS, 64: 97--105, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. Huth. Linear domains and linear maps. In LNCS 802, pages 438--453. 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. M. E. Hyland and L. C.-H. Ong. On full abstraction for PCF: I, II, and III. I & C, 163 (2): 285--408, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. J. W. Klop. New fix point combinators from old. In Reflections on Type Theory. Radboud University Nijmegen, 2007.Google ScholarGoogle Scholar
  25. J. R. Longley. Notions of computability at higher types I. In Lecture Notes in Logic, pages 32--142. 2000.Google ScholarGoogle Scholar
  26. J. R. Longley. The sequentially realizable functionals. APAL, 117: 1--93, 2002.Google ScholarGoogle Scholar
  27. D. Normann. Computing with functionals - computability theory or computer science? Bulletin of Symbolic Logic, 12 (1): 43--59, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  28. C.-H. Luke Ong. Correspondence between operational and denotational semantics: the full abstraction for PCF. In Handbook of Logic in Computer Science pages 269--356. Oxford University Press, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. L. Paolini. A stable programming language. I & C, 204 (3): 339--375, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. L. Paolini and M. Piccolo. Semantically linear programming languages. In PPDP'08, pages 97--107. ACM, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. L. Paolini and M. Piccolo. A process-model for linear programs. In LNCS 5497, pages 289--305. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. M. Piccolo. Linearity and Beyond in Denotational Semantics. PhD thesis, Universitá di Torino/Université de Paris VII, 2009.Google ScholarGoogle Scholar
  33. G. D. Plotkin. LCF considerd as a programming language. TCS, 5: 225--255, 1977.Google ScholarGoogle ScholarCross RefCross Ref
  34. D. Walker. Advanced Topics in Types and Programming Languages, chapter Substructural Type Systems. The MIT Press, 2005.Google ScholarGoogle Scholar

Index Terms

  1. Linearity and PCF: a semantic insight!

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image ACM SIGPLAN Notices
              ACM SIGPLAN Notices  Volume 46, Issue 9
              ICFP '11
              September 2011
              456 pages
              ISSN:0362-1340
              EISSN:1558-1160
              DOI:10.1145/2034574
              Issue’s Table of Contents
              • cover image ACM Conferences
                ICFP '11: Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
                September 2011
                470 pages
                ISBN:9781450308656
                DOI:10.1145/2034773

              Copyright © 2011 ACM

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 19 September 2011

              Check for updates

              Qualifiers

              • research-article

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!