English

A Linear Time Algorithm for Finding Three Edge-Disjoint Paths in Eulerian Networks

Combinatorics 2010-03-17 v1 Data Structures and Algorithms

Abstract

Consider an undirected graph G=(VG,EG)G = (VG, EG) and a set of six \emph{terminals} T={s1,s2,s3,t1,t2,t3}VGT = \set{s_1, s_2, s_3, t_1, t_2, t_3} \subseteq VG. The goal is to find a collection \calP\calP of three edge-disjoint paths P1P_1, P2P_2, and P3P_3, where PiP_i connects nodes sis_i and tit_i (i=1,2,3i = 1, 2, 3). Results obtained by Robertson and Seymour by graph minor techniques imply a polynomial time solvability of this problem. The time bound of their algorithm is O(m3)O(m^3) (hereinafter we assume n:=\absVGn := \abs{VG}, m:=\absEGm := \abs{EG}, n=O(m)n = O(m)). In this paper we consider a special, \emph{Eulerian} case of GG and TT. Namely, construct the \emph{demand graph} H=(VG,{s1t1,s2t2,s3t3})H = (VG, \set{s_1t_1, s_2t_2, s_3t_3}). The edges of HH correspond to the desired paths in \calP\calP. In the Eulerian case the degrees of all nodes in the (multi-) graph G+HG + H (=(VG,EGEH) = (VG, EG \cup EH)) are even. Schrijver showed that, under the assumption of Eulerianess, cut conditions provide a criterion for the existence of \calP\calP. This, in particular, implies that checking for existence of \calP\calP can be done in O(m)O(m) time. Our result is a combinatorial O(m)O(m)-time algorithm that constructs \calP\calP (if the latter exists).

Keywords

Cite

@article{arxiv.1003.3085,
  title  = {A Linear Time Algorithm for Finding Three Edge-Disjoint Paths in Eulerian Networks},
  author = {Maxim Babenko and Ignat Kolesnichenko and Ilya Razenshteyn},
  journal= {arXiv preprint arXiv:1003.3085},
  year   = {2010}
}

Comments

SOFSEM 2010

R2 v1 2026-06-21T14:58:19.735Z