148 research outputs found

    Determinant Sums for Undirected Hamiltonicity

    Full text link
    We present a Monte Carlo algorithm for Hamiltonicity detection in an nn-vertex undirected graph running in O(1.657n)O^*(1.657^{n}) time. To the best of our knowledge, this is the first superpolynomial improvement on the worst case runtime for the problem since the O(2n)O^*(2^n) bound established for TSP almost fifty years ago (Bellman 1962, Held and Karp 1962). It answers in part the first open problem in Woeginger's 2003 survey on exact algorithms for NP-hard problems. For bipartite graphs, we improve the bound to O(1.414n)O^*(1.414^{n}) time. Both the bipartite and the general algorithm can be implemented to use space polynomial in nn. We combine several recently resurrected ideas to get the results. Our main technical contribution is a new reduction inspired by the algebraic sieving method for kk-Path (Koutis ICALP 2008, Williams IPL 2009). We introduce the Labeled Cycle Cover Sum in which we are set to count weighted arc labeled cycle covers over a finite field of characteristic two. We reduce Hamiltonicity to Labeled Cycle Cover Sum and apply the determinant summation technique for Exact Set Covers (Bj\"orklund STACS 2010) to evaluate it.Comment: To appear at IEEE FOCS 201

    Directed Hamiltonicity and Out-Branchings via Generalized Laplacians

    Get PDF
    We are motivated by a tantalizing open question in exact algorithms: can we detect whether an nn-vertex directed graph GG has a Hamiltonian cycle in time significantly less than 2n2^n? We present new randomized algorithms that improve upon several previous works: 1. We show that for any constant 0<λ<10<\lambda<1 and prime pp we can count the Hamiltonian cycles modulo p(1λ)n3pp^{\lfloor (1-\lambda)\frac{n}{3p}\rfloor} in expected time less than cnc^n for a constant c<2c<2 that depends only on pp and λ\lambda. Such an algorithm was previously known only for the case of counting modulo two [Bj\"orklund and Husfeldt, FOCS 2013]. 2. We show that we can detect a Hamiltonian cycle in O(3nα(G))O^*(3^{n-\alpha(G)}) time and polynomial space, where α(G)\alpha(G) is the size of the maximum independent set in GG. In particular, this yields an O(3n/2)O^*(3^{n/2}) time algorithm for bipartite directed graphs, which is faster than the exponential-space algorithm in [Cygan et al., STOC 2013]. Our algorithms are based on the algebraic combinatorics of "incidence assignments" that we can capture through evaluation of determinants of Laplacian-like matrices, inspired by the Matrix--Tree Theorem for directed graphs. In addition to the novel algorithms for directed Hamiltonicity, we use the Matrix--Tree Theorem to derive simple algebraic algorithms for detecting out-branchings. Specifically, we give an O(2k)O^*(2^k)-time randomized algorithm for detecting out-branchings with at least kk internal vertices, improving upon the algorithms of [Zehavi, ESA 2015] and [Bj\"orklund et al., ICALP 2015]. We also present an algebraic algorithm for the directed kk-Leaf problem, based on a non-standard monomial detection problem

    Exploiting Sparsity for Bipartite Hamiltonicity

    Get PDF

    An Asymptotically Fast Polynomial Space Algorithm for Hamiltonicity Detection in Sparse Directed Graphs

    Get PDF

    A Simple Algorithm for Hamiltonicity

    Full text link
    We develop a new algebraic technique that solves the following problem: Given a black box that contains an arithmetic circuit ff over a field of characteristic 22 of degree~dd. Decide whether ff, expressed as an equivalent multivariate polynomial, contains a multilinear monomial of degree dd. This problem was solved by Williams \cite{W} and Bj\"orklund et. al. \cite{BHKK} for a white box (the circuit is given as an input) that contains arithmetic circuit. We show a simple black box algorithm that solves the problem with the same time complexity. This gives a simple randomized algorithm for the simple kk-path problem for directed graphs of the same time complexity\footnote{O(f(k))O^*(f(k)) is O(poly(n)f(k))O(poly(n)\cdot f(k))} O(2k)O^*(2^k) as in \cite{W} and with reusing the same ideas from \cite{BHKK} with the above gives another algorithm (probably not simpler) for undirected graphs of the same time complexity O(1.657k)O^*(1.657^k) as in \cite{B10,BHKK}

    Spotting Trees with Few Leaves

    Full text link
    We show two results related to the Hamiltonicity and kk-Path algorithms in undirected graphs by Bj\"orklund [FOCS'10], and Bj\"orklund et al., [arXiv'10]. First, we demonstrate that the technique used can be generalized to finding some kk-vertex tree with ll leaves in an nn-vertex undirected graph in O(1.657k2l/2)O^*(1.657^k2^{l/2}) time. It can be applied as a subroutine to solve the kk-Internal Spanning Tree (kk-IST) problem in O(min(3.455k,1.946n))O^*(\min(3.455^k, 1.946^n)) time using polynomial space, improving upon previous algorithms for this problem. In particular, for the first time we break the natural barrier of O(2n)O^*(2^n). Second, we show that the iterated random bipartition employed by the algorithm can be improved whenever the host graph admits a vertex coloring with few colors; it can be an ordinary proper vertex coloring, a fractional vertex coloring, or a vector coloring. In effect, we show improved bounds for kk-Path and Hamiltonicity in any graph of maximum degree Δ=4,,12\Delta=4,\ldots,12 or with vector chromatic number at most 8

    The Set Cover Conjecture and Subgraph Isomorphism with a Tree Pattern

    Get PDF
    In the Set Cover problem, the input is a ground set of n elements and a collection of m sets, and the goal is to find the smallest sub-collection of sets whose union is the entire ground set. The fastest algorithm known runs in time O(mn2^n) [Fomin et al., WG 2004], and the Set Cover Conjecture (SeCoCo) [Cygan et al., TALG 2016] asserts that for every fixed epsilon>0, no algorithm can solve Set Cover in time 2^{(1-epsilon)n} poly(m), even if set sizes are bounded by Delta=Delta(epsilon). We show strong connections between this problem and kTree, a special case of Subgraph Isomorphism where the input is an n-node graph G and a k-node tree T, and the goal is to determine whether G has a subgraph isomorphic to T. First, we propose a weaker conjecture Log-SeCoCo, that allows input sets of size Delta=O(1/epsilon * log n), and show that an algorithm breaking Log-SeCoCo would imply a faster algorithm than the currently known 2^n poly(n)-time algorithm [Koutis and Williams, TALG 2016] for Directed nTree, which is kTree with k=n and arbitrary directions to the edges of G and T. This would also improve the running time for Directed Hamiltonicity, for which no algorithm significantly faster than 2^n poly(n) is known despite extensive research. Second, we prove that if p-Partial Cover, a parameterized version of Set Cover that requires covering at least p elements, cannot be solved significantly faster than 2^n poly(m) (an assumption even weaker than Log-SeCoCo) then kTree cannot be computed significantly faster than 2^k poly(n), the running time of the Koutis and Williams\u27 algorithm
    corecore