1,006 research outputs found

    Efficient Enumeration of Induced Subtrees in a K-Degenerate Graph

    Full text link
    In this paper, we address the problem of enumerating all induced subtrees in an input k-degenerate graph, where an induced subtree is an acyclic and connected induced subgraph. A graph G = (V, E) is a k-degenerate graph if for any its induced subgraph has a vertex whose degree is less than or equal to k, and many real-world graphs have small degeneracies, or very close to small degeneracies. Although, the studies are on subgraphs enumeration, such as trees, paths, and matchings, but the problem addresses the subgraph enumeration, such as enumeration of subgraphs that are trees. Their induced subgraph versions have not been studied well. One of few example is for chordless paths and cycles. Our motivation is to reduce the time complexity close to O(1) for each solution. This type of optimal algorithms are proposed many subgraph classes such as trees, and spanning trees. Induced subtrees are fundamental object thus it should be studied deeply and there possibly exist some efficient algorithms. Our algorithm utilizes nice properties of k-degeneracy to state an effective amortized analysis. As a result, the time complexity is reduced to O(k) time per induced subtree. The problem is solved in constant time for each in planar graphs, as a corollary

    Maximum st-flow in directed planar graphs via shortest paths

    Full text link
    Minimum cuts have been closely related to shortest paths in planar graphs via planar duality - so long as the graphs are undirected. Even maximum flows are closely related to shortest paths for the same reason - so long as the source and the sink are on a common face. In this paper, we give a correspondence between maximum flows and shortest paths via duality in directed planar graphs with no constraints on the source and sink. We believe this a promising avenue for developing algorithms that are more practical than the current asymptotically best algorithms for maximum st-flow.Comment: 20 pages, 4 figures. Short version to be published in proceedings of IWOCA'1

    Efficient Retrieval and Ranking of Undesired Package Cycles in Large Software Systems

    Get PDF
    International audienceMany design guidelines state that a software system architecture should avoid cycles between its packages. Yet such cycles appear again and again in many programs. We believe that the existing approaches for cycle detection are too coarse to assist the developers to remove cycles from their programs. In this paper, we describe an efficient algorithm that performs a fine-grained analysis of the cycles among the packages of an application. In addition, we define a metric to rank cycles by their level of undesirability, prioritizing the cycles that seems the more undesired by the developers. Our approach is validated on two large and mature software systems in Java and Smalltalk

    Amortised resource analysis with separation logic

    Get PDF
    Type-based amortised resource analysis following Hofmann and Jost—where resources are associated with individual elements of data structures and doled out to the programmer under a linear typing discipline—have been successful in providing concrete resource bounds for functional programs, with good support for inference. In this work we translate the idea of amortised resource analysis to imperative languages by embedding a logic of resources, based on Bunched Implications, within Separation Logic. The Separation Logic component allows us to assert the presence and shape of mutable data structures on the heap, while the resource component allows us to state the resources associated with each member of the structure. We present the logic on a small imperative language with procedures and mutable heap, based on Java bytecode. We have formalised the logic within the Coq proof assistant and extracted a certified verification condition generator. We demonstrate the logic on some examples, including proving termination of in-place list reversal on lists with cyclic tails

    Effective Edge-Fault-Tolerant Single-Source Spanners via Best (or Good) Swap Edges

    Full text link
    Computing \emph{all best swap edges} (ABSE) of a spanning tree TT of a given nn-vertex and mm-edge undirected and weighted graph GG means to select, for each edge ee of TT, a corresponding non-tree edge ff, in such a way that the tree obtained by replacing ee with ff enjoys some optimality criterion (which is naturally defined according to some objective function originally addressed by TT). Solving efficiently an ABSE problem is by now a classic algorithmic issue, since it conveys a very successful way of coping with a (transient) \emph{edge failure} in tree-based communication networks: just replace the failing edge with its respective swap edge, so as that the connectivity is promptly reestablished by minimizing the rerouting and set-up costs. In this paper, we solve the ABSE problem for the case in which TT is a \emph{single-source shortest-path tree} of GG, and our two selected swap criteria aim to minimize either the \emph{maximum} or the \emph{average stretch} in the swap tree of all the paths emanating from the source. Having these criteria in mind, the obtained structures can then be reviewed as \emph{edge-fault-tolerant single-source spanners}. For them, we propose two efficient algorithms running in O(mn+n2logn)O(m n +n^2 \log n) and O(mnlogα(m,n))O(m n \log \alpha(m,n)) time, respectively, and we show that the guaranteed (either maximum or average, respectively) stretch factor is equal to 3, and this is tight. Moreover, for the maximum stretch, we also propose an almost linear O(mlogα(m,n))O(m \log \alpha(m,n)) time algorithm computing a set of \emph{good} swap edges, each of which will guarantee a relative approximation factor on the maximum stretch of 3/23/2 (tight) as opposed to that provided by the corresponding BSE. Surprisingly, no previous results were known for these two very natural swap problems.Comment: 15 pages, 4 figures, SIROCCO 201

    Complexity of Coloring Graphs without Paths and Cycles

    Full text link
    Let PtP_t and CC_\ell denote a path on tt vertices and a cycle on \ell vertices, respectively. In this paper we study the kk-coloring problem for (Pt,C)(P_t,C_\ell)-free graphs. Maffray and Morel, and Bruce, Hoang and Sawada, have proved that 3-colorability of P5P_5-free graphs has a finite forbidden induced subgraphs characterization, while Hoang, Moore, Recoskie, Sawada, and Vatshelle have shown that kk-colorability of P5P_5-free graphs for k4k \geq 4 does not. These authors have also shown, aided by a computer search, that 4-colorability of (P5,C5)(P_5,C_5)-free graphs does have a finite forbidden induced subgraph characterization. We prove that for any kk, the kk-colorability of (P6,C4)(P_6,C_4)-free graphs has a finite forbidden induced subgraph characterization. We provide the full lists of forbidden induced subgraphs for k=3k=3 and k=4k=4. As an application, we obtain certifying polynomial time algorithms for 3-coloring and 4-coloring (P6,C4)(P_6,C_4)-free graphs. (Polynomial time algorithms have been previously obtained by Golovach, Paulusma, and Song, but those algorithms are not certifying); To complement these results we show that in most other cases the kk-coloring problem for (Pt,C)(P_t,C_\ell)-free graphs is NP-complete. Specifically, for =5\ell=5 we show that kk-coloring is NP-complete for (Pt,C5)(P_t,C_5)-free graphs when k4k \ge 4 and t7t \ge 7; for 6\ell \ge 6 we show that kk-coloring is NP-complete for (Pt,C)(P_t,C_\ell)-free graphs when k5k \ge 5, t6t \ge 6; and additionally, for =7\ell=7, we show that kk-coloring is also NP-complete for (Pt,C7)(P_t,C_7)-free graphs if k=4k = 4 and t9t\ge 9. This is the first systematic study of the complexity of the kk-coloring problem for (Pt,C)(P_t,C_\ell)-free graphs. We almost completely classify the complexity for the cases when k4,4k \geq 4, \ell \geq 4, and identify the last three open cases

    Exact Algorithms for Maximum Independent Set

    Get PDF
    We show that the maximum independent set problem (MIS) on an nn-vertex graph can be solved in 1.1996nnO(1)1.1996^nn^{O(1)} time and polynomial space, which even is faster than Robson's 1.2109nnO(1)1.2109^{n}n^{O(1)}-time exponential-space algorithm published in 1986. We also obtain improved algorithms for MIS in graphs with maximum degree 6 and 7, which run in time of 1.1893nnO(1)1.1893^nn^{O(1)} and 1.1970nnO(1)1.1970^nn^{O(1)}, respectively. Our algorithms are obtained by using fast algorithms for MIS in low-degree graphs in a hierarchical way and making a careful analyses on the structure of bounded-degree graphs

    Bounded Search Tree Algorithms for Parameterized Cograph Deletion: Efficient Branching Rules by Exploiting Structures of Special Graph Classes

    Full text link
    Many fixed-parameter tractable algorithms using a bounded search tree have been repeatedly improved, often by describing a larger number of branching rules involving an increasingly complex case analysis. We introduce a novel and general search strategy that branches on the forbidden subgraphs of a graph class relaxation. By using the class of P4P_4-sparse graphs as the relaxed graph class, we obtain efficient bounded search tree algorithms for several parameterized deletion problems. We give the first non-trivial bounded search tree algorithms for the cograph edge-deletion problem and the trivially perfect edge-deletion problems. For the cograph vertex deletion problem, a refined analysis of the runtime of our simple bounded search algorithm gives a faster exponential factor than those algorithms designed with the help of complicated case distinctions and non-trivial running time analysis [21] and computer-aided branching rules [11].Comment: 23 pages. Accepted in Discrete Mathematics, Algorithms and Applications (DMAA

    On the Number of Synchronizing Colorings of Digraphs

    Full text link
    We deal with kk-out-regular directed multigraphs with loops (called simply \emph{digraphs}). The edges of such a digraph can be colored by elements of some fixed kk-element set in such a way that outgoing edges of every vertex have different colors. Such a coloring corresponds naturally to an automaton. The road coloring theorem states that every primitive digraph has a synchronizing coloring. In the present paper we study how many synchronizing colorings can exist for a digraph with nn vertices. We performed an extensive experimental investigation of digraphs with small number of vertices. This was done by using our dedicated algorithm exhaustively enumerating all small digraphs. We also present a series of digraphs whose fraction of synchronizing colorings is equal to 11/kd1-1/k^d, for every d1d \ge 1 and the number of vertices large enough. On the basis of our results we state several conjectures and open problems. In particular, we conjecture that 11/k1-1/k is the smallest possible fraction of synchronizing colorings, except for a single exceptional example on 6 vertices for k=2k=2.Comment: CIAA 2015. The final publication is available at http://link.springer.com/chapter/10.1007/978-3-319-22360-5_1

    Leader Election in Anonymous Rings: Franklin Goes Probabilistic

    Get PDF
    We present a probabilistic leader election algorithm for anonymous, bidirectional, asynchronous rings. It is based on an algorithm from Franklin, augmented with random identity selection, hop counters to detect identity clashes, and round numbers modulo 2. As a result, the algorithm is finite-state, so that various model checking techniques can be employed to verify its correctness, that is, eventually a unique leader is elected with probability one. We also sketch a formal correctness proof of the algorithm for rings with arbitrary size
    corecore