Abstract
It is shown that for a functional language with explicit parallelisms, at least two different parallel operators are necessary from a complexity point of view. In principle, just one of these operators is semantically sufficient, but the other cannot be implemented in constant time using this one operator. The parallel functional language is a first-order language (in order to keep the semantics simple) and is intended for shared memory architectures, for example, PRAMS. Operational semantics for the various kinds of PRAMs (parallel random-access machines) are defined, and some examples of implementations of parallel algorithms in this language are given. This semantics also includes processor scheduling. The complexity results presented also apply to higher-order functional languages, because the lower-bound proofs for the simulation do not make use of the first-order property. >
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.