This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

11institutetext: Computer Science Institute, Charles University, Prague, Czech Republic
11email: {babak,samal}@iuuk.mff.cuni.cz

On the time complexity of finding a well-spread perfect matching in bridgeless cubic graphsthanks: Supported by the project GAUK182623 of the Charles University Grant Agency and by grant 25-16627SS of the Czech Science Foundation.

Babak Ghanbari    Robert Šámal
Abstract

We present an algorithm for finding a perfect matching in a 33-edge-connected cubic graph that intersects every 33-edge cut in exactly one edge. Specifically, we propose an algorithm with a time complexity of O(nlog4n)O(n\log^{4}n), which significantly improves upon the previously known O(n3)O(n^{3})-time algorithms for the same problem. The technique we use for the improvement is efficient use of cactus model of 3-edge cuts. As an application, we use our algorithm to compute embeddings of 33-edge-connected cubic graphs with limited number of singular edges (i.e., edges that are twice in the boundary of one face) in O(nlog4n)O(n\log^{4}n) time; this application contributes to the study of the well-known Cycle Double Cover conjecture.

Keywords:
Algorithm Perfect matching Cut representation Embedding

1 Introduction

It is well known that every bridgeless cubic graph admits a perfect matching [Pet91]. Using Edmonds’ blossom algorithm, a maximum matching can be found in polynomial time. Gabow [Gab90] demonstrated that the weighted matching problem on general graphs can be solved in time O(n(m+nlogn))O(n(m+n\log n)).

Consequently, the minimum weight perfect matching problem for bridgeless cubic graphs can be solved in O(n2logn)O(n^{2}\log n) time. Diks and Stańczyk [DS10] proposed an improved algorithm for finding perfect matchings in bridgeless cubic graphs with time complexity of O(nlog2n)O(n\log^{2}n).

In this paper we study the complexity of finding a perfect matching MM in a bridgeless cubic graph such that in every 3-edge cut MM contains exactly one edge. By parity, MM can contain one or three edges in a 3-edge cut; so our condition says no 3-edge cut is contained in MM. We shortly express this by saying MM is well spread.

Kaiser et al. [KKN06] showed that a wells spread perfect matching exists in every bridgeless cubic graph (and went on to use this to find how much of the graph can be covered by two, three, etc. perfect matchings). Their proof uses Edmonds perfect matching polytope (vector (1/3,1/3,)(1/3,1/3,\dots) is a fractional perfect matching, thus it is a convex combination of perfect matchings – each of them is well spread). This, however, doesn’t yield an efficient algorithm.

In [BIT13], Boyd et al. focus on developing algorithms for finding 22-factors in bridgeless cubic graphs that cover specific edge-cuts, which brings these 22-factors closer to Hamiltonian cycles. They provide an efficient algorithm that finds a minimum-weight 22-factor that covers all 33-edge cuts in weighted bridgeless cubic graphs (in contrast with finding a Hamiltonian cycle, which is computationally hard). They also provide both a polyhedral description of such 22-factors and of their complements – well spread perfect matchings. This is the first known polynomial-time algorithm for this problem, with a time complexity of O(n3)O(n^{3}), where nn is the number of vertices. In this work, we improve this result for 33-edge-connected cubic graphs using Algorithm 1 with time complexity O(nlog4n)O(n\log^{4}n).

Boyd et al. find a “peripheral 3-edge-cut” (a cut such that one side of it is internally 4-edge-connected) and then use recursion. We save computation by using the cactus model, also called a tree of cuts. In this tree it is easy to find the peripheral cut and also to update the tree when we contract a part of the cut. This leads to much improved time complexity, although only for 3-edge-connected graphs.

We then proceed to apply this result to the study of the well-known Cycle Double Cover (or CDC) Conjecture [Sze73, Sey79]. In the language of graph embedding, CDC conjecture is equivalent to every bridgeless cubic graph having a surface embedding with no singular edges (i.e., with no edge that is on the boundary of one face twice). As an application of our work, for a 33-edge-connected cubic graph we can find embeddings with a bounded number of singular edges in time O(nlog4n)O(n\log^{4}n).

