Results 11  20
of
138
Parallel Implementation of Tree Skeletons
 Journal of Parallel and Distributed Computing
, 1995
"... Trees are a useful data type, but they are not routinely included in parallel programming systems because their irregular structure makes them seem hard to compute with efficiently. We present a method for constructing implementations of skeletons, highlevel homomorphic operations on trees, that ex ..."
Abstract

Cited by 18 (2 self)
 Add to MetaCart
Trees are a useful data type, but they are not routinely included in parallel programming systems because their irregular structure makes them seem hard to compute with efficiently. We present a method for constructing implementations of skeletons, highlevel homomorphic operations on trees, that execute in parallel. In particular, we consider the case where the size of the tree is much larger than the the number of processors available, so that tree data must be partitioned. The approach uses the theory of categorical data types to derive implementation templates based on tree contraction. Many useful tree operations can be computed in time logarithmic in the size of their argument, on a wide range of parallel systems. 1 Contribution One common approach to generalpurpose parallel computation is based on packaging complex operations as templates, or skeletons [3, 12]. Skeletons encapsulate the control and data flow necessary to compute useful operations. This permits software to be...
Algorithms on Compressed Strings and Arrays
 In Proc. 26th Ann. Conf. on Current Trends in Theory and Practice of Infomatics
, 1999
"... . We survey the complexity issues related to several algorithmic problems for compressed one and twodimensional texts without explicit decompression: patternmatching, equalitytesting, computation of regularities, subsegment extraction, language membership, and solvability of word equations. Our ..."
Abstract

Cited by 18 (0 self)
 Add to MetaCart
. We survey the complexity issues related to several algorithmic problems for compressed one and twodimensional texts without explicit decompression: patternmatching, equalitytesting, computation of regularities, subsegment extraction, language membership, and solvability of word equations. Our basic problem is one and twodimensional patternmatching together with its variations. For some types of compression the patternmatching problems are infeasible (NPhard), for other types they are solvable in polynomial time and we discuss how to reduce the degree of corresponding polynomials. 1 Introduction In the last decade a new stream of research related to data compression has emerged: algorithms on compressed objects. It has been caused by the increase in the volume of data and the need to store and transmit masses of information in compressed form. The compressed information has to be quickly accessed and processed without explicit decompression. In this paper we consider severa...
Subcubic Cost Algorithms for the All Pairs Shortest Path Problem
 Algorithmica
, 1995
"... . In this paper we give three subcubic cost algorithms for the all pairs shortest distance (APSD) and path (APSP) problems. The first is a parallel algorithm that solves the APSD problem for a directed graph with unit edge costs in O(log 2 n) time with O(n ffi p log n) processors where = 2:68 ..."
Abstract

Cited by 18 (3 self)
 Add to MetaCart
. In this paper we give three subcubic cost algorithms for the all pairs shortest distance (APSD) and path (APSP) problems. The first is a parallel algorithm that solves the APSD problem for a directed graph with unit edge costs in O(log 2 n) time with O(n ffi p log n) processors where = 2:688 on an EREWPRAM. The second parallel algorithm solves the APSP, and consequently APSD, problem for a directed graph with nonnegative general costs (real numbers) in O(log 2 n) time with o(n 3 ) subcubic cost. Previously this cost was greater than O(n 3 ). Finally we improve with respect to M the complexity O((Mn) ) of a sequential algorithm for a graph with edge costs up to M into O(M 1=3 n (6+!)=3 (log n) 2=3 (log log n) 1=3 ) in the APSD problem. 1 Introduction The all pairs shortest path (APSP) problem is to compute shortest paths between all pairs of vertices of a directed graph with nonnegative real numbers as edge costs. The all pairs shortest distance problem ...
Parsing of ContextFree Languages
 In: Rozenberg G., Salomaa A. (Eds), Handbook of Formal Languages
, 1997
"... Parsing is the process of assigning structure to sentences. The structure is obtained from the grammatical description of the language. Both in Computer Science and in Computational Linguistics, contextfree grammars and associated parsing algorithms are among the most useful tools. Numerous parsing ..."
Abstract

Cited by 18 (2 self)
 Add to MetaCart
Parsing is the process of assigning structure to sentences. The structure is obtained from the grammatical description of the language. Both in Computer Science and in Computational Linguistics, contextfree grammars and associated parsing algorithms are among the most useful tools. Numerous parsing algorithms have been developed. Special subclasses of the contextfree grammars have been introduced in order to allow and induce efficient parsing algorithms. Special superclasses of the contextfree grammars have been introduced in order to allow use of variants of efficient parsing methods that had been developed for contextfree grammars. At first sight many parsing algorithms seem to be different, but nevertheless related. Some unifying approaches have been attempted in the past, but none survived the changing field. This report introduces a unifying approach at a level between grammars and algorithms, introducing socalled parsing schemata. In the parsing schemata framework the essenti...
Parallel Algorithm for the Matrix Chain Product and the Optimal Triangulation Problems (Extended Abstract)
, 1993
"... This paper considers the problem of finding an optimal order of the multiplication chain of matrices and the problem of finding an optimal triangulation of a convex polygon. For both these problems the best sequential algorithms run in \Theta(n log n) time. All parallel algorithms known use the dyna ..."
Abstract

Cited by 17 (2 self)
 Add to MetaCart
