Results 1  10
of
34
A completeness theorem for Kleene algebras and the algebra of regular events
 Information and Computation
, 1994
"... We givea nitary axiomatization of the algebra of regular events involving only equations and equational implications. Unlike Salomaa's axiomatizations, the axiomatization given here is sound for all interpretations over Kleene algebras. 1 ..."
Abstract

Cited by 186 (22 self)
 Add to MetaCart
We givea nitary axiomatization of the algebra of regular events involving only equations and equational implications. Unlike Salomaa's axiomatizations, the axiomatization given here is sound for all interpretations over Kleene algebras. 1
The maximum edge biclique problem is NPcomplete
 Discrete Applied Mathematics
, 2000
"... We prove that the maximum edge biclique problem in bipartite graphs is NPcomplete. A biclique in a bipartite graph is a vertex induced subgraph which is complete. The problem of finding a biclique with a maximum number of vertices is known to be solvable in polynomial time but the complexity o ..."
Abstract

Cited by 88 (0 self)
 Add to MetaCart
We prove that the maximum edge biclique problem in bipartite graphs is NPcomplete. A biclique in a bipartite graph is a vertex induced subgraph which is complete. The problem of finding a biclique with a maximum number of vertices is known to be solvable in polynomial time but the complexity of finding a biclique with a maximum number of edges was still undecided. 1 Introduction Let G =(V,E) be a graph with vertex set V and edge set E.Apairof two disjoint subsets A and B of V is called a biclique if {a, b}#E for all a # A and b # B.Thustheedges{a, b} form a complete bipartite subgraph of G (which is not necessarily an induced subgraph if G is not bipartite). A biclique {A, B} clearly has A + B vertices and A#B edges. In this note we restrict ourselves to case that G is bipartite. The two colour classes of G will be denoted by V 1 and V 2 ,soV = V 1 # V 2 . Already in the book of Garey and Johnson [2] (problem GT24) the complexity of deciding whether or not a bipartit...
Graph Layout through the VCG Tool
, 1994
"... The VCG tool allows the visualization of graphs that occur typically as data structures in programs. We describe the functionality of the VCG tool, its layout algorithm and its heuristics. Our main emphasis in the selection of methods is to achieve a very good performance for the layout of large gra ..."
Abstract

Cited by 53 (0 self)
 Add to MetaCart
The VCG tool allows the visualization of graphs that occur typically as data structures in programs. We describe the functionality of the VCG tool, its layout algorithm and its heuristics. Our main emphasis in the selection of methods is to achieve a very good performance for the layout of large graphs. The tool supports the partitioning of edges and nodes into edge classes and nested subgraphs, the folding of regions, and the management of priorities of edges. The algorithm produces good drawings and runs reasonably fast even on very large graphs.
Generation of efficient interprocedural analyzers with PAG
 In Proceedings of the Second INternational Symposium on Static Analysis
, 1995
"... . To produce high quality code, modern compilers use global optimization algorithms based on abstract interpretation. These algorithms are rather complex; their implementation is therefore a nontrivial task and errorprone. However, since they are based on a common theory, they have large similar ..."
Abstract

Cited by 48 (7 self)
 Add to MetaCart
. To produce high quality code, modern compilers use global optimization algorithms based on abstract interpretation. These algorithms are rather complex; their implementation is therefore a nontrivial task and errorprone. However, since they are based on a common theory, they have large similar parts. We conclude that analyzer writing better should be replaced with analyzer generation. We present the tool PAG that has a high level functional input language to specify data flow analyses. It offers the specification of even recursive data structures and is therefore not limited to bit vector problems. PAG generates efficient analyzers which can be easily integrated in existing compilers. The analyzers are interprocedural, they can handle recursive procedures with local variables and higher order functions. PAG has successfully been tested by generating several analyzers (e.g. alias analysis, constant propagation) for an industrial quality ANSIC and Fortran90 compiler. Keywords: d...
On Kleene Algebras and Closed Semirings
, 1990
"... Kleene algebras are an important class of algebraic structures that arise in diverse areas of computer science: program logic and semantics, relational algebra, automata theory, and the design and analysis of algorithms. The literature contains several inequivalent definitions of Kleene algebras and ..."
Abstract

Cited by 40 (6 self)
 Add to MetaCart
Kleene algebras are an important class of algebraic structures that arise in diverse areas of computer science: program logic and semantics, relational algebra, automata theory, and the design and analysis of algorithms. The literature contains several inequivalent definitions of Kleene algebras and related algebraic structures [2, 14, 15, 5, 6, 1, 10, 7]. In this paper we establish some new relationships among these structures. Our main results are: There is a Kleene algebra in the sense of [6] that is not *continuous. The categories of *continuous Kleene algebras [5, 6], closed semirings [1, 10] and Salgebras [2] are strongly related by adjunctions. The axioms of Kleene algebra in the sense of [6] are not complete for the universal Horn theory of the regular events. This refutes a conjecture of Conway [2, p. 103]. Righthanded Kleene algebras are not necessarily lefthanded Kleene algebras. This verifies a weaker version of a conjecture of Pratt [15].
Pathbased depthfirst search for strong and biconnected components
 Information Processing Letters