The structure of the paper is as follows. In the next section, we introduce the necessary definitions and concepts. In Section 3, we discuss the cactus model, a key component in deriving our results. Section 4 presents our main result, an efficient algorithm to find the well-spread perfect matching. Finally, in Section 5, we apply our algorithm to get results about the well-known CDC conjecture.

2 Preliminaries

Let G=(V,E)G=(V,E) be a graph with vertex set VV and edge set EE. A graph in which all vertices have degree 33 is called cubic. A cycle is a connected 22-regular graph. A bridge in a graph GG is an edge whose removal increases the number of components of GG. Equivalently, a bridge is an edge that is not contained in any cycles of GG. A graph is bridgeless if it contains no bridge. An edge cut in a graph is a set of edges whose removal increases the number of connected components of the graph. An edge cut CC in GG is called a non-trivial cut if every component of GCG-C has at least two vertices. Otherwise it is called trivial. A kk-edge-cut in a graph is an edge cut that contains exactly kk edges. A connected graph is kk-edge-connected if it remains connected whenever fewer than kk edges are removed. A graph is cyclically kk-edge-connected, if at least kk edges must be removed to disconnect it into two components such that each component contains a cycle. We say that a subset FEF\subset E covers an edge-cut DD if FDF\cap D\neq\emptyset. For a subset SES\subseteq E, G/SG/S is the graph obtained from GG by contracting all the edges in SS. Note that we keep multiple edges and only remove loops in such contraction.

Petersen’s theorem [Pet91] states that every bridgeless cubic graph contains a perfect matching. Schönberger [Sch35] proved the following strengthened form of Petersen’s theorem.

Theorem 2.1 ([Sch35])

Let G=(V,E)G=(V,E) be a bridgeless cubic graph with specified edge eEe^{*}\in E. Then there exists a perfect matching of G that contains ee^{*}.

A perfect matching containing a specified edge ee^{*} in a bridgeless cubic graph can be found in O(nlog4n)O(n\log^{4}n) time [BBDL01].

A graph GG is embedded in a surface SS if the vertices of GG are distinct elements of SS and every edge of GG is a simple arc connecting in SS the two vertices which it joins in GG, such that its interior is disjoint from other edges and vertices. An embedding of a graph GG in SS is an isomorphism of GG with a graph GG^{\prime} embedded in SS.

Let GG be a graph that is cellularly embedded in a surface SS, that is, every face is homeomorphic to an open disk. Let π={πv|vV(G)}\pi=\{\pi_{v}|v\in V(G)\} where πv\pi_{v} is the cyclic permutation of the edges incident with the vertex vv such that πv(e)\pi_{v}(e) is the successor of ee in the clockwise ordering around vv. The cyclic permutation πv\pi_{v} is called the local rotation at vv, and the set π\pi is the rotation system of the given embedding of GG in SS.

Let GG be a connected multigraph. A combinatorial embedding of GG is a pair (π,λ)(\pi,\lambda) where π={πv|vV(G)}\pi=\{\pi_{v}|v\in V(G)\} is a rotation system, and λ\lambda is a signature mapping which assigns to each edge eE(G)e\in E(G) a sign λ(e){1,1}\lambda(e)\in\{-1,1\}. If ee is an edge incident with vV(G)v\in V(G), then the cyclic sequence e,πv(e),πv2(e),e,\pi_{v}(e),\pi_{v}^{2}(e),\dots is called the π\pi-clockwise ordering around vv (or the local rotation at vv). Given an embedding (π,λ)(\pi,\lambda) of GG we say that GG is (π,λ)(\pi,\lambda)-embedded. It is known that the combinatorial embedding uniquely determines a cellular embedding to some surface, up to homeomorphism [MT01, Theorems 3.2.4 and 3.3.1].

A closed walk is a sequence (v0,e0,v1,(v_{0},e_{0},v_{1}, e1,,en1,vn)e_{1},\dots,e_{n-1},v_{n}) where v0=vnv_{0}=v_{n} and for every ii, ei={vi,vi+1}e_{i}=\{v_{i},v_{i+1}\}. We say that a collection of closed walks C1,,CnC_{1},\dots,C_{n} forms a partial circuit double cover (or partial CDC) if each edge is covered at most once by one of CiC_{i}’s or exactly twice by two different CiC_{i} and CjC_{j}, and for every vertex vv and edges ee and ff where ef={v}e\cap f=\{v\}, there exists at most one closed walk CiC_{i} such that {e,f}E(Ci)\{e,f\}\subseteq E(C_{i}).

