Results 1  10
of
83
Programming Parallel Algorithms
, 1996
"... In the past 20 years there has been treftlendous progress in developing and analyzing parallel algorithftls. Researchers have developed efficient parallel algorithms to solve most problems for which efficient sequential solutions are known. Although some ofthese algorithms are efficient only in a th ..."
Abstract

Cited by 193 (9 self)
 Add to MetaCart
In the past 20 years there has been treftlendous progress in developing and analyzing parallel algorithftls. Researchers have developed efficient parallel algorithms to solve most problems for which efficient sequential solutions are known. Although some ofthese algorithms are efficient only in a theoretical framework, many are quite efficient in practice or have key ideas that have been used in efficient implementations. This research on parallel algorithms has not only improved our general understanding ofparallelism but in several cases has led to improvements in sequential algorithms. Unf:ortunately there has been less success in developing good languages f:or prograftlftling parallel algorithftls, particularly languages that are well suited for teaching and prototyping algorithms. There has been a large gap between languages
Verifying Parameterized Networks using Abstraction and Regular Languages
, 1995
"... ion and Regular Languages ? E. M. Clarke 1 and O. Grumberg 2 and S. Jha 1 1 Carnegie Mellon University, Pittsburgh, PA 15213 2 Computer Science Dept, The Technion, Haifa 32000, Israel Abstract. This paper describes a technique based on network grammars and abstraction to verify families of ..."
Abstract

Cited by 47 (0 self)
 Add to MetaCart
ion and Regular Languages ? E. M. Clarke 1 and O. Grumberg 2 and S. Jha 1 1 Carnegie Mellon University, Pittsburgh, PA 15213 2 Computer Science Dept, The Technion, Haifa 32000, Israel Abstract. This paper describes a technique based on network grammars and abstraction to verify families of statetransition systems. The family of statetransition systems is represented by a contextfree network grammar. Using the structure of the network grammar our technique constructs an invariant which simulates all the statetransition systems in the family. A novel idea used in this paper is to use regular languages to express state properties. We have implemented our techniques and verified two nontrivial examples. 1 Introduction Automatic verification of statetransition systems using temporal logic model checking has been investigated by numerous authors [3, 4, 5, 12, 16]. The basic model checking problem is easy to state Given a statetransition system P and a temporal formula f , de...
A language for compositional specification and verification of finite state hardware controllers
 Proceedings of the IEEE
, 1991
"... Abstract SML is a language for describing complex finitestate hardware controllers. It provides many of the standard control structures found in modern programming languages. The state tables produced by the SML compiler can be used as input to a temporal logic model checker that can automatically ..."
Abstract

Cited by 36 (2 self)
 Add to MetaCart
Abstract SML is a language for describing complex finitestate hardware controllers. It provides many of the standard control structures found in modern programming languages. The state tables produced by the SML compiler can be used as input to a temporal logic model checker that can automatically determine whether a specification in the logic CTL is satisfied. We describe extensions to SML for the design of modular controllers. These extensions allow a compositional approach to model checking which can substantially reduce its complexity. To demonstrate our methods, we discuss the specification and verification of a simple CPU controller. 0
An Alternative Method to Crossing Minimization on Hierarchical Graphs
 SIAM J. Optimization
, 1997
"... . A common method for drawing directed graphs is, as a first step, to partition the vertices into a set of k levels and then, as a second step, to permute the vertices within the levels such that the number of crossings is minimized. We suggest an alternative method for the second step, namely, remo ..."
Abstract

Cited by 28 (0 self)
 Add to MetaCart
. A common method for drawing directed graphs is, as a first step, to partition the vertices into a set of k levels and then, as a second step, to permute the vertices within the levels such that the number of crossings is minimized. We suggest an alternative method for the second step, namely, removing the minimal number of edges such that the resulting graph is klevel planar. For the final diagram the removed edges are reinserted into a klevel planar drawing. Hence, instead of considering the klevel crossing minimization problem, we suggest solving the klevel planarization problem. In this paper we address the case k = 2. First, we give a motivation for our approach. Then, we address the problem of extracting a 2level planar subgraph of maximum weight in a given 2level graph. This problem is NPhard. Based on a characterization of 2level planar graphs, we give an integer linear programming formulation for the 2level planarization problem. Moreover, we define and investigate t...
Embedding of Tree Networks into Hypercubes
, 1985
"... The hypercube is a good host graph for the embedding of networks of processors because of its low degree and low diameter. Graphs such as trees and arrays can be embedded into a hypercube with small dilation and expansion costs, but there are classes of graphs which can be embedded into a hypercube ..."
Abstract