, 2000
"... Key words: Graph, depthfirst search, strongly connected component, biconnected component, stack. ..."
Abstract

Cited by 30 (0 self)
 Add to MetaCart
Key words: Graph, depthfirst search, strongly connected component, biconnected component, stack.
Typed Kleene algebra
, 1998
"... In previous work we havefound it necessary to argue that certain theorems of Kleene algebra hold even when the symbols are interpreted as nonsquare matrices. In this note we de ne and investigate typed Kleene algebra, a typed version of Kleene algebra in which objects have types s! t. Although nonsq ..."
Abstract

Cited by 16 (4 self)
 Add to MetaCart
In previous work we havefound it necessary to argue that certain theorems of Kleene algebra hold even when the symbols are interpreted as nonsquare matrices. In this note we de ne and investigate typed Kleene algebra, a typed version of Kleene algebra in which objects have types s! t. Although nonsquare matrices are the principal motivation, there are many other useful interpretations: traces, binary relations, Kleene algebra with tests. We give a set of typing rules and show that every expression has a unique most general typing (mgt). Then we prove the following metatheorem that incorporates the abovementioned results for nonsquare matrices as special cases. Call an expression 1free if it contains only the Kleene algebra operators (binary) +, (unary) +, 0, and,but no occurrence of 1 or. Then every universal 1free formula that is a theorem of Kleene algebra is also a theorem of typed Kleene algebra under its most general typing. The metatheorem is false without the restriction to 1free formulas.
Detecting Unsafe Error Recovery Schedules
 IEEE Transactions on Software Engineering
, 1996
"... This paper presents a mechanism for modeling timing, precedence, and dataconsistency constraints on concurrently executing processes. The model allows durations and intervals between events to be specified. An algorithm is provided to detect schedules which may be unsafe with respect to the constra ..."
Abstract

Cited by 10 (7 self)
 Add to MetaCart
This paper presents a mechanism for modeling timing, precedence, and dataconsistency constraints on concurrently executing processes. The model allows durations and intervals between events to be specified. An algorithm is provided to detect schedules which may be unsafe with respect to the constraints. This work, motivated by the design and validation of autonomous errorrecovery strategies on the Galileo spacecraft, appears to be applicable to a variety of asynchronous realtime systems. I. INTRODUCTION This paper presents a technique for detecting unsafe schedules involving the asynchronous software processes responsible for error recovery onboard spacecraft. These autonomous processes are constrained at the event level by timing, precedence, and dataconsistency rules. A schedule (ordering of events) that violates these constraints can jeopardize the spacecraft and is labeled unsafe. Safety involves those correctness properties required by the static portions of the specification...
On Action Algebras
 Logic and Information Flow
, 1993
"... Action algebras have been proposed by Pratt [22] as an alternative to Kleene algebras [8, 9]. Their chief advantage over Kleene algebras is that they form a finitelybased equational variety, so the essential properties of (iteration) are captured purely equationally. However, unlike Kleene algeb ..."
Abstract

Cited by 10 (1 self)
 Add to MetaCart
Action algebras have been proposed by Pratt [22] as an alternative to Kleene algebras [8, 9]. Their chief advantage over Kleene algebras is that they form a finitelybased equational variety, so the essential properties of (iteration) are captured purely equationally. However, unlike Kleene algebras, they are not closed under the formation of matrices, which renders them inapplicable in certain constructions in automata theory and the design and analysis of algorithms. In this paper we consider a class of action algebras called action lattices. An action lattice is simply an action algebra that forms a lattice under its natural order. Action lattices combine the best features of Kleene algebras and action algebras: like action algebras, they form a finitelybased equational variety; like Kleene algebras, they are closed under the formation of matrices. Moreover, they form the largest subvariety of action algebras for which this is true. All common examples of Kleene algebras appeari...
Graph Algorithms = Iteration + Data Structures?  The Structure of Graph Algorithms and a Corresponding Style of Programming
 of Programming, 18th Int. Workshop on GraphTheoretic Concepts in Computer Science, LNCS 657
, 1992
"... We encourage a specific view of graph algorithms, which can be paraphrased by "iterate over the graph elements in a specific order and perform computations in each step". Data structures will be used to define the processing order, and we will introduce recursive mapping/array definitions as a vehic ..."
Abstract

Cited by 9 (5 self)
 Add to MetaCart
We encourage a specific view of graph algorithms, which can be paraphrased by "iterate over the graph elements in a specific order and perform computations in each step". Data structures will be used to define the processing order, and we will introduce recursive mapping/array definitions as a vehicle for specifying the desired computations. Being concerned with the problem of implementing graph algorithms, we outline the extension of a functional programming language by graph types and operations. In particular, we explicate an exploration operator that essentially embodies the proposed view of algorithms. Fortunately, the resulting specifications of algorithms, in addition to being compact and declarative, are expected to have an almost as efficient implementation as their imperative counterparts. 1 Introduction Looking at graph algorithms, we observe that many of them have a very similar structure, namely iterating over nodes or edges and thereby performing computations. Since grap...