3 The cactus model

Here we follow the notations and definition of [NI08]. A general way to represent a subset of cuts within a graph GG involves constructing a cactus representation (T,φ)(T,\varphi). In this representation, TT is a graph, and φ\varphi is a function mapping vertices from V(G)V(G) to V(T)V(T). The cactus representation (or the cactus model) was introduced in [DKL76]. It was further utilized in [Gab91, Din93]. This model plays a crucial role in understanding both edge connectivity and graph rigidity problems.

Definition 1

Let GG be a graph. A pair (T,φ)(T,\varphi) with φ:V(G)V(T)\varphi:V(G)\to V(T) is called a cactus representation (or cactus model) for graph GG if it meets the following criteria:

  1. 1.

    For an arbitrary minimum cut {S,V(T)S}C(T)\{S,V(T)-S\}\in C(T), the cut {X,X¯}\{X,\bar{X}\} in GG defined by X={uV(G)φ(u)S}X=\{u\in V(G)\mid\varphi(u)\in S\}, and X¯={uVφ(u)V(T)S}\bar{X}=\{u\in V\mid\varphi(u)\in V(T)-S\} is a minimum cut in GG.

  2. 2.

    Conversely, for every minimum cut {X,X¯}\{X,\bar{X}\} in GG, there exists a minimum cut {S,V(T)S}C(T)\{S,V(T)-S\}\in C(T) such that X={uVφ(u)S}X=\{u\in V\mid\varphi(u)\in S\}, and X¯={uVφ(u)V(T)S}.\bar{X}=\{u\in V\mid\varphi(u)\in V(T)-S\}.

In this context, we use vertex when referring to elements of V(G)V(G) and node for elements of V(T)V(T). The set V(T)V(T) may include a node xx that does not correspond to any vertex vV(G)v\in V(G) with φ(v)=x\varphi(v)=x; such a node is referred to as an empty node. We use C(T)C(T) for the set of all minimum cuts in TT.

It was shown in [DKL76] that every GG has a cactus representation using a cactus graph – a multigraph where every edge is exactly one cycle. A special case of such graph is a tree with every edge doubled. It is known that when the connectivity is odd, the cactus representation is of this special type. In this case we will just call it a tree of cuts (or cactus tree). For a 33-edge-connected cubic graph GG, the vertices of the graph GG correspond to the leaf nodes of the cactus tree TT and all the interior nodes of TT are empty nodes (see Fig. 1). We will also use the following estimate for the size of TT.

Refer to caption
Figure 1: A 3-edge-connected cubic graph GG and its cactus tree TT. Small white circles represents empty vertices. Dashed lines represent a non-trivial 33-edge cut in GG and its equivalent edge in TT.
Lemma 1 ([Din93])

Let GG be a 33-edge-connected cubic graph with nn vertices and let TT be its cactus tree. Then

|E(T)|2n3.|E(T)|\leq 2n-3.

4 Well spread perfect matchings in bridgeless cubic graphs

In this section, we present an algorithm that finds a perfect matching in a 33-edge-connected cubic graph that intersects all 33-edge cuts in exactly one edge and is substantially faster than the algorithm introduced by Boyd et al. [BIT13]. We first explain the underlying technique. Let GG be a graph with a 3-edge cut {A,A¯}\{A,{\bar{A}}\}; that is |δ(A)|=3|\delta(A)|=3. We let G1=G/AG_{1}=G/A (all vertices in AA are contracted to a single vertex aa) and G2=G/A¯G_{2}=G/{\bar{A}} (with a new vertex a¯{\bar{a}}). A well-spread matching MM in GG contains exactly one edge of δ(A)\delta(A), thus it gives us a perfect matching M1M_{1} in G1G_{1} and M2M_{2} in G2G_{2}. As edges out of aa in G1G_{1} and out of a¯{\bar{a}} in G2G_{2} are in natural correspondence with edges of δ(A)\delta(A), we will identify them and say that M1M_{1} and M2M_{2} agree on δ(A)\delta(A). For our algorithm the following is crucial.