Cited by 26 (0 self)
 Add to MetaCart
The hypercube is a good host graph for the embedding of networks of processors because of its low degree and low diameter. Graphs such as trees and arrays can be embedded into a hypercube with small dilation and expansion costs, but there are classes of graphs which can be embedded into a hypercube only with large expansion COSt or large dilation cost.
On Rectangle Visibility Graphs
, 1997
"... We study the problem of drawing a graph in the plane so that the vertices of the graph are rectangles that are aligned with the axes, and the edges of the graph are horizontal or vertical linesofsight. Such a drawing ..."
Abstract

Cited by 21 (8 self)
 Add to MetaCart
We study the problem of drawing a graph in the plane so that the vertices of the graph are rectangles that are aligned with the axes, and the edges of the graph are horizontal or vertical linesofsight. Such a drawing
Implementing Hypertext Database Relationships through Aggregations and Exceptions
, 1991
"... In order to combine hypertext with database facilities, we show how to extract an effective storage structure from given instance relationships. The schema of the structure recognizes clusters and exceptions. Extracting highlevel structures is useful for providing a high performance browsing enviro ..."
Abstract

Cited by 17 (2 self)
 Add to MetaCart
In order to combine hypertext with database facilities, we show how to extract an effective storage structure from given instance relationships. The schema of the structure recognizes clusters and exceptions. Extracting highlevel structures is useful for providing a high performance browsing environment as well as efficient physical database design, especially when handling large amounts of data. This paper focuses on a clustering method, ACE, which generates aggregations and exceptions from the original graph structure in order to capture high level relationships. The problem of minimizing the cost function is NPcomplete. We use a heuristic approach based on an extended KernighanLin algorithm. We demonstrate our method on a hypertext application and on a standard random graph, compared with its analytical model. The storage reductions of input database size in main memory were 77.2% and 12.3%, respectively. It was also useful for secondary storage organization for efficient retriev...
Using Domain Decomposition to find Graph Bisectors
 BIT
, 1995
"... In this paper we introduce a threestep approach to find a vertex bisector of a graph. The first step finds a domain decomposition of the graph, a set of connected subgraphs, the domains, and a multisector, the remaining vertices that separate the domains from each other. The second step uses a bloc ..."
Abstract

Cited by 17 (4 self)
 Add to MetaCart
In this paper we introduce a threestep approach to find a vertex bisector of a graph. The first step finds a domain decomposition of the graph, a set of connected subgraphs, the domains, and a multisector, the remaining vertices that separate the domains from each other. The second step uses a block variant of the KernighanLin scheme to find a bisector that is a subset of the multisector. The third step improves the bisector by bipartite graph matching. Experimental results show this domain decomposition method finds graph partitions that compare favorably with a stateoftheart multilevel partitioning scheme in both quality and execution time. 1 Introduction Graph partitioning is a wellknown practical problem that has many important applications, such as task allocation for parallel computations [13] and circuit partitioning for VLSI design [22]. Our driving interest is to find lowfill orderings for sparse matrix computation [4], [6], [15], [19]. An effective approach to find fi...
An Efficient Jacobilike Algorithm for Parallel Eigenvalue Computation
 IEEE TRANS. ON COMPUTERS
, 1993
"... A very fast Jacobilike algorithm for the parallel solution of symmetric eigenvalue problems is proposed. It becomes possible by not focusing on the realization of the Jacobi rotation with a CORDIC processor, but by applying approximate rotations and adjusting them to single steps of the CORDIC algo ..."
Abstract

Cited by 17 (8 self)
 Add to MetaCart
A very fast Jacobilike algorithm for the parallel solution of symmetric eigenvalue problems is proposed. It becomes possible by not focusing on the realization of the Jacobi rotation with a CORDIC processor, but by applying approximate rotations and adjusting them to single steps of the CORDIC algorithm, i.e., only one angle of the CORDIC angle sequence defines the Jacobi rotation in each step. This angle can be determined by some shift, add and compare operations. Although mly linear convergence is obtained for the most simple version of the new algorithm, the overall operation count (shifts and adds) decreases dramatically. A slow increase of the number of involved CORDIC angles during the runtime retains quadratic convergence.