Results 1  10
of
89
Constraint Logic Programming: A Survey
"... Constraint Logic Programming (CLP) is a merger of two declarative paradigms: constraint solving and logic programming. Although a relatively new field, CLP has progressed in several quite different directions. In particular, the early fundamental concepts have been adapted to better serve in differe ..."
Abstract

Cited by 767 (23 self)
 Add to MetaCart
Constraint Logic Programming (CLP) is a merger of two declarative paradigms: constraint solving and logic programming. Although a relatively new field, CLP has progressed in several quite different directions. In particular, the early fundamental concepts have been adapted to better serve in different areas of applications. In this survey of CLP, a primary goal is to give a systematic description of the major trends in terms of common fundamental concepts. The three main parts cover the theory, implementation issues, and programming for applications.
Algorithms for Parallel Memory I: TwoLevel Memories
, 1992
"... We provide the first optimal algorithms in terms of the number of input/outputs (I/Os) required between internal memory and multiple secondary storage devices for the problems of sorting, FFT, matrix transposition, standard matrix multiplication, and related problems. Our twolevel memory model is n ..."
Abstract

Cited by 233 (31 self)
 Add to MetaCart
We provide the first optimal algorithms in terms of the number of input/outputs (I/Os) required between internal memory and multiple secondary storage devices for the problems of sorting, FFT, matrix transposition, standard matrix multiplication, and related problems. Our twolevel memory model is new and gives a realistic treatment of parallel block transfer, in which during a single I/O each of the P secondary storage devices can simultaneously transfer a contiguous block of B records. The model pertains to a largescale uniprocessor system or parallel multiprocessor system with P disks. In addition, the sorting, FFT, permutation network, and standard matrix multiplication algorithms are typically optimal in terms of the amount of internal processing time. The difficulty in developing optimal algorithms is to cope with the partitioning of memory into P separate physical devices. Our algorithms' performance can be significantly better than those obtained by the wellknown but nonopti...
The objective method: Probabilistic combinatorial optimization and local weak convergence
, 2003
"... ..."
The Probabilistic Analysis of a Greedy Satisfiability Algorithm
, 2002
"... Consider the following simple, greedy DavisPutnam algorithm applied to a random 3CNF formula of fixed density (clauses to variables ratio): Arbitrarily select and set to True a literal that appears in as many clauses as possible, irrespective of their size (and irrespective of the number of occu ..."
Abstract

Cited by 70 (5 self)
 Add to MetaCart
Consider the following simple, greedy DavisPutnam algorithm applied to a random 3CNF formula of fixed density (clauses to variables ratio): Arbitrarily select and set to True a literal that appears in as many clauses as possible, irrespective of their size (and irrespective of the number of occurrences of the negation of the literal). Delete these clauses from the formula, and also delete the negation of this literal from any clauses it appears. Repeat. If however unit clauses ever appear, then first repeatedly and in any order set the literals in them to True and delete and shrink clauses accordingly, until no unit clause remains. Also if at any step an empty clause appears, then do not backtrack, but just terminate the algorithm and report failure. A slight modification of this algorithm is probabilistically analyzed in this paper (rigorously). It is proved that for random formulas of n variables and density up to 3.42, it succeeds in producing a satisfying truth assignment with bounded away from zero probability, as n approaches infinity. Therefore the satisfiability threshold is at least 3.42.
On The Contour Of Random Trees
 SIAM J. Discrete Math
"... Two stochastic processes describing the contour of simply generated random trees are studied: the contour process as defined by Gutjahr and Pflug [9] and the traverse process constructed of the node heights during preorder traversal of the tree. Using multivariate generating functions and singulari ..."
Abstract

Cited by 63 (20 self)
 Add to MetaCart
Two stochastic processes describing the contour of simply generated random trees are studied: the contour process as defined by Gutjahr and Pflug [9] and the traverse process constructed of the node heights during preorder traversal of the tree. Using multivariate generating functions and singularity analysis the weak convergence of the contour process to Brownian excursion is shown and a new proof of the analogous result for the traverse process is obtained. 1.
Simple Randomized Mergesort on Parallel Disks
 PARALLEL COMPUTING
, 1996
"... We consider the problem of sorting a file of N records on the Ddisk model of parallel I/O [VS94] in which there are two sources of parallelism. Records are transferred to and from disk concurrently in blocks of B contiguous records. In each I/O operation, up to one block can be transferred to or fr ..."
Abstract

Cited by 61 (11 self)
 Add to MetaCart
We consider the problem of sorting a file of N records on the Ddisk model of parallel I/O [VS94] in which there are two sources of parallelism. Records are transferred to and from disk concurrently in blocks of B contiguous records. In each I/O operation, up to one block can be transferred to or from each of the D disks in parallel. We propose a simple, efficient, randomized mergesort algorithm called SRM that uses a forecastandflush approach to overcome the inherent difficulties of simple merging on parallel disks. SRM exhibits a limited use of randomization and also has a useful deterministic version. Generalizing the technique of forecasting [Knu73], our algorithm is able to read in, at any time, the "right" block from any disk, and using the technique of flushing, our algorithm evicts, without any I/O overhead, just the "right" blocks from memory to make space for new ones to be read in. The disk layout of SRM is such that it enjoys perfect write parallelism, avoiding fundamenta...
Backwards Analysis of Randomized Geometric Algorithms
 Trends in Discrete and Computational Geometry, volume 10 of Algorithms and Combinatorics
, 1992
"... The theme of this paper is a rather simple method that has proved very potent in the analysis of the expected performance of various randomized algorithms and data structures in computational geometry. The method can be described as "analyze a randomized algorithm as if it were running backwards in ..."
Abstract

Cited by 60 (0 self)
 Add to MetaCart
The theme of this paper is a rather simple method that has proved very potent in the analysis of the expected performance of various randomized algorithms and data structures in computational geometry. The method can be described as "analyze a randomized algorithm as if it were running backwards in time, from output to input." We apply this type of analysis to a variety of algorithms, old and new, and obtain solutions with optimal or near optimal expected performance for a plethora of problems in computational geometry, such as computing Delaunay triangulations of convex polygons, computing convex hulls of point sets in the plane or in higher dimensions, sorting, intersecting line segments, linear programming with a fixed number of variables, and others. 1 Introduction The curious phenomenon that randomness can be used profitably in the solution of computational tasks has attracted a lot of attention from researchers in recent years. The approach has proved useful in such diverse area...
Varieties of Increasing Trees
, 1992
"... An increasing tree is a labelled rooted tree in which labels along any branch from the root go in increasing order. Under various guises, such trees have surfaced as tree representations of permutations, as data structures in computer science, and as probabilistic models in diverse applications. We ..."
Abstract

Cited by 54 (7 self)
 Add to MetaCart
An increasing tree is a labelled rooted tree in which labels along any branch from the root go in increasing order. Under various guises, such trees have surfaced as tree representations of permutations, as data structures in computer science, and as probabilistic models in diverse applications. We present a unified generating function approach to the enumeration of parameters on such trees. The counting generating functions for several basic parameters are shown to be related to a simple ordinary differential equation which is non linear and autonomous. Singularity analysis applied to the intervening generating functions then permits to analyze asymptotically a number of parameters of the trees, like: root degree, number of leaves, path length, and level of nodes. In this way it is found that various models share common features: path length is O(n log n), the distributions of node levels and number of leaves are asymptotically normal, etc.