Theorem 4.1

Let GG, AA, G1G_{1} and G2G_{2} be as above. Given a well-spread perfect matching M1M_{1} in G1G_{1} and M2M_{2} in G2G_{2} that agree on the cut δ(A)\delta(A), the union M1M2M_{1}\cup M_{2} is a well-spread perfect matching in GG.

Proof

The fact that M1M2M_{1}\cup M_{2} is a perfect matching is clear as these matchings agree on δ(A)\delta(A). The fact that MM is well-spread follows from the fact that 3-edge cuts in a 3-edge-connected graph do not cross, see [BIT13] for details. ∎

Boyd et al. [BIT13] use the above theorem together with repeated finding of a “peripheral 3-edge-cut” {A,A¯}\{A,{\bar{A}}\}: one where G/AG/A is internally 4-edge-connected. We refine their approach by utilizing (and updating) the model for all 3-edge cuts that will allow us to find peripheral cuts quickly. Also, we will use the model of the cuts to quickly decompose the graph GG in G/AG/A and G/A¯G/{\bar{A}} and then combine them back.

We will also use the following information about structure of cuts in G1G_{1} and G2G_{2}.

Theorem 4.2

Let GG, AA, G1G_{1} and G2G_{2} be as above. Let (φ,T)(\varphi,T) be the cactus tree for GG. Let e=x1x2e=x_{1}x_{2} be the edge of TT corresponding to AA; that is the components of TeT-e are T1T^{\prime}_{1}, T2T^{\prime}_{2}, xiV(Ti)x_{i}\in V(T^{\prime}_{i}) and A=φ1(V(T2))A=\varphi^{-1}(V(T^{\prime}_{2})). Put Ti=Ti+eT_{i}=T^{\prime}_{i}+e for i=1,2i=1,2. Define φ1\varphi_{1} as a restriction of φ\varphi to A¯{\bar{A}} and put φ1(a)=x1\varphi_{1}(a)=x_{1}. We define φ2\varphi_{2} symmetrically.

Then (φi,Ti)(\varphi_{i},T_{i}) is the cactus tree representation of 3-edge cuts in GiG_{i} (for i=1,2i=1,2).

The proof follows the same idea as that of Theorem 4.1: minimum odd edge-cuts do not cross. We omit the details in this extended abstract.

In our application we have a 3-regular 3-edge-connected graph, so all vertices are mapped to leaf nodes of the cactus tree and nontrivial 3-cuts correspond to edges that are not incident with a leaf. In particular, when the cactus tree is a star there are no nontrivial 3-cuts and we may simply find any perfect matching. In a sense, the purpose of our algorithm is to efficiently combine matchings coming from these “special cases” of internally 4-edge-connected graphs.

To this end, we pick root in the cut model TT. Let exe_{x} be the edge connecting xx to its parent. We let CxC_{x} be the three edges in the cut corresponding to exe_{x}. We let AxA_{x} be the vertices of GG that are mapped by φ\varphi to descendants of xx (including xx), so that Cx=δ(Ax)C_{x}=\delta(A_{x}).

We do not use this definition directly, instead we recursively update AxA_{x}, CxC_{x} while traversing the tree. We can compute AxA_{x} as a union of AyA_{y} for all children yy of xx. We can compute CxC_{x} by going over CyC_{y} for all children yy of xx, excluding edges that lead withing AxA_{x} (between AyA_{y} and AyA_{y^{\prime}} for two children of xx). To do this efficiently we utilize the Union-Find algorithm.

In a typical step of decomposition part of the algorithm, we use Theorem 4.2, with the new graphs being GxG_{x} (which we store for later) and updated version of GG. To illustrate the algorithm, in Figure 2 we show one step including the updated trees. We see that TxT_{x} is a star – which means GxG_{x} is internally 4-edge-connected. Updated TT simply removes children of xx. However, we actually do not need to update TT and compute TxT_{x} in the algorithm.