This paper considers the problem of finding an optimal order of the multiplication chain of matrices and the problem of finding an optimal triangulation of a convex polygon. For both these problems the best sequential algorithms run in \Theta(n log n) time. All parallel algorithms known use the dynamic programming paradigm and run in a polylogarithmic time using, in the best case, O(n 6 =log k n) processors for a constant k. We give a new algorithm which uses a different approach and reduces the problem to computing certain recurrence in a tree. We show that this recurrence can be optimally solved which enables us to improve the parallel bound by a few factors. Our algorithm runs in O(log 3 n) time using n 2 =log 3 n processors on a CREW PRAM. We also consider the problem of finding an optimal triangulation in a monotone polygon. An O(log 2 n) time and n processors algorithm on a CREW PRAM is given. Key words : parallel algorithms, computational geometry, dynamic programm...
PRAM Computations Resilient to Memory Faults
 2nd European Symposium on Algorithms ESA’94
"... : PRAMs with faults in their shared memory are investigated. Efficient general simulations on such machines of algorithms designed for fully reliable PRAMs are developed. The PRAM we work with is the ConcurrentRead ConcurrentWrite (CRCW) variant. Two possible settings for error occurrence are cons ..."
Abstract

Cited by 16 (6 self)
 Add to MetaCart
: PRAMs with faults in their shared memory are investigated. Efficient general simulations on such machines of algorithms designed for fully reliable PRAMs are developed. The PRAM we work with is the ConcurrentRead ConcurrentWrite (CRCW) variant. Two possible settings for error occurrence are considered: the errors may be either static (once a memory cell is checked to be operational it remains so during the computation) or dynamic (a potentially faulty cell may crash at any time, the total number of such cells being bounded). A simulation consists of two phases: memory formatting and the proper part done in a stepbystep way. For each error setting (static or dynamic), two simulations are presented: one with a O(1)time perstep cost, the other with a O(log n)time perstep cost. The other parameters of these simulations (number of processors, memory size, formatting time) are shown in table 1 in section 6. The simulations are randomized and Monte Carlo: they always operate within ...
The Computational Complexity of Generating Random Fractals
 J. Stat. Phys
, 1996
"... In this paper we examine a number of models that generate random fractals. The models are studied using the tools of computational complexity theory from the perspective of parallel computation. Diffusion limited aggregation and several widely used algorithms for equilibrating the Ising model ar ..."
Abstract

Cited by 16 (6 self)
 Add to MetaCart
In this paper we examine a number of models that generate random fractals. The models are studied using the tools of computational complexity theory from the perspective of parallel computation. Diffusion limited aggregation and several widely used algorithms for equilibrating the Ising model are shown to be highly sequential; it is unlikely they can be simulated efficiently in parallel. This is in contrast to Mandelbrot percolation that can be simulated in constant parallel time. Our research helps shed light on the intrinsic complexity of these models relative to each other and to different growth processes that have been recently studied using complexity theory. In addition, the results may serve as a guide to simulation physics. Keywords: Cluster algorithms, computational complexity, diffusion limited aggregation, Ising model, Metropolis algorithm, Pcompleteness 1
Systematic Extraction and Implementation of DivideandConquer Parallelism
 Programming languages: Implementation, Logics and Programs, Lecture Notes in Computer Science 1140
, 1996
"... Homomorphisms are functions that match the divideandconquer paradigm and thus can be computed in parallel. Two problems are studied for homomorphisms on lists: (1) parallelism extraction: finding a homomorphic representation of a given function; (2) parallelism implementation: deriving an efficien ..."
Abstract

Cited by 16 (5 self)
 Add to MetaCart
Homomorphisms are functions that match the divideandconquer paradigm and thus can be computed in parallel. Two problems are studied for homomorphisms on lists: (1) parallelism extraction: finding a homomorphic representation of a given function; (2) parallelism implementation: deriving an efficient parallel program that computes the function. A systematic approach to parallelism extraction proceeds by generalization of two sequential representations based on traditional cons lists and dual snoc lists. For some nonhomomorphic functions, e.g., the maximum segment sum problem, our method provides an embedding into a homomorphism. The implementation is addressed by introducing a subclass of distributable homomorphisms and deriving for them a parallel program schema, which is time optimal on the hypercube architecture. The derivation is based on equational reasoning in the BirdMeertens formalism, which guarantees the correctness of the parallel target program. The approach is illustrated with function...
The tractable cognition thesis
 Cognitive Science: A Multidisciplinary Journal
, 2008
"... The recognition that human minds/brains are finite systems with limited resources for computation has led some researchers to advance the Tractable Cognition thesis: Human cognitive capacities are constrained by computational tractability. This thesis, if true, serves cognitive psychology by constra ..."
Abstract

Cited by 15 (2 self)
 Add to MetaCart
The recognition that human minds/brains are finite systems with limited resources for computation has led some researchers to advance the Tractable Cognition thesis: Human cognitive capacities are constrained by computational tractability. This thesis, if true, serves cognitive psychology by constraining the space of computationallevel theories of cognition. To utilize this constraint, a precise and workable definition of “computational tractability ” is needed. Following computer science tradition, many cognitive scientists and psychologists define computational tractability as polynomialtime computability, leading to the PCognition thesis. This article explains how and why the PCognition thesis may be overly restrictive, risking the exclusion of veridical computationallevel theories from scientific investigation. An argument is made to replace the PCognition thesis by the FPTCognition thesis as an alternative formalization of the Tractable Cognition thesis (here, FPT stands for fixedparameter tractable). Possible objections to the Tractable Cognition thesis, and its proposed formalization, are discussed, and existing misconceptions are clarified.