Results 1  10
of
18
An Incremental Algorithm for a Generalization of the ShortestPath Problem
, 1992
"... The grammar problem, a generalization of the singlesource shortestpath problem introduced by Knuth, is to compute the minimumcost derivation of a terminal string from each nonterminal of a given contextfree grammar, with the cost of a derivation being suitably defined. This problem also subsume ..."
Abstract

Cited by 116 (1 self)
 Add to MetaCart
The grammar problem, a generalization of the singlesource shortestpath problem introduced by Knuth, is to compute the minimumcost derivation of a terminal string from each nonterminal of a given contextfree grammar, with the cost of a derivation being suitably defined. This problem also subsumes the problem of finding optimal hyperpaths in directed hypergraphs (under varying optimization criteria) that has received attention recently. In this paper we present an incremental algorithm for a version of the grammar problem. As a special case of this algorithm we obtain an efficient incremental algorithm for the singlesource shortestpath problem with positive edge lengths. The aspect of our work that distinguishes it from other work on the dynamic shortestpath problem is its ability to handle "multiple heterogeneous modifications": between updates, the input graph is allowed to be restructured by an arbitrary mixture of edge insertions, edge deletions, and edgelength changes.
On the Computational Complexity of Dynamic Graph Problems
 THEORETICAL COMPUTER SCIENCE
, 1996
"... ..."
Incremental Model Checking in the Modal MuCalculus
 IN CAV, VOLUME 818 OF LNCS
, 1994
"... We present an incremental algorithm for model checking in the alternation free fragment of the modal mucalculus, the first incremental algorithm for model checking of which we are aware. The basis for our algorithm, which we call MCI (for Model Checking Incrementally), is a lineartime algorithm d ..."
Abstract

Cited by 36 (2 self)
 Add to MetaCart
We present an incremental algorithm for model checking in the alternation free fragment of the modal mucalculus, the first incremental algorithm for model checking of which we are aware. The basis for our algorithm, which we call MCI (for Model Checking Incrementally), is a lineartime algorithm due to Cleaveland and Steffen that performs global (nonincremental) computation of fixed points. MCI takes as input a set \Delta of changes to the labeled transition system under investigation, where a change constitutes an inserted or deleted transition; with virtually no additional cost, inserted and deleted states can also be accommodated. Like the CleavelandSteffen algorithm, MCI requires time linear in the size of the LTS in the worst case, but only time linear in \Delta in the best case. We give several examples to illustrate MCI in action, and discuss its implementation in the Concurrency Factory, an interactive design environment for concurrent systems.
Improved Algorithms for Dynamic Shortest Paths
 Algorithmica
, 1996
"... We describe algorithms for finding shortest paths and distances in outerplanar and planar digraphs that exploit the particular topology of the input graph. An important feature of our algorithms is that they can work in a dynamic environment, where the cost of any edge can be changed or the edge can ..."
Abstract

Cited by 15 (3 self)
 Add to MetaCart
