From omnitigs to macrotigs: a linear-time algorithm for safe walks – common to all closed arc-coverings of a directed graph

02/24/2020
by   Massimo Cairo, et al.
0

A partial solution to a problem is called safe if it appears in all solutions to the problem. Motivated by the genome assembly problem in bioinformatics, Tomescu and Medvedev (RECOMB 2016) posed the question of finding the safe walks present in all closed arc-covering walks, and gave a characterization of them (omnitigs). An O(nm)-time algorithm enumerating all maximal omnitigs on a directed graph with n nodes and m arcs was given by Cairo et al. (ACM Trans. Algorithms 2019), along with a family of graphs where the total length of maximal omnitigs is Θ(nm). In this paper we describe an O(m)-time algorithm to identify all maximal omnitigs, thanks to the discovery of a family of walks (macrotigs) with the property that all the non-trivial omnitigs are univocal extensions of subwalks of a macrotig. This has several consequences: (i) A linear output-sensitive algorithm enumerating all maximal omnitigs, that avoids to pay Θ(nm) when the output is smaller, whose existence was open. (ii) A compact representation of all maximal omnitigs, which allows, e.g., for O(m)-time computation of various statistics on them. (iii) A powerful tool for finding safe walks for related covering problems.

READ FULL TEXT
research
07/09/2020

Safety in s-t Paths, Trails and Walks

Given a directed graph G and a pair of nodes s and t, an s-t bridge of G...
research
02/12/2021

Safety of Flow Decompositions in DAGs

Network flows are one of the most studied combinatorial optimization pro...
research
10/14/2022

Cut paths and their remainder structure, with applications

In a strongly connected graph G = (V,E), a cut arc (also called strong b...
research
11/25/2020

Genome assembly, a universal theoretical framework: unifying and generalizing the safe and complete algorithms

Genome assembly is a fundamental problem in Bioinformatics, requiring to...
research
08/17/2022

Simplicity in Eulerian Circuits: Uniqueness and Safety

An Eulerian circuit in a directed graph is one of the most fundamental G...
research
12/04/2018

Topologically Trivial Closed Walks in Directed Surface Graphs

Let G be a directed graph with n vertices and m edges, embedded on a sur...
research
01/30/2023

A Safety Framework for Flow Decomposition Problems via Integer Linear Programming

Many important problems in Bioinformatics (e.g., assembly or multi-assem...

Please sign up or login with your details

Forgot password? Click here to reset