In a typical step of assembling part of the algorithm, we use Theorem 4.1. For graph GG we have our well-spread matching from the recursion. For the other graph, GxG_{x}, we compute it easily, as the graph is internally 4-edge-connected, so any perfect matching will do. Figure 3 illustrates this part of the algorithm.

Theorem 4.3

The output of Algorithm 1 is a well spread perfect matching.

Proof

Follows from Theorem 4.1 and 4.2 and the discussion above. ∎

Algorithm 1
A 33-edge-connected cubic graph GG. A well spread perfect matching MM.
Find φ:GT\varphi:G\to T using [Gab91].
Choose any node of TT as root. \LCommentDecomposing GG along 33-edge-cuts \ForAllxV(T)x\in V(T) in post-order \Ifxx is the root \triangleright no proper 33-edge-cut remains
Do nothing, end of the for loop. \ElsIfxx is a leaf \triangleright Dealing with a trivial cut
Axφ1(x)A_{x}\leftarrow\varphi^{-1}(x) \triangleright Single vertex
Cxδ(Ax)C_{x}\leftarrow\delta(A_{x}) \triangleright three edges incident to it \Else
Ax{Ayy a child of x}A_{x}\leftarrow\bigcup\{A_{y}\mid\mbox{$y$ a child of~{}$x$}\} \triangleright Use Union-Find
Cx{u,v}{Cyy a child of xs.t. only one of uv is in AxC_{x}\leftarrow\{u,v\}\in\bigcup\{C_{y}\mid\mbox{$y$ a child of~{}$x$\} }\mbox{s.t. only one of $u$, $v$ is in $A_{x}$}
GxG/A¯xG_{x}\leftarrow G/{\bar{A}}_{x} \triangleright contract A¯x{\bar{A}}_{x} to a single vertex a¯x{\bar{a}}_{x}
put a link to CxC_{x}, GxG_{x} to xx
GG/AxG\leftarrow G/A_{x} \triangleright contract AxA_{x} to a single vertex axa_{x}
φφ/A¯x{(a,x)}\varphi\leftarrow\varphi/{\bar{A}}_{x}\cup\{(a,x)\} \EndIf\EndFor\LCommentAssembling the perfect matching \ForAllxV(T)x\in V(T) in reverse pre-order \Ifxx is a root of TT
Find any perfect matching MM in GG. \triangleright GG is now internally 4-edge-connected \ElsIfxx is not a leaf \LCommentFirst we find which edge of CxC_{x} does MM use.
bneighbor ofaxinMb\leftarrow\text{neighbor of}~{}a_{x}~{}\text{in}~{}M
aneighbor ofbinCxa\leftarrow\text{neighbor of}~{}b~{}\text{in}~{}C_{x}
Find a perfect matching MxM_{x} in GxG_{x} using the edge aa¯xa{\bar{a}}_{x}. \triangleright GxG_{x} is int.4-edge-connected
MMMxM\leftarrow M\cup M_{x} \EndIf\EndFor
\ReturnMM
\Require
\Ensure
Refer to caption
Figure 2: A typical step in the decomposition part of the algorithm. We show a concrete 3-edge-connected cubic graph GG and its cactus tree TT, together with the updated version of GG and TT and the internally 4-edge-connected graph GxG_{x} with the star cactus tree TxT_{x}.
Refer to caption
Figure 3: A typical step in the assembly part of the algorithm: we combine a perfect matching MM in “new G” and MxM_{x} in GxG_{x} to get a matching in the original graph GG.

4.1 Complexity Analysis

The construction of the tree of cuts (the cactus model) can be done in time O(nlogn)O(n\log n) [Gab91]. By Lemma 1 we have |V(T)|=O(n)|V(T)|=O(n). Next, the algorithm decomposes the graph GG along 33-edge cuts. Here the main work is keeping track of the sets AxA_{x} and CxC_{x}, updating the graph GG and GxG_{x}. For this we use the standard Union-Find algorithm plus a constant amount of work for changing three edges of the cut CxC_{x} at each step.  Thus the total time required for this loop is O(nα(n))O(n\alpha(n)).

In the assembly step, we repeatedly look for a perfect matching in an internally 4-edge-connected cubic graph GxG_{x} containing a given edge. By [BBDL01], this can be done in time O(|Gx|log4|Gx|)O(|G_{x}|\log^{4}|G_{x}|). (The initial step where xx is the root is faster, as we don’t need to specify an edge, but this bound works as well.) The remaining work (combining the matchings) needs only a constant time per edge, so linear in total.

Note that |Gx||G_{x}| is the degree of xx in TT; let dxd_{x} denote this quantity. We know that xdx=2|E(T)|=O(n)\sum_{x}d_{x}=2|E(T)|=O(n). The time complexity is thus

O(nlogn)+O(nα(n))+O(n)+xV(T)dxlog4dx.O(n\log n)+O(n\alpha(n))+O(n)+\sum_{x\in V(T)}d_{x}\log^{4}d_{x}.

So the leading term in the time complexity is the final sum. As the function f(d)=dlog4df(d)=d\log^{4}d is convex, the sum will be maximal when one dxd_{x} is as large as possible (namely, O(n)O(n)) and the other as small as possible (namely, 1) – otherwise we can increase the sum of f(dx)f(d_{x}), while keeping sum of dxd_{x} constant. For this extreme case we get our bound for time complexity of the algorithm, O(nlog4n)O(n\log^{4}n).

Theorem 4.4

Algorithm 1 finds a well spread perfect matching MM in a 33-edge-connected cubic graph GG in time O(nlog4n)O(n\log^{4}n).

5 Application

In [GŠ24], Ghanbari and Šamal establish an upper bound of n10\frac{n}{10} on the number of singular edges in an embedding of a bridgeless cubic graph on a surface. They also raise the question of how efficiently one can find a perfect matching in a bridgeless cubic graph that contains no odd cut of size 33 — an essential step in determining the time complexity of finding such an embedding. Here, we answer their question for 33-edge connected cubic graphs and describe an algorithm that constructs an embedding with at most n10\frac{n}{10} bad edges. To provide context, we first state their results.

Lemma 2 ([GŠ24])

Let GG be a bridgeless cubic graph, and C1,C2,,CtC_{1},C_{2},\dots,C_{t} be a collection of closed walks in GG. If C1,C2,,CtC_{1},C_{2},\dots,C_{t} form a partial CDC, then there is an embedding (π,λ)(\pi,\lambda) of GG where C1,,CtC_{1},\dots,C_{t} are some of the facial walks of (π,λ)(\pi,\lambda). Moreover, such an embedding can be found by a linear time algorithm.

Theorem 5.1 ([GŠ24])

Let GG be a bridgeless cubic graph. There exists an embedding of GG with at most n10\frac{n}{10} singular edges.

To prove Theorem 5.1, in [GŠ24], we first construct a perfect matching M1M_{1} such that M1M_{1} contains no odd cut of size 3. This guarantees the existence of another perfect matching M2M_{2} satisfying |M1M2|n10|M_{1}\cap M_{2}|\leq\frac{n}{10} (see [KKN06]). Next, we show that M1M2M_{1}\cap M_{2} can be extended to an embedding using Lemma 2, where the potential singular edges of the embedding are precisely those in M1M2M_{1}\cap M_{2}, and this completes their proof.

Suppose that the cubic graph GG is 33-edge-connected. To find M1M_{1}, we employ Algorithm 1, which finds a perfect matching in time O(nlog4n)O(n\log^{4}n). Consequently, determining the overall time complexity reduces to finding the perfect matching M2M_{2}. We utilize Diks and Stańczyk’s algorithm [DS10] to find M2M_{2} in time O(nlog2n)O(n\log^{2}n). Thus, the embedding guaranteed by Theorem 5.1 can be found in total time

O(nlog2n)+O(nlog4n)=O(nlog4n).O(n\log^{2}n)+O(n\log^{4}n)=O(n\log^{4}n).

6 Conclusion

We studied a new approach to finding a perfect matching that includes all 33-edge cuts in a 33-edge-connected cubic graph, utilizing the cactus representation of the graph. We referred to such a perfect matching as well spread. In Section 4, we presented an algorithm that finds a well-spread perfect matching in a 33-edge-connected cubic graph in time O(nlog4n)O(n\log^{4}n).

In general, the best-known algorithm for finding a well-spread perfect matching in a bridgeless cubic graph has a time complexity of O(n3)O(n^{3}) [BIT13]. In the future, it would be interesting to determine whether the cactus representation can be leveraged to develop a faster algorithm for finding such a well-spread perfect matching. However, the issue is that representing 3-edge-cuts in a graph that may contain 2-edge-cuts is more complicated.

References

  • [BBDL01] Therese C. Biedl, Prosenjit Bose, Erik D. Demaine, and Anna Lubiw. Efficient algorithms for Petersen’s matching theorem. J. Algorithms, 38(1):110–134, 2001.
  • [BIT13] Sylvia Boyd, Satoru Iwata, and Kenjiro Takazawa. Finding 2-factors closer to TSP tours in cubic graphs. SIAM Journal on Discrete Mathematics, 27(2):918–939, 2013.
  • [Din93] Efim Dinitz. The 3-edge-components and a structural description of all 3-edge-cuts in a graph. In Ernst W. Mayr, editor, Graph-Theoretic Concepts in Computer Science, pages 145–157, Berlin, Heidelberg, 1993. Springer Berlin Heidelberg.
  • [DKL76] E. Dinic, Alexander Karzanov, and M. Lomonosov. The system of minimum edge cuts in a graph. In book: Issledovaniya po Diskretnoǐ Optimizatsii (Engl. title: Studies in Discrete Optimizations), A.A. Fridman, ed., Nauka, Moscow, 290-306, in Russian,, 01 1976.
  • [DS10] Krzysztof Diks and Piotr Stanczyk. Perfect matching for biconnected cubic graphs in O(nlog2n){O}(n\log^{2}n) time. In Jan van Leeuwen, Anca Muscholl, David Peleg, Jaroslav Pokorný, and Bernhard Rumpe, editors, SOFSEM 2010: Theory and Practice of Computer Science, pages 321–333, Berlin, Heidelberg, 2010. Springer Berlin Heidelberg.
  • [Gab90] Harold N. Gabow. Data structures for weighted matching and nearest common ancestors with linking. In Proceedings of the First Annual ACM-SIAM Symposium on Discrete Algorithms, SODA ’90, page 434–443, USA, 1990. Society for Industrial and Applied Mathematics.
  • [Gab91] Harold N. Gabow. Applications of a poset representation to edge connectivity and graph rigidity. [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science, pages 812–821, 1991.
  • [GŠ24] Babak Ghanbari and Robert Šámal. Approximate cycle double cover. In Adele Anna Rescigno and Ugo Vaccaro, editors, Combinatorial Algorithms, pages 421–432, Cham, 2024. Springer Nature Switzerland.
  • [KKN06] Tomáš Kaiser, Daniel Král’, and Serguei Norine. Unions of perfect matchings in cubic graphs. In Martin Klazar, Jan Kratochvíl, Martin Loebl, Jiří Matoušek, Pavel Valtr, and Robin Thomas, editors, Topics in Discrete Mathematics, pages 225–230, Berlin, Heidelberg, 2006. Springer Berlin Heidelberg.
  • [MT01] Bojan Mohar and Carsten Thomassen. Graphs on Surfaces. Johns Hopkins series in the mathematical sciences. Johns Hopkins University Press, 2001.
  • [NI08] Hiroshi Nagamochi and Toshihide Ibaraki. Algorithmic aspects of graph connectivity. Encyclopedia of mathematics and its applications ; v. 123. Cambridge University Press, Cambridge, 2008.
  • [Pet91] Julius Petersen. Die Theorie der regulären graphs. Acta Math., 15(1):193–220, 1891.
  • [Sch35] Tibor Schönberger. Ein beweis des petersenschen graphensatzes. Acta litterarum ac scientiarum Regiae Universitatis Hungaricae Francisco-Josephinae: Sectio scientiarum mathematicarum, 7:51–57, 1935.
  • [Sey79] Paul D Seymour. Sums of circuits. Graph theory and related topics, 1:341–355, 1979.
  • [Sze73] G. Szekeres. Polyhedral decompositions of cubic graphs. Bulletin of the Australian Mathematical Society, 8(3):367–387, 1973.