skip to main content
10.1145/2837614.2837672acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
research-article

Memoryful geometry of Interaction II: recursion and adequacy

Published: 11 January 2016 Publication History

Abstract

A general framework of Memoryful Geometry of Interaction (mGoI) is introduced recently by the authors. It provides a sound translation of lambda-terms (on the high-level) to their realizations by stream transducers (on the low-level), where the internal states of the latter (called memories) are exploited for accommodating algebraic effects of Plotkin and Power. The translation is compositional, hence ``denotational,'' where transducers are inductively composed using an adaptation of Barbosa's coalgebraic component calculus. In the current paper we extend the mGoI framework and provide a systematic treatment of recursion---an essential feature of programming languages that was however missing in our previous work. Specifically, we introduce two new fixed-point operators in the coalgebraic component calculus. The two follow the previous work on recursion in GoI and are called Girard style and Mackie style: the former obviously exhibits some nice domain-theoretic properties, while the latter allows simpler construction. Their equivalence is established on the categorical (or, traced monoidal) level of abstraction, and is therefore generic with respect to the choice of algebraic effects. Our main result is an adequacy theorem of our mGoI translation, against Plotkin and Power's operational semantics for algebraic effects.

References

[1]
S. Abramsky, R. Jagadeesan, and P. Malacaria. Full abstraction for PCF. Information and Computation, 163(2):409–470, 2000.
[2]
S. Abramsky, E. Haghverdi, and P. J. Scott. Geometry of Interaction and linear combinatory algebras. Math. Struct. in Comp. Sci., 12(5): 625–665, 2002.
[3]
U. Dal Lago and U. Schöpp. Type inference for sublinear space functional programming. In Programming Languages and Systems, volume 6461 of Lecture Notes in Computer Science, pages 376–391. Springer Berlin Heidelberg, 2010.
[4]
V. Danos and L. Regnier. Local and asynchronous beta-reduction (an analysis of girard’s execution formula). In Logic in Computer Science, 1993. LICS ’93., Proceedings of Eighth Annual IEEE Symposium on, pages 296–306, 1993.
[5]
J. Egger, R. E. Møgelberg, and A. Simpson. Enriching an effect calculus with linear types. In E. Grädel and R. Kahle, editors, Computer Science Logic, volume 5771 of Lecture Notes in Computer Science, pages 240–254. Springer Berlin Heidelberg, 2009.
[6]
M. Fernández and I. Mackie. Call-by-value λ-graph rewriting without rewriting. In A. Corradini, H. Ehrig, H.-J. Kreowski, and G. Rozenberg, editors, Graph Transformation, volume 2505 of Lecture Notes in Computer Science, pages 75–89. Springer Berlin Heidelberg, 2002.
[7]
D. Ghica. Geometry of Synthesis: a structured approach to VLSI design. In POPL 2007, pages 363–375. ACM, 2007.
[8]
D. R. Ghica and A. I. Smith. Geometry of synthesis II: from games to delay-insensitive circuits. Electr. Notes Theor. Comput. Sci., 265: 301–324, 2010.
[9]
D. R. Ghica and A. I. Smith. Geometry of synthesis III: resource management through type inference. In T. Ball and M. Sagiv, editors, Proceedings of the 38th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2011, Austin, TX, USA, January 26- 28, 2011, pages 345–356. ACM, 2011.
[10]
D. R. Ghica, A. I. Smith, and S. Singh. Geometry of Synthesis IV: compiling affine recursion into static hardware. In ICFP, pages 221– 233, 2011.
[11]
J.-Y. Girard. Geometry of interaction 1: Interpretation of system F. In S. V. R. Ferro, C. Bonotto and A. Zanardo, editors, Logic Colloquium ’88 Proceedings of the Colloquium held in Padova, volume 127 of Studies in Logic and the Foundations of Mathematics, pages 221–260. Elsevier, 1989.
[12]
J. Y. Girard. Geometry of interaction 2: Deadlock-free algorithms. In Proceedings of the International Conference on Computer Logic, COLOG-88, pages 76–93, New York, NY, USA, 1990. Springer-Verlag New York, Inc. ISBN 0-387-52335-9.
[13]
E. Haghverdi. Towards a geometry of recursion. Theor. Comput. Sci., 412(20):2015–2028, Apr. 2011. ISSN 0304-3975.
[14]
M. Hasegawa. On traced monoidal closed categories. Math. Struct. in Comp. Sci., 19(2):217–244, 2009.
[15]
N. Hoshino. A modified GoI interpretation for a linear functional programming language and its adequacy. In FoSSaCS 2011, volume 6604 of Lect. Notes Comp. Sci., pages 320–334. Springer, 2011.
[16]
N. Hoshino, K. Muroya, and I. Hasuo. Memoryful Geometry of Interaction: from coalgebraic components to algebraic effects. In CSL-LICS 2014, page 52. ACM, 2014.
[17]
J. Hyland and C.-H. Ong. On full abstraction for PCF: I, II, and III. Information and Computation, 163(2):285–408, 2000.
[18]
A. Joyal, R. Street, and D. Verity. Traced monoidal categories. Math. Proc. Cambridge Phil. Soc., 119(3):447–468, 1996.
[19]
U. D. Lago, C. Faggian, B. Valiron, and A. Yoshimizu. Parallelism and synchronization in an infinitary context. In LICS, 2015.
[20]
O. Laurent. A token machine for full Geometry of Interaction. In TLCA, pages 283–297, 2001.
[21]
S. Mac Lane. Categories for the working mathematician. Springer, 1998.
[22]
I. Mackie. The Geometry of Interaction machine. In POPL 1995, pages 198–208. ACM, 1995.
[23]
E. Moggi. Computational lambda-calculus and monads. Tech. Report, pages 1–23, 1988.
[24]
J. S. Pinto. Implantation Parallèle avec la Logique Linéaire (Applications des Réseaux d’Interaction et de la Géométrie de l’Interaction). PhD thesis, École Polytechnique, 2001. Main text in English.
[25]
G. Plotkin and J. Power. Adequacy for algebraic effects. In FoSSaCS 2001, volume 2030 of Lect. Notes Comp. Sci., pages 1–24. Springer, 2001.
[26]
G. Plotkin and J. Power. Algebraic operations and generic effects. Appl. Categorical Struct., 11(1):69–94, 2003.
[27]
J. Power and E. Robinson. Premonoidal categories and notions of computation. Math. Struct. in Comp. Sci., 7(5):453–468, 1997.
[28]
U. Schöpp. Computation-by-interaction with effects. In H. Yang, editor, Programming Languages and Systems, volume 7078 of Lecture Notes in Computer Science, pages 305–321. Springer Berlin Heidelberg, 2011.
[29]
U. Schöpp. Call-by-value in a basic logic for interaction. In J. Garrigue, editor, Programming Languages and Systems, volume 8858 of Lecture Notes in Computer Science, pages 428–448. Springer International Publishing, 2014.
[30]
U. Schöpp. From call-by-value to interaction by typed closure conversion. In APLAS, 2015. To appear.