We describe algorithms for finding shortest paths and distances in outerplanar and planar digraphs that exploit the particular topology of the input graph. An important feature of our algorithms is that they can work in a dynamic environment, where the cost of any edge can be changed or the edge can be deleted. In the case of outerplanar digraphs, our data structures can be updated after any such change in only logarithmic time and a distance query is answered also in logarithmic time. In the case of planar digraphs, we give an interesting tradeoff between preprocessing, query and update times depending on the value of a certain topological parameter of the graph. Our results can be extended to nvertex digraphs of genus O(n 1\Gamma" ) for any " ? 0. Keywords: Shortest path, dynamic algorithm, planar digraph, outerplanar digraph. This work was partially supported by the NSF grant No. CCR9409191 and by the EU ESPRIT LTR Project No. 20244 (ALCOMIT). 1 Introduction 1.1 The prob...
Faster algorithms for incremental topological ordering
 In ICALP
, 2008
"... Abstract. We present two online algorithms for maintaining a topological order of a directed acyclic graph as arcs are added, and detecting a cycle when one is created. Our first algorithm takes O(m 1/2) amortized time per arc and our second algorithm takes O(n 2.5 /m) amortized time per arc, where ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
Abstract. We present two online algorithms for maintaining a topological order of a directed acyclic graph as arcs are added, and detecting a cycle when one is created. Our first algorithm takes O(m 1/2) amortized time per arc and our second algorithm takes O(n 2.5 /m) amortized time per arc, where n is the number of vertices and m is the total number of arcs. For sparse graphs, our O(m 1/2) bound improves the best previous bound by a factor of log n and is tight to within a constant factor for a natural class of algorithms that includes all the existing ones. Our main insight is that the twoway search method of previous algorithms does not require an ordered search, but can be more general, allowing us to avoid the use of heaps (priority queues). Instead, the deterministic version of our algorithm uses (approximate) medianfinding; the randomized version of our algorithm uses uniform random sampling. For dense graphs, our O(n 2.5 /m) bound improves the best previously published bound by a factor of n 1/4 and a recent bound obtained independently of our work by a factor of log n. Our main insight is that graph search is wasteful when the graph is dense and can be avoided by searching the topological order space instead. Our algorithms extend to the maintenance of strong components, in the same asymptotic time bounds. 1
HammockonEars Decomposition: A Technique for the Efficient Parallel Solution of Shortest Paths and Other Problems
 Theoretical Computer Science
, 1996
"... We show how to decompose efficiently in parallel any graph into a number, ~ fl, of outerplanar subgraphs (called hammocks) satisfying certain separator properties. Our work combines and extends the sequential hammock decomposition technique introduced by G. Frederickson and the parallel ear decom ..."
Abstract

Cited by 8 (5 self)
 Add to MetaCart
We show how to decompose efficiently in parallel any graph into a number, ~ fl, of outerplanar subgraphs (called hammocks) satisfying certain separator properties. Our work combines and extends the sequential hammock decomposition technique introduced by G. Frederickson and the parallel ear decomposition technique, thus we call it the hammockonears decomposition. We mention that hammockonears decomposition also draws from techniques in computational geometry and that an embedding of the graph does not need to be provided with the input. We achieve this decomposition in O(logn log log n) time using O(n + m) CREW PRAM processors, for an nvertex, medge graph or digraph. The hammockonears decomposition implies a general framework for solving graph problems efficiently. Its value is demonstrated by a variety of applications on a significant class of (di)graphs, namely that of sparse (di)graphs. This class consists of all (di)graphs which have a ~ fl between 1 and \Theta(n...
A DemandDriven Approach for Efficient Interprocedural Data Flow Analysis
 IBM RESEARCH
, 1996
"... ..."
Incremental Methods for FSM Traversal
 in Proc. Intl. Conf. on Computer Design
, 1995
"... Computing the set of reachablestates of a finite state machine, is an important component of many problems in the synthesis, and formal verification of digital systems. The process of design is usually iterative, and the designer may modify and recompute information many times, and reachability is c ..."
Abstract

Cited by 6 (2 self)
 Add to MetaCart
Computing the set of reachablestates of a finite state machine, is an important component of many problems in the synthesis, and formal verification of digital systems. The process of design is usually iterative, and the designer may modify and recompute information many times, and reachability is called each time the designer modifies the system, because current methods for reachability analysis are not incremental. Unfortunately, the representation of the reachable states that is currently used [1] in synthesis and verification, is inherently nonupdatable. We solve this problem by presenting alternate ways to represent the reachable set, and incremental algorithms that can update the new representation each time the designer changes the system. The incremental algorithms use the reachable set computed at a previous iteration, and information about the changes to the system to update it, rather than compute the reachable set from the beginning. This results in computational savings, ...
Incremental Methods for Formal Verification and Logic Synthesis
, 1996
"... Incremental Methods for Formal Verification and Logic Synthesis by Gitanjali Meher Swamy Doctor of Philosophy in EngineeringElectrical Engineering and Computer Sciences University of California, Berkeley Professor Robert K. Brayton, Chair IC design is an iterative process; the initial specification ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
Incremental Methods for Formal Verification and Logic Synthesis by Gitanjali Meher Swamy Doctor of Philosophy in EngineeringElectrical Engineering and Computer Sciences University of California, Berkeley Professor Robert K. Brayton, Chair IC design is an iterative process; the initial specification of a design is rarely complete and correct. The designer begins with a preliminary and usually incorrect sketch (possibly from a previous generation design), and iteratively refines and corrects it. Usually, refinements are small, and there is much common information between successive design iterations. The current genre of CAD tools do not take into account this iterative nature of design. For each change made to the design, the design is reverified and reoptimized without taking advantage of information from previous iterations. This leads to inefficient performance. In this thesis, we propose the paradigm of incremental algorithms for CAD. Incremental algorithms use information from a...
Incremental Formal Design Verification
 in Proc. Intl. Conf. on ComputerAided Design
, 1994
"... Language containment is a method for design verification that involves checking if the behavior of the system to be verified is a subset of the behavior of its specifications (properties or requirements). If this check fails, language containment returns a subset of `fair' states involved in behavio ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
Language containment is a method for design verification that involves checking if the behavior of the system to be verified is a subset of the behavior of its specifications (properties or requirements). If this check fails, language containment returns a subset of `fair' states involved in behavior that the system exhibits but the specification does not. Current techniques for language containment do not take advantage of the fact that the process of design is incremental; namely that the designer repeatedly modifies and reverifies his/her design. This results in unnecessary computation. We present a method that successively modifies the latest result of verification each time the design is modified. Our incremental algorithm translates changes made by the designer into an addition or subtraction of edges, states or constraints (on acceptable behavior) from the transition behavior or specification of the problem. Next, these changes are used to update the set of `fair' states previo...