Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/199448.199451acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free access

Sequential algorithms, deterministic parallelism, and intensional expressiveness

Published: 25 January 1995 Publication History
  • Get Citation Alerts
  • Abstract

    We call language L1 intensionally more expressive than L2 if there are functions which can be computed faster in L1 than in L2. We study the intensional expressiveness of several languages: the Berry-Curien programming language of sequential algorithms, CDS0, a deterministic parallel extension to it, named CDSP, and various parallel extensions to the functional programming language PCF. The paper consists of two parts.
    In the first part, we show that CDS0 can compute the minimum of two numbers n and p in unary representation in time O(min(n,p)). However, it cannot compute a “natural” version of this function. CDSP allows us to compute this function, as well as functions like parallel-or. This work can be seen as an extension of the work of Colson with primitive recursive algorithms to the setting of sequential algorithms.
    In the second part, we show that deterministic parallelism adds intensional expressiveness, settling a “folk” conjecture from the literature in the negative. We show that CDSP is more expressive intensionally than CDS0. We also study three parallel extensions to PCF: parallel-or (por) and parallel conditionals on booleans (pifο) and integers (pifι). The situation is more complicated there: pifι is still more expressive than both pifο and por. However, pifι still is not as expressive as the deterministic query construct of CDSP. Thus, we identify a hierarchy of intensional expressiveness for deterministic parallelism.

    References

    [1]
    G. Berry, Programming with concrete data structures and sequential algorithms, in: Proc. A CM Conf. on Functional Programming Languages and Computer Architecture, 1981, 49-57.
    [2]
    G. Berry and P.-L. Curien, Sequential algorithms on concrete data structures, Theoretical Computer Science 20 (1985) 265-321.
    [3]
    G. Berry and P.-L. Curien, The kernel of the applicative language CDS: Theory and practice, in: M. Nivat and J.C. Reynolds, eds., Algebraic Methods #n Semantics (Cambridge University Press, 1985) 35-87.
    [4]
    S. Brookes and S. Geva, Computational Comonads and Intensional Semantics, in: M. Fourman, P. Johnstone, and A. Pitts, eds., Applications of Categories in Computer Science, LMS Lecture Notes 177 (Cambridge University Press, 1992) 1-44.
    [5]
    S Brookes and S. Geva, Towards a theory of parallel algorithms on concrete data structures, Theoretical Computer Science 101 (1992) 177-221.
    [6]
    R Cartwright, P.-L. Curien, M. Felleisen, Fully abstract semantics for observably sequential languages, to appear in Information and Computation.
    [7]
    L Colson, About Primitive Recursive Algorithms, in: Proc. International Colloquium on Automata, Languages, and Programming, 1989, 194-206.
    [8]
    L Colson, Reprdsentation intentionelle d'algorithmes dans les syst#mes fonctioneUes: une dtude de cas, Th#se de Doctorat, Universit# Paris VII (1991).
    [9]
    T Coquand, Une preuve directe du Th#or#me d'Ultime Obstination, Comptes Rendus de l'Acaddmie des Sciences, March 1992.
    [10]
    T fI. Cormen, C.E. Leiserson, R.L. Rivest, Introduction to Algorithms (MIT Press, 1990).
    [11]
    P.-L. Curien, Categomcal Combinators, Sequential Algorithms, and Functional Programming (Birkh#user, 1993).
    [12]
    D.J. Gurr, Semantic Frameworks for Complexity, Doctoral Thesis, University of Edinburgh, Technical Report ECS-LFCS-91-130, January 1991.
    [13]
    J.E. tIopcroft and J.D. Ullman, Introduction to Automata Theory, Languages, and Computation (Addison-Wesley, 1979).
    [14]
    J. Hughes and A. Ferguson, A loop-detecting interpreter for lazy, higher-order programs, in: Proc. Glasgow Workshop on Functional Languages, 1992.
    [15]
    G. Kahn and G.D. Plotkin, Concrete Domains, Theoretical Computer Science 121 (1993).
    [16]
    S.C. Kleene, Introduction to Metamathematics (North- Holland, 1952).
    [17]
    R. Milner, M. Tofte, and R. Harper, The definition of Standard ML (MIT Press, 1990).
    [18]
    G.D. Plotkin, LCF considered as a programming language, Theoretical Computer Science 5 (1977) 223-56.
    [19]
    M. Rosendahl, Automatic complexity analysis, in: Proc. A CM Conf. on Functional Programming Languages and Computer Architecture, 1989, 144-156.
    [20]
    A. Stoughton, Interdefinability of parallel operations in PCF, Theoretical Computer Science 79 (1991) 357-8.

    Cited By

    View all
    • (2008)A complete characterization of primitive recursive intensional behavioursRAIRO - Theoretical Informatics and Applications10.1051/ita:200705342:1(69-82)Online publication date: 18-Jan-2008

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    POPL '95: Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
    January 1995
    415 pages
    ISBN:0897916921
    DOI:10.1145/199448
    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 ACM 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

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 25 January 1995

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Article

    Conference

    POPL95
    POPL95: 22nd ACM Symposium on Principles of Programming Languages
    January 23 - 25, 1995
    California, San Francisco, USA

    Acceptance Rates

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

    Upcoming Conference

    POPL '25

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)23
    • Downloads (Last 6 weeks)6

    Other Metrics

    Citations

    Cited By

    View all
    • (2008)A complete characterization of primitive recursive intensional behavioursRAIRO - Theoretical Informatics and Applications10.1051/ita:200705342:1(69-82)Online publication date: 18-Jan-2008

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media