Cited By

View all
  • (2021)Operational Semantics with Hierarchical Abstract Syntax GraphsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.334.1334(1-10)Online publication date: 8-Feb-2021
  • (2021)The geometry of Bayesian programmingMathematical Structures in Computer Science10.1017/S096012952100039631:6(633-681)Online publication date: 7-Dec-2021
  • (2019)The Geometry of Bayesian Programming2019 34th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)10.1109/LICS.2019.8785663(1-13)Online publication date: Jun-2019
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
POPL '16: Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
January 2016
815 pages
ISBN:9781450335492
DOI:10.1145/2837614
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 51, Issue 1
    POPL '16
    January 2016
    815 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/2914770
    • Editor:
    • Andy Gill
    Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 11 January 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Geometry of Interaction
  2. adequacy
  3. algebraic effect
  4. monad

Qualifiers

  • Research-article

Funding Sources

Conference

POPL '16
Sponsor:

Acceptance Rates

Overall Acceptance Rate 824 of 4,130 submissions, 20%

Upcoming Conference

POPL '26

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)0
Reflects downloads up to 17 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Operational Semantics with Hierarchical Abstract Syntax GraphsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.334.1334(1-10)Online publication date: 8-Feb-2021
  • (2021)The geometry of Bayesian programmingMathematical Structures in Computer Science10.1017/S096012952100039631:6(633-681)Online publication date: 7-Dec-2021
  • (2019)The Geometry of Bayesian Programming2019 34th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)10.1109/LICS.2019.8785663(1-13)Online publication date: Jun-2019
  • (2018)The Geometry of Computation-Graph AbstractionProceedings of the 33rd Annual ACM/IEEE Symposium on Logic in Computer Science10.1145/3209108.3209127(749-758)Online publication date: 9-Jul-2018
  • (2017)The geometry of concurrent interactionProceedings of the 32nd Annual ACM/IEEE Symposium on Logic in Computer Science10.5555/3329995.3330047(1-12)Online publication date: 20-Jun-2017
  • (2017)The geometry of parallelism: classical, probabilistic, and quantum effectsACM SIGPLAN Notices10.1145/3093333.300985952:1(833-845)Online publication date: 1-Jan-2017
  • (2017)The geometry of parallelism: classical, probabilistic, and quantum effectsProceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages10.1145/3009837.3009859(833-845)Online publication date: 1-Jan-2017
  • (2017)The geometry of concurrent interaction: Handling multiple ports by way of multiple tokens2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)10.1109/LICS.2017.8005112(1-12)Online publication date: Jun-2017
  • (2023)The Geometry of Causality: Multi-token Geometry of Interaction and Its Causal UnfoldingProceedings of the ACM on Programming Languages10.1145/35712177:POPL(689-717)Online publication date: 11-Jan-2023
  • (2019)The geometry of Bayesian programmingProceedings of the 34th Annual ACM/IEEE Symposium on Logic in Computer Science10.5555/3470152.3470161(1-13)Online publication date: 24-Jun-2019

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media