Exact Localisations of Feedback Sets

The feedback arc (vertex) set problem, shortened FASP (FVSP), is to transform a given multi digraph $G=(V,E)$ into an acyclic graph by deleting as few arcs (vertices) as possible. Due to the results of Richard M. Karp in 1972 it is one of the classic NP-complete problems. An important contribution of this paper is that the subgraphs $G_{\mathrm{el}}(e)$, $G_{\mathrm{si}}(e)$ of all elementary cycles or simple cycles running through some arc $e \in E$, can be computed in $\mathcal{O}\big(|E|^2\big)$ and $\mathcal{O}(|E|^4)$, respectively. We use this fact and introduce the notion of the essential minor and isolated cycles, which yield a priori problem size reductions and in the special case of so called resolvable graphs an exact solution in $\mathcal{O}(|V||E|^3)$. We show that weighted versions of the FASP and FVSP possess a Bellman decomposition, which yields exact solutions using a dynamic programming technique in times $\mathcal{O}\big(2^{m}|E|^4\log(|V|)\big)$ and $\mathcal{O}\big(2^{n}\Delta(G)^4|V|^4\log(|E|)\big)$, where $m \leq |E|-|V| +1$, $n \leq (\Delta(G)-1)|V|-|E| +1$, respectively. The parameters $m,n$ can be computed in $\mathcal{O}(|E|^3)$, $\mathcal{O}(\Delta(G)^3|V|^3)$, respectively and denote the maximal dimension of the cycle space of all appearing meta graphs, decoding the intersection behavior of the cycles. Consequently, $m,n$ equal zero if all meta graphs are trees. Moreover, we deliver several heuristics and discuss how to control their variation from the optimum. Summarizing, the presented results allow us to suggest a strategy for an implementation of a fast and accurate FASP/FVSP-SOLVER.


Introduction
The feedback arc set problem, shortened FASP, is to delete as less as possible arcs of a graph such that the resulting subgraph is acyclic, i.e., it contains no directed cycle. Another equivalent formulation is to find a linear ordering of the vertices of the graph such that the number of back arcs is minimized. Therefore the problem is also known as maximum acyclic subgraph problem or linear ordering problem. For directed graphs this problem is one of the classic NP-complete problems [Karp, 1972]. The problem of deleting a smallest subset of vertices to result in an acyclic subgraph is known as feedback vertex set problem (FVSP). The FASP and FVSP are linear time reducible among each other, by keeping the relevant parameters fix as we will assert in section 2.1, alternatively see [Even et al., 1998]. Therefore algorithmic properties of the two problems are transferable. In particular, the FVSP is also NP-complete. Analogous problems for undirected graphs can be defined. As shown in [Karp, 1972] the feedback vertex set problem remains NP-complete, while the feedback arc set problem can be solved efficiently by solving a maximum spanning tree problem. An excellent overview on feedback sets can be found in [Bang-Jensen and Gutin, 2008]. The problem of finding minimal transversals of directed cuts is closely related to the FASP, see [Lucchesi and Younger, 1978]. The FASP stays NP-complete for graphs where every node has an in-degree and out-degree of at most three or line digraphs even when every clique has at most size three [Gavril, 1977]. It is also NPcomplete for tournament graphs [Alon, 2006]. However, there also exist graph classes possessing polynomial time algorithms, e.g., planar directed graphs or more general weakly acyclic digraphs [Grötschel et al., 1985], and reducible flow graphs [Ramachandran, 1988]. The FASP or FVSP has a multitude of applications, e.g., retiming synchronous circuitry [Leiserson and Saxe, 1991], circuit testing [Kunzmann and Wunderlich, 1990], computational biology and neuroscience [Ispolatov and Maslov, 2008], network analysis and operating systems [Silberschatz et al., 2008].

Outline
In section 2 we provide the graph theoretical concepts, which are fundamental for this article. In section 3 we present our main results. The fact that the FASP/FVSP on multi-digraphs can be reduced to simple graphs is asserted in section 4 and the first a priori problem size reduction is deduced. In section 5 we construct an algorithm determing the induced subgraph of all cycles with one arc in common efficently. This knowledge is used in section 6 to introduce the concept of isolated cycles and resolvable graphs and providing an efficent solution of the FASP/FVSP on resolvable graphs. Moreover, the second a priori problem size reduction is given. Afterwards we concentrate on the main result of the article. Namely, that the FASP/FVSP possesses a Bellmann decomposition and present exact solutions using this fact to apply a dynamic programming technique in section 7. In section 8, we discuss how greedy approaches behave with respect to the problems and develope a strategy for a general FASP/FVSP-SOLVER. Finally, we discuss our results and other alternatives in section 9.

Preliminaries
Before we can introduce the FASP (FVSP) formally, some basic concepts of graphs and cycles need to be mentioned.

Graphs and Cycles
A multi-directed graph, or multi-digraph, G = (V, E) consists of a set of vertices V and a multi-set of arcs E containing elements from V × V . A directed graph or digraph is a multi-digraph with a simple arc set E, i.e., E ⊆ V × V and therefore every e ∈ E occurs exactly once. A digraph is called simple if there are no loops, i.e., E∩D( If not stated otherwise throughout the article G = (V, E) denotes a finite, connected, directed and loop-free multi-digraph and G \ e, G \ v denote the graphs which occur by deleting the arc e and possibly occurring isolated vertices or the vertex v and all its adjacent arcs. For ε ⊆ E and ν ⊆ V the graphs G \ ε, G \ ν are analogously defined. Moreover, G(·), E(·), V(·) denote the induced graph, the set of all arcs, the set of all vertices which are inherited by a set or set system of graphs, arcs or vertices. With P(A) we denote the power set of a given set A.
For an arc e = (u, v) ∈ E we denote e + = u as the tail and e − = v as the head of the arc. Two arcs e and f are called consecutive if e − = f + and are called connected if {e − , e + } ∩ {f − , f + } = ∅. A directed path from a vertex u to a vertex v is a sequence of consecutive arcs where u is the tail of the first arc and v is the head of the last. A connected path from a vertex u to a vertex v is a sequence of connected arcs containing u and v as vertices. A digraph is connected if there is a connected path between every pair of its vertices. A weighted digraph (G, ω) or (V, E, ω), is a digraph with an additional weight function ω : E −→ R, which assigns a (usually positive) weight to each arc. For a given vertex v ∈ V the sets N + V (v) := u ∈ V (v, u) ∈ E , N − V (v) := u ∈ V (u, v) ∈ E , N ± E (v) := e ∈ E e ± = v shall denote the set of all outgoing or incoming vertices or arcs of v respectively. The indegree (respectively out degree) of a vertex u is given by deg ± (u) = |N ± E (u)| and the degree of a vertex is deg(u) = deg − (u) + deg + (u). ∆ ± (G), ∆(G) shall denote the maximal (in/out) degree, respectively.
A directed (connected) cycle of a digraph is a multiset of arcs {e 0 , . . . , e k } such that there is a permutation φ : {0, . . . , k} −→ {0, . . . , k} with e φ(i) and e φ(i)+1 mod k+1 are consecutive (connected), for 1 ≤ i ≤ k. A loop is a cycle containing only a single arc. A cycle is simple if the set of contained arcs {e 1 , . . . , e k } is a simple set, i.e., it visits every arc, it contains, exactly once. A cycle is elementary if each vertex it contains is visited exactly once. We denote with O(G) the set of all directed cycles and with O el (G), O si (G) the set of all elementary or simple cycles, respectively. Analogously, O 0 el (G) and O 0 si (G) shall denote the set of all connected (and not necessarily directed) elementary and simple cycles respectively. If not stated otherwise in the whole article a cycle is assumed to be directed and elementary. A feedback vertex set (FVS) of G is a set ν ∈ P(V ) such that G \ ν is acyclic, i.e., G \ ν contains no directed cycle. A feedback arc set (FAS) of G is a set ε ∈ P(E) such that G\ε is acyclic.
Definition 1 (line graph, natural hypergraph) The directed line graph L(G) = (V L , E L ) of a digraph G is a digraph where each vertex represents one of the arcs of G and two vertices are connected by an arc if and only if the corresponding arcs are consecutive. In contrast the natural hypergraph H(G) = (V ,Ē) of G is constructed by identifying the arcs of G with the vertices of H(G), i.e.,V is a simple set of vertices such that |V | = |E|, where |E| is counted with multiplicities. By fixing the identificationV ∼ = E we introduce a directed hyperarc h v for every vertex v ∈ V by requiring that head and tail coincide with all outgoing and ingoing arcs respectively, i.e., . Consequently,Ē ∼ = V and therefore every hyperarc can be labeled by its corresponding vertex. See Figure 1 for an example.
The directed, elementary cycles of the line graph L(G) of G are in 1 to 1 correspondence to the directed, simple cycles of G while the directed simple cycles of H(G), i.e., directed cycles which run through every hyper arc exactly once are called Berge cycles, [Berge, 1989]. Note that if G is a simple digraph, i.e., there are no multi arcs, then the set of all Berge cycles of H(G) are in 1 to 1 correspondence to the set of all elementary cycles of G. For a set of hyperarcsε ⊆Ē of H(G) we denote with ε ⊆ V the corresponding vertices in G. We summarize some facts in this regard.
, with respect to the notion of Berge cycles, if and only if ε is a FVS of G.
Proof Storing G as a adjacency list and following the definitions immediately implies i) and ii). Since any two vertices e, f of the line graph L(G) are adjacent if and only if the corresponding arcs are consecutive in G and any two arcs if and only if the corresponding vertices u and v are adjacent in G, ii) and iii) follow.
Remark 1 Note that by introducing an additional arc h * v between head and tail of every hyperarc becomes a directed graph The directed cycles of G * are in 1 to 1 correspondence to the Berge cycles of H(G) and a FAS ε of G * is in 1 to 1 correspondence to a FAS ε of H(G) by identifyingε with the additional introduced arcs belonging to the hyperarcs inε and identifying ε with the hyperarcs corresponding to the bipartite graphs cutted by ε. If γ :Ē −→ R+ is an arc weight on H(G) then To give a more algebraic notion of cycles we consider X(G) := e∈E Ze the free Z-module generated by E. If we choose coordinates, i.e., a numbering for E and V then we can identify E with {e 1 , . . . , e |E| }, V with {v 1 , . . . , v |V | } and X with Z |E| . In this case an element x ∈ X(G) is a tuple x = (x 1 , . . . , x |E| ), which can be interpreted as a set of paths through G where x i ∈ Z indicates how often we pass the arc e i and the sign of x i determines in which direction this is done. We denote with I(G) the incidence matrix of G with respect to these identifications, i.e., It is a well known fact, see for instance [Biggs, 1993], that x ∈ X(G) is a cycle of G if and only if Ix = 0, i.e., the submodule of all cycles of G coincides with the set of homogeneous solutions Λ(G) = ker I(G). In particular, this implies that Λ(G) is a free Z-module with where #G denotes the number of connected components of G and therefore equals 1 by our assumption on G. Note that the vector space Λ 0 (G) : can be understood as the cycle space of connected cycles, given by the kernel of the incidence matrix I 0 (G) defined with respect to Z 2 coefficients. In this case still holds, see again [Biggs, 1993].
Not that every simple cycle is given by the union of arc disjoint elementary cycles. The following example illustrates this fact.
Example 1 Consider the graph G in Figure 2. Then one observes that the cycle c = {e, f, g, h, i} is a simple, non-elementary cycle while the cycles {e, f, i}, {f, h} and {h, g} are elementary cycles.

The Feedback Arc Set Problem (FASP)
Now we have all ingredients to give a formal definition of the FASP.
Problem 1 Let G = (V, E) be a finite, connected, directed, and loop-free graph, ω : E −→ N + be a weight function. Then the weighted FASP is to find a set of arcs ε ∈ P(E) such that G \ ε is acyclic, i.e., O el G \ ε = ∅ and is minimized. We denote the set of solutions of this problem with S(G, ω) and denote with Ω(G, ω) := Ω G,ω (ε), ε ∈ S(G, ω) the optimal weight or feedback length. If ω is constant, e.g., equal to 1, then the problem coincides with the unweighted minimal FASP.
Remark 3 The condition on G to be loop-free is not an essential restriction. This is because every loop is contained in any solution of the minimal FASP.
Remark 4 Note that, every cycle c ∈ O(G) can be generated by elementary cycles c 1 , . . . , c n ∈ O el (G) using only non-negative coefficients. Thus, if ε is a solution of Problem 1 then certainly O G \ ε = ∅, which implies that our notion of acyclic graphs is consistent for the problem. Remark 6 If G = (V, E) is a simple graph then denoting with · the Gauss bracket we observe that at most |E|/2 arcs have to be deleted to obtain a graph where no connected path of length 2 exists anymore. In particular, the graph is acyclic in this case and therefore See also [Saab, 2001].

The Feedback Vertex Problem (FVSP)
Let G = (V, E) be given and γ : V −→ R + be a vertex weight. The feedback vertex set problem (FVSP) on (G, γ) is obtained by replacing the role of arcs by vertices in Problem 1. In regard of Proposition 1, by introducing the hyperarc weightω(h v ) := γ(v), we realize that the FVSP is equivalent to the the FASP on the natural hypergraph H(G) of G, with respect to the notion of Berge cycles. Already in Remark 1 we mentioned how to treat this case. Vice versa the FASP on an arc weighted graph (G, ω) is equivalent to the FVSP on the line graph L(G) of G by introducing the vertex weight γ(v) = ω(v), v ∈ V L = E. Since the described transformations can be done efficently, see Proposition 1, an efficent solution of the FASP or FVSP for an arc and vertex weighted instance (G, ω, γ) yields an efficent solution of the FVSP or FASP for the transformed instances and vice versa. In particular, by summarizing some already known results we obtain: Theorem 1 The unweighted FASP and FVSP are APX complete.
Proof Since there is an L-reduction of the Minimum Vertex Cover Problem, which is APX complete due to [Dinur and Safra, 2004], to the FVSP, see [Karp, 1972], the FVSP is APX complete. Proposition 1 shows that the unweighted FASP on G is equivalent to the unweighted FVSP on L(G). Thus, the feedback length of any solution remains unchanged yielding an L-reduction of the FASP to the FVSP implying the claim.
We expect that the theorem above still holds for the weighted versions. However, due to the observations made so far, we will focus our studies on the FASP to increase the understanding of the localisation of feedback sets.

Main Results
Though the FASP and FVSP are equivalent problems in graph theory and computer sciences the only exact solutions of the FVSP known to us is are the algorithms of [Razgon, 2007] with complexity O(1, 9977 |V | |V | O(1) ) and [Chen et al., 2008] requiring O |E| 4 4 Ω Ω 3 Ω! , where Ω denotes the feedback length. A detailed comparison to our approach is given in Section 9. For now we just mention our results: Theorem A Let (G, ω) be a graph. Then there is an algorithm testing whether (G, ω) is resolvable and determing a solution of the weighted FASP on G in case of resolvability in O(|V ||E| 3 ).
Though there are infinitely many resolvable graphs not all graphs are resolvable. However, if the graph (G, ω) is not resolvable, we still can find an exact solution: Theorem B Let (G, ω) be a graph then there is a parameter m ∈ N, m ≤ dim Z2 Λ 0 (G) = |E| − |V | + 1, which can be determined in O(|E| 3 ) and an algorithm CUT with run time O 2 m |E| 4 log(|V |) solving the weighted FASP.
Due to Proposition 1 the analogous results with respect to the FVSP hold. In particular, we call a vertex weighted graph (G, ν) resolvable iff its natural hypergraph is resolvable, see section 2.3 again. If we replace every hyperarc of H(G) = (V ,Ē) with its corresponding bipartite graph then by following Remark 1 we have |V * | = |E| + 2|V |, |E * | ≤ (∆(G) + 1)|V | for the resulting graph G * = (V * , E * ). The translated results therefore become: Theorem C Let (G, ν), ν : V −→ R + be a vertex weighted graph. Then there is an algorithm testing whether (G, ν) is resolvable and determing a solution of the weighted FVSP on G in case of resolvability in O(∆(G) 3 |V | 3 |E|).
Note that there are infinitely many instances where m = 0 and m ≤ |V | on homogenous graphs, i.e., if ∆(G) ≤ (|E| − 1)/|V | + 2. Thus, by computing the bound or directly m we can decide whether the algorithm of [Razgon, 2007] or our approach will be faster for a given instance and choose the better alternative. Moreover, the feedback length Ω can not assumed to be constantly bounded. Thus, the algorithm of [Chen et al., 2008] actually possesses a complexity of O 4 |V | |V | 3 |E| 4 |V |! , which is much slower than our approach. Finally, we want to mention that all theorems are based on the following crucial fact: Theorem E Let G = (V, E) be a graph and e ∈ E. Then there exist algorithms which compute: A proof and a more precise version of the statement is given in Theorem 2.

The Essential Minor
In this section we introduce the notion of the essential minor (C, δ) of given graph (G, ω), which is a simple, weighted digraph that decodes the topological structure of G in a compact way and is therefore very helpful. Even though there are some crucial differences we want to mention that similar concepts were already introduced in [Berge, 2001].
Definition 2 (parallel arcs) Let G be a graph and e = (u, v) ∈ E then we denote with the sets of all parallel and anti-parallel arcs and set F (e) = F + (e) ∪ F − (e).
We recall that for a given set A and an equivalence relation ∼ on A × A the quotient A/ ∼ is given by the set of all equivalence classes Definition 3 (contracted graph) Let G = (V, E) be a graph and u, v ∈ V . An equivalence relation ∼ u,v on V is defined by Fig. 3 The construction of (C, δ), with respect to (G, ω).
The contracted graph of G with respect to e ∈ E is defined as the topological minor If e, f ∈ E then one can check easily that by identifying e, f with their images in G/e, G/f respectively we have (G/e)/f = (G/f )/e. Thus, the definition does not depend on the order of the contracted edges. Hence, if G ⊆ G is a subgraph then G/G := G/E(G ) can be defined by contracting E(G ) in arbitrary order.

Definition 4 (essential minor)
We represent an equivalence class [e] ∼Γ by an arc (u, v), where u and v coincide with the start and endpoint of the longest directed, branch-point-free path running through e. The positively weighted graph Let ∼ Φ be an equivalence relation on E with e ∼ Φ f ⇐⇒ e, f ∈ F + (e). For (G, ω) the positively weighted graph Starting with G 0 := G for k > 0 we define Example 2 In Figure 3 the construction of the essential minor is illustrated. Furthermore, for a graph G with D diamonds connected in a cycle as in the example we obtain deg(G) = 3 and O el (G) = 2 D = 2 |E|/5 = 2 |V |/4 . In contrast the essential minor C of such a graph satisfies |O el (C)| = 1. Hence, even though the number of cycles in G increases exponentially in |E| and |V | by adding further diamonds, the number of cycles in C remains constant equal to 1 while the weight ξ decodes the number of cycles of the original graph G.
Since the following results are quite canonically their simple but technical proofs are given in Appendix A.
Proposition 2 states that solving the FASP for the essential minor is equivalent to solving the FASP on the original graph. Even though it is possible that (C, δ) = (G, ω) the construction might yields an a priori problem size reduction in many cases as in Example 2.
Remark 7 Since for given ε C ∈ S(C, δ) the construction of some ε G ∈ F(ε C ) is easy to compute (Proposition 3) Proposition 2 states that it suffices to solve a the weighted FASP for the essential minor instead of the original graph. As a consequence multigraphs do not need to be considered and the number of elementary cycles of the essential minor can be drastically reduced, see for instance Example 2.

Subgraphs of Elementary and Simple Cycles
There are several approaches for generating the set O el (G) of all elementary cycles of a graph, see [Mateti and Deo, 1976] for an overview. Since there can be an exponential number of cycles in a graph, generating algorithms have an exponential worst case run time. The best algorithms available today are the ones of [Tarjan, 1973] and [Johnson, 1975] solving the problem in O |O el (G)|(|V | + |E|) . Of course counting all cycles might be less expansive than generating them. However, by reducing to the Hamiltonian cycle problem, see for instance [Arora and Barak, 2009], counting all cycles is a NP-hard problem. For our concerns, and supposedly in many other situations, the generation of all cycles is not necessary, but the knowledge of the arc set of all cycles including a common arc suffices. In the following an algorithm for determing the smallest subgraph G el (e) ⊆ G which contains all elementary cycles that include the arc e is given.
be the set of all elementary and simple cycles running through e. If ε ∈ P(E) the by the corresponding paths induced graphs and with G(e) := G(P (u, v)), shall denote the connected (and not necessarily directed) analagons of the introduced sets and graphs.
. Moreover, the graphs G(u, v), G(e) can be determined in O(|E| 2 ) by applying a depht first search technique similar to Remark 5. In the other cases we observe: Theorem 2 Let G = (V, E) be a graph and u, v ∈ V , e ∈ E. Then there exist algorithms which compute: Thus, by setting G : . Algorithm 1 formalizes this procedure and runs in O(|E| 2 ) if G is stored in an adjacency list, enabling us to test The other cases of i) can now be solved by replacing u, v with e and directed paths or cycles with connected ones.
To show ii) we add two arcs u * = (x, u), v * = (v, y), x, y ∈ V denote with G * the resulting graph and consider the line graph L(G * ) = (V * L , E * L ). We recall that |V L | = |E|, |E L | ≤ |E 2 | and apply the fact that the elementary paths of L(G) are in 1 to 1 correspondence to the simple paths of G and Remark 8 Note that if (C, δ) is the essential minor of (G, ω). Then the treatment of "parallel" paths is avoided by the essential minor construction. Thus, we expect that if C is significant smaller than G the run time performance will increase drastically.

Isolated Cycles
Of course the question arises whether a solution of the FASP on G el (e) can be determined independently of the rest of the graph. The notion of isolated cycles is our starting point of investigations in this manner and as it will turn out it is a very helpful concept of answering this question.
We recall that a Min-s-t-Cut with source s = u and sink t = v is given by a set ε ⊆ E such that P (u, v) = ∅ in G \ ε and Ω G,ω (ε) = e∈ε ω(e) is minimized.
Lemma 1 Let (G, ω) be a weighted graph and e ∈ E. Then there is an algorithm, which determines a solution ε ∈ S G el (e), ω of the FASP on (G el (e), ω) in O |V ||E| log(|V |) , where we slightly abused notion by still denoting ω for the the restriction of ω to G el (e).
Proof Observe that by interpreting ω as a capacity function on G el (e) a solution of the FASP on ε is given by {e} or a Min-s-t-Cut ε with source s = e − and sink t = e + . The option with the smaller weight is chosen. Due to the famous Min-Cut-Max-Flow Theorem a Min-s-t-Cut can be determined by solving a Max-Flow problem with respect to ω and s = e − , t = e + . The algorithm of [Dinic, 1970] solves the Max-Flow problem for arbitrary weights in time Remark 9 Note that if (C, δ) is the essential minor of (G, ω) then the absence of "parallel" paths might speeds up the time required to determine a Mins-t-Cut drastically. Moreover, the Max-Flow-Problem is very well understood, yielding many alternatives to the algorithm of [Dinic, 1970] and providing faster solutions in special cases, see [Dinitz, 2006] and [B. Korte, 1981] for an overview.
Definition 6 Let G be a graph and c ∈ O el (G) then we denote with the set of isolating arcs of c, i.e., if e ∈ I(c) then c has empty intersection with every cycle c that does not contain e or an parallel arc of e. For an arc e ∈ E or set of arcs ε ⊆ E we set where ·, · denotes the standard scalar product on R n , n = E/I(c) . Thus, by detecting isolated cycles we obtain an orthogonal splitting ALGORITHM 2: The isolated cycles of a graph.
Such a splitting is certainly helpful whenever one wants to find a basis of Λ(G), e.g., a minimal cycle basis of span (O I (e)) can be extended to a minimal basis of Λ(G).
Consider an isolating arc e of a graph (G, ω) or its essential minor (C, δ). The isolated cycles O I (e) running through e can be cut either by removing the arc set ε 0 = F + (e) or another feedback set ε 1 of G I (e). By definition the arc set ε 0 cuts at least the cycles in O I (ε 0 ). By Remark 10 the feedback set ε 1 cuts only the isolated cycles O I (ε 0 ) or is given by ε 1 = F + (f ) of another isolating arc f ∈ O I (e) with O el (ε 0 ) = O el (ε 1 ). Thus, if the weight of ε 0 equals the weight of a solution of the FASP on G I (e) then there is a solution ε of the FASP on G with ε 0 ⊆ ε. The following definition reflects this idea more formally.
Definition 7 Let (G, ω) be a graph. We define a maximal list of graphs , be the essential minor of (G i , ω i ) and E * i ⊆ I(C i ) be a maximal subset of pairwise different isolating arcs of C i such that ∀e ∈ E * i : δ(e) = Ω G I (e), δ |G I (e) , G el (e) = G el (f ) , whenever e = f .
Example 3 Note that (C, δ) in Figure 4 is resolvable, while (G, ω) in Figure 6 is not resolvable, but becomes resolvable for uniform weight ω ≡ 1.
The construction has an immediate consequence.
Theorem 3 Let (G, ω) be a graph. Then there is an algorithm testing whether (G, ω) is resolvable and determing a solution of the weighted FASP on G in case of resolvability in O(|V ||E| 3 ). Proof Due to Proposition 3 the construction of the essential minor (C i , δ i ) can be achieved in O(|E| 2 ) for every 1 ≤ i ≤ k. Since checking whether O el (f ) = ∅ can be done in O |E| by storing G in an adjacency list and using depht first search to figure out whether P (f + , f − ) = ∅ the Algorithm 2 computes the set G I (e) in O(|E| 2 ) and therefore computing G I (e) for all arcs requires at most O(|E| 3 ) computation steps. Furthermore, a solution of the FASP on G I (e) can be computed due to Lemma 1 in O |E| 2 . Due to the fact that during the construction of (S, τ ) no parallel arcs appear, we have to recompute the isolated cycles at most |V | times. Thus, (S, τ ) can be determined in O |V ||E| 3 . Furthermore, we can use the backtracking procedure of Proposition 3 to compute a solution of the FASP in O(|V ||E| 2 ) once (S, τ ) is known.
Observe that Theorem 3 was already stated in section 3 as Theorem A. However, the result leads to the question : What are fast (linear, quadratic time) checkable conditions a graph (G, ω) has to satisfy to be resolvable. Though, we can easily construct resolvable graphs as (C, δ) in Figure 4 or modified versions of (C, δ) by adding additional isolated cycles a characterization of resolvable graphs is still open. A better understanding of the nonresolvable graphs might help to solve that problem. In order to investigate these graphs the class of graphs without isolated cycles at all, seems to be interesting. Therefore, the next result might be a good starting point for further studies. Proof If G is a graph with O(G ) = ∅, O I (G ) = ∅ then G possesses at least three vertices and O(G ) ≥ 3 has to hold. We claim that there are at least three linear independent cycles. Indeed if d 1 , d 2 , d 3 ∈ O(G ) with λd 1 +µd 2 +ηd 3 = 0, λ, µ, η ∈ Z then due to Remark 2 we know that d 1 , d 2 , d 3 ∈ {0, 1} |E| and no elementary cycle is subset of another. So w.l.o.g. we can assume that d 1 = d 2 + d 3 , which contradicts that all cycles are elementary.
This observation implies that |E | ≥ |E| whenever |V | > 3. Since D 3 is an directed clique we can identify any smaller graph G with a subgraph of D 3 . It is easy to see that deletion of any arc e ∈ E produces an isolated cycle in D 3 . For instance if we delete e 4 then c 3 will be isolated, if we delete e 5 then c 2 will be isolated and so on. Hence G ∼ = D 3 .
If G is a non-resolvable graph then one can think about different methods to solve the FASP of the resolved graph (S, τ ). One possibility is discussed in the next section.

The Bellman Decomposition
In this section we formulate an solution of the FASP based on a dynamic programming technique. Such an approach can be applied to optimization problems whenever there is a decomposition of the problem into subproblems which satisfy the Bellman principle, i.e., every optimal solution consists only of optimal subsolutions. To motivate the following definitions we first consider an example.
Example 4 Consider the graph (G, ω) in Figure 6. If we want to know, which arc of c 3 we have to cut for an optimal solution then this depends on the cycles c 1 , c 2 . The benefit of cutting e 1 instead of e 2 or e 3 is that we do not have to cut c 1 anymore which costs at least 2. Thus we introduce a new weight σ, which equals ω on E \ {e 1 } and is set to σ(e 1 ) = ω(e 1 ) − 2 = 3 on e 1 . Since no other cycles than c 3 are cut by d 3 the weight of d 3 remains unchanged. Now we consider H e3,d3 = G el (e 3 ) \ d 3 and H d3,e3 = G el (d 3 ) \ e 3 and compute The best solution, which contains e 3 is {e 3 , d 1 } and the best solution containing d 3 is {d 3 , e 1 } and we observe that Thus, the difference of the solutions coincides with the difference of the subproblems in (6) with respect to the new weight σ.
We need to introduce several concepts to show that this observation remains true in general.
Definition 8 (arc sensitivity) Let (G, ω) be a graph and e, f ∈ E, e = f and G el (e) = (V e , E e ) be given. Then we say that f is arc sensitive to e with respect to the FASP, denoted by f e, if and only if f ∈ E e and O el (f ) = ∅ w.r.t. G \ e .
We denote with N (e) = f ∈ E f e the set of all arcs, which are sensitive to e.
Note that the arcs f of an isolated cycle c ∈ O I (e) can not be sensitive to e. Thus, arc sensitivity detects arcs, which might prevent us from solving the FASP on G el (e) independently from the rest of the graph. An understanding of these dependencies can be reached by understanding the meta graph of G defined in the following.
Definition 9 (meta graph) Let (G, ω) be a graph and c ∈ O el (G). We set Proof Storing G in an adjacency list enables us to test whether O el (e) = ∅ in O(|E|) by depht first search. Due to Theorem 2 the graph G el (e) can be determined in O(|E| 2 ). Thus, testing sensitivity requires O(|E| 2 ). Due to the fact that V k ∩ V k−1 = ∅, 1 ≤ k ≤ K the construction of M c tests for sensitivity at most |E| 2 times, which yields the claimed complexity.
Next we define the relative weight σ G,c,e,f with respect to some c ∈ O el (G) and e, f ∈ E(c). As it will turn out σ G,c,e,f decodes which arcs of c can be cutted to obtain a minimal feedback set. For a better clarity we firstly restrict ourselves to the case where the meta graph M c \ f is a tree. In this case, e is chosen as the root and σ G,c,e,f is given by solving the FASP for every leaf h on (G el (h), ω) \ {f } ∪ inner nodes of M c \ f and subtracting this value from the weight ω(h) of the predecessor of h. Afterwards, we delete all leafs of M c \ f and iterate this procedure till e becomes a leaf. More precisely: ALGORITHM 3: The relative weight for meta trees.
Definition 10 (relative weight for meta trees) Let (G, ω) be a weighted graph c ∈ O el (G), e, f ∈ E(c). Let M c be the meta graph of G with respect to c and assume that the connected subgraph M c,f of M c \ f , which contains e is a tree. Then we define the relative weight of G with respect to c, e, f σ G,M,e,f : E −→ R as the output of Algorithm 3 with input (G, ω), M = M c , e, f .
To define the relative weight in general, we have to consider all spanning trees of M c,f generated by deleting edges, which cut cycles for the first time, seen from e. In Example 5 we assert the definition for a special meta graph. The precise definition can be found below, using the following notions: We set ALGORITHM 4: The relative weight for arbitrary meta graphs.
as the relative weight of G with respect to c, e, f . Fig. 7 Computation of σ G,M,e 0 (f 1 ).
Example 5 Let (G, ω) be a graph, c ∈ O el (G), e 0 , e 1 ∈ E(c) and assume that M c,e1 coincides with M from Example 7. We follow Algorithm 4 to compute σ G,M,e0,e1 : E −→ R. Observe that U (M, e 0 ) = {f 0 , f 1 } and U (M f1 , e 0 ) = {h 0 , h 1 }. The graph M f1,h0 is sketched in the next picture and turns out to be a tree. Now we delete all vertices which are closer to e 0 as p h1 (M, e 0 ) and obtain the graph N . Next we compute the relative weight σ(h 1 ) := σ N,p h 1 (M,p h 1 ),e1 (h 1 ) of h 1 with respect to N, p h1 . Analogously, we compute Proof Assume that M c,f is a tree. As already mentioned, due to [Dinic, 1970] and [Dinitz, 2006] the feedback length Ω(G f , σ) can be determined in O |V ||E| log(|V |) , and has to be computed at most |V M c,f | ≤ |E| times. If M c,f is not a tree then we observe that the most expansive computation step in Algorithm 4 is again the computation of the relative weight with respect to a certain subtree of M c,f (lines 8 and 19 in Algorithm 4). This computation step has to be computed for every pair f, h ∈ U (M, q) twice, for some M, q. In worst case the combination of the pairs is independent, i.e., every other pair still appears once M f and M h are considered. In this case the set of remaining cycles running through the remaining pairs (h , f ) do not contain the edges h and f and can therefore not be generated by the cycles running through (h, f ) with respect to Z 2 -coefficients. Consequently, there are at most 2 m(c,f ) iterations. Together with the argumentation above this yields i).
To show ii) we write d = {h 0 , . . . , h k } ⊆ V M c,f as a list of connected meta vertices. Now we choose connected paths If d 1 , . . . , d m ∈ Λ 0 (M c,f ) is a set of Z 2 -linear independent meta cycles then regardless of choices for the paths p i representing an meta edge the corresponding cycles c 1 , . . . , c m ∈ Λ 0 (G) are Z 2 -linear independent in Λ 0 (G). Thus, m(c, f ) is bounded by the Z 2 -dimension of Λ 0 (G), proving ii).
Remark 12 Note that a graph G = (V, E) with c ∈ O el (G) such that M c coincides with M in Figure 11 can be easily constructed by choosing a starting cycle c and additional cycles c 1 , c 2 intersecting with c in f 0 , f 1 , respectively. Then we continue this process by follwing M for the ramining cycles. Hence, the set of graphs G with cycle c and meta graphs M c such that dim Z2Λ 0 (M ) is small, is actually a huge set.
Indeed the relative weights satisfy a Bellman condition, which can be formulated as follows. We recall that G o (G) ⊆ G denotes the subgraph induced by all cycles of G and state: where we shorten σ e = σ G,c,e,f , σ f = σ G,c,f,e and slightly abuse notation by still denoting σ e , σ f , ω for the restriction of the arc weights to the corresponding subgraphs, respectively.
Remark 13 Note that (8)  for all on E(c). Then ω(e) + Ω(G \ e, ω) = Ω(G, ω). Thus, {e} can be extended to a global optimal solution. Maybe this relative formulation can be applied also to other problems for which one wants to use a dynamic programming technique. The described observation is also used in the proof of Theorem 4.
In addition to the observation above the following statement is needed to prove Theorem 4.
ii) σ G,c,e,f (p) = ω(p) − Ω H p,e , σ G\f,c ,p,e , where H p,e is understood with respect to G .
Proof To verify i) and ii) one has to follow directly Definitions 9, 10 and 11, which is left to the reader.
We consider the Algorithms 5,6, denote with output(A) the set of all possible outputs an algorithm A can produce and conclude : Corollary 1 Let (G, ω) be a graph then the algorithm CUT is exact and complete with respect to the FASP, i.e, Indeed the corollary proves Theorem B and by Remark 12 the set of graphs with small m ∈ N , m << |V | is a huge set.
Proof If ε ∈ S(G, ω) and e ∈ ε then ε \ {e} solves the minimal FASP on G(E \ {e}). Thus, the exactness and completeness statements follow directly from Theorems 4,3. For c ∈ O el (G) we set m(c) := dim Z2 Λ 0 (M c ). Then m(c) ≥ m(c, f ) for all f ∈ E(c) with m(c, e) and Proposition 5 implies that m(c) ≤ |E|−|V |+1 holds. Let c ∈ C(c) with c ∩c = 0, be any cycle in the component of all arc connected cycles containing c, introduced in Definition 9. Then m(c ) ≤ m(c) on G \ e for every e ∈ E(c). Thus, as long as at least one arc e ∈ E(c) was deleted the maximal number of appearing Z 2 -linear independent meta cycles appearing for the computation of σ G\e,c ,h,k , h, k ∈ E(c ) are bounded by m(c). Thus, by setting G 0 = G, choosing a cycle c 0 ∈ O el (G 0 ), determing . Since E C(c i ) ∩ E C(c j )) = ∅ the parameter m := max i=0,...,n m(c i ) can be determined in O |E| 3 due to Lemma 2.
Since the algorithm CUT computes σ G,c,e,h , σ G,c,h,e for fixed e ∈ E(c) and all h ∈ E(c) and |E(c)| ≤ |V |, cuts the right arc and repeats the computation at most |E| times by observing that O(|V | 2 ) = O(|E|) the run time of the algorithm CUT can be estimated as claimed. Recall, that due to Theorem 3 the resolved graph can be computed in O |V ||E| 3 . Therefore, the analogous argumentation yields the claimed run time for the algorithm CUT & RESOLVE.
Due to the fact that the FASP is NP complete, as expected our approach depends exponentially on some parameter, which in our approach is the number m of liner independent meta cycles. In cases where m is large we have to use another method to solve the FASP or use a heuristic.

Valid Greedy Solutions
As for instance shown in [Ispolatov and Maslov, 2008] a greedy solution for the FASP needs not to be optimal. We give a criterium on solutions which guarantees optimility. Moreover, we can estimate the failure of every sub optimal solution. Finally, we suggest a heuristic given by a hybrid technique of the already presented approaches.
For given graph (G, ω) we consider the functions Recall, that due to [Arora and Barak, 2009] determing θ G (e) is a NP-hard problem and the results of [Tarjan, 1973] and [Johnson, 1975] solving the problem in O |θ G (e)|(|V | + |E|) , where θ G (e) can depend exponentially on G.
However, [Roberts and Kroese, 2007] could establish efficent and close estimations of the number of s − t paths. Since |O el (e)| = |P el (e − , e + )| the result enables us to determine θ G (e) efficently, with small failure. In contrast, ϕ G can be determined in O(|E| 2 ) due to Theorem 2.
Proof Let ε = {e 1 , . . . , e n } ∈ S(G, ω) be an arbitrarily ordered solution of the weighted FASP. We set G 0 = G and G i = (V i , E i ) := G E \ {e 1 , . . . , e i−1 } , for i ≥ 1 and denote with ω Gi the corresponding restriction of ω to E i . Now due to the fact that ξ Gi,ωi (e) ≤ ξ G,ω (e) for all e ∈ E i , 1 ≤ i ≤ n we obtain .
Remark 14 Note, that of course there are many more graphs with µ(G, ω) = Ω(G, ω) or υ(G, ω) = Ω(G, ω) then those used in the proof above. Nevertheless, it is hard to give a good condition on a graph such that µ(G, ω) = Ω(G, ω) or υ(G, ω) = Ω(G, ω) holds. For instance in [Ispolatov and Maslov, 2008] an example of a planar graph is given, where this is not the case. Certainly, the lower bounds can be used to improve the performance of a variety of algorithms solving the FASP or to control the quality of a heuristic as the Algorithms 7,8.
We consider the heuristics GREEDY-CUT and GREEDY-CUT & RESOLVE and discuss their properties.
Proposition 6 Let (G, ω) and ε be a solution of GREEDY-CUT or GREEDY-CUT & RESOLVE with respect to the effective weigth ξ. Then If in particular ω ≡ 1 then |ε| ≤ |E|/2.
Be replacing θ G , with ϕ G and ξ G,ω with η G,ω in GREEDY-CUT or GREEDY-CUT & RESOLVE the analouge argumentaion yields.
Proposition 7 Let (G, ω)with G = G o and ε be a solution of GREEDY-CUT or GREEDY-CUT & RESOLVE with respect to the effective weigth η. Then If in particular ω ≡ 1 then |ε| ≤ |E|/2.
Example 6 Consider the directed clique D 3 from Figure 5 with constant weight w ≡ 1. Then D 3 coincides with its resolved graph and regardless of possible choices every candidate ε the algorithm GREEDY-CUT or GREEDY-CUT & RESOLVE proposes, satisfies |ε| = 3. Since µ(D 3 ) = 3 every candidate is optimal.
Summarizing our results so far the heuristics GREEDY-CUT or GREEDY-CUT & RESOLVE solve the FASP with controlled variance in O(|E| 4 ), due to Theorem 2, in case of effective weight η and in O(f θ |E| 2 ) in case of effective weight ξ, where f θ shall control the computation steps of θ G (e), ∀e ∈ E. Even if we approximate θ(e) by the method of [Roberts and Kroese, 2007] the resulting algorithm remains an efficient heuristic. However, possibly there is a more accurate method available, given by a hybrid algorithm of the methods introduced in this article. We expect that an implementation of this strategy yields a fast and precise general FASP-SOLVER, which due to section 2 is therfore also a FVSP-SOLVER.
Strategy 1 For given weighted graph (G, ω) 1. Compute the resolved graph (S, τ ). 2. Choose a cycle c ∈ O el (S) and compute the meta graph M c . 3a. If the number of meta cycles m(c) is large determine a "good" feedback vertex set ν Mc of M c , with respect to the vertex weight using one of the known or presented methods.
3b. Alternatively, compute a maximal spanning tree T Mc = (V mc , E Tc ) with respect to the arc weight weight The union ν M of the meta feedback vertex sets of the meta graphs can be interpreted as arcs, which are forbidden to cut in G. The resulting feedback arc set ε will be optimal up to this obstruction ,i.e., we have where M * c * denotes the meta graph of G * with respect to c * = c/ν M . Hence, the quality of this heuristic can be evaluated by measuring how good G * approximates G. Thus, if |ν M | << |E| and the weight of the forbidden arcs is very high, i.e., the arcs of ν M will probably not be contained in any optimal solution, yielding the correctness of Strategy 1. Additionally, the lower bounds µ(G, ω), υ(G, ω) from section 8 can be used to validate correctness. Analogous controls can be thought of, if we choose the alternative 3b.

Discussion
An implementation of the described algorithms is planned to be realized. Certainly, a comparison of real run times with other approaches would be of great interest. So far we compare our results with other theoretical approaches. Due to the immense amount of results during the last decades we restrict our discussion to publications, which do not restrict themselves to very tight graph classes as tournaments [Karpinski and Schudy, 2010] or reducible flow graphs [Ramachandran, 1988]. Finally, we suggest how the approaches of this article might be adapted to related problems.
9.1 The algorithms from I. Razgon and J. Chen et al.
Note that for given graph (G, ω, γ) with arc weight ω and vertex weight γ a brute force method of solving the FASP/FVSP is given by considering every subset ε ⊆ E or ν ⊆ V and check whether the graphs G \ ε, G \ ν are acyclic, respectively. Since due to Remark 5, checking for acyclicity requires O(|E| 2 ) operations, we can generate a list of all FAS's or FVS's possessing length l A ≤ |P(E)| = 2 |E| , l V ≤ |P(V )| = 2 |V | . Choosing the cheapest FAS or FVS yields therefore a brute force algorithm solving the FASP/FVSP in O(|2 |E| |E| 2 |), O(2 |V | |E| 2 ), respectively.
The algorithm of [Razgon, 2007] solves the unweighted FVSP on simple graphs in O(1.9977 |V | |V | O(1) ). Compared to the brute force algorithm this yields almost no improvement. Therefore, the question occured whether the parametrised version of the FVSP could be solved by an fixed parameter tractable algorithm. Every NP-complete problem can be solved by a fixed parameter tractable algorithm, i.e., by choosing p as the problem size there is an algorithm with complexity O(f (p)), where f is an on the parameter p exponentially depending function. Thus, the term fixed parameter tractable could be misleading. The precise question is whether there exists an algorithm with run time O(f (k)|V | O(1) ) computing a FVS of length less than k or determing that no such set exists. Since the FVSP is NP-complete the function f will be exponentially dependent on k unless P = N P . Indeed, the algorithm of [Chen et al., 2008] solves the parametrised version of the FVSP in O |E| 4 4 k k 3 k! . Thus, f (k) = k 3 4 k k!, increases even worse than exponentially in k. Since a small feedback length almost always correlates to small graphs or very special graphs, e.g. tree-like graphs, even improvements of the algorithm won't be usefull in many applications. Therefore, the article might be seen as an purely theoretical approach answering this question. Indeed, to the best of our knowledge none of the algorithms were used for an implementation of a general FVSP/FASP-SOLVER.
In contrast, the algorithms CUT and CUT & RESOLVE solve the FASP or FVSP on weighted multi-digraphs in O 2 m |E| 4 log(|V |) and O 2 n ∆(G) 4 |V | 4 log(|E|) . The parameters m and n fulfill m ≤ |E| − |V | + 1, n ≤ (∆(G) − 1)|V | − |E| + 1 and can be computed in O(|E| 3 ), O(∆(G) 3 |V | 3 ), respectively. Thus, in both cases we can efficently control the run time of the exact solutions, which enables us to a priori decide whether the given instance shall be solved exactly or by an heuristic, e.g., Strategy 1. This crucial difference to the other approaches and the fact that Strategy 1 is an heuristic on the meta level and not on the instance itsself, makes us confident that an implementation generates a fast and accurate FASP/FVSP-SOLVER yielding a deep impact on computational an applied sciences. In [Lucchesi and Younger, 1978] and [Grötschel et al., 1985] a polytope of arc sets is assigned to a given graph. The FASP translates to solve a certain linear optimization over this polytope. In the case of planar or more general weakly acyclic graphs the polytope is integral, i.e., it possesses integral corners. Since the optimum will be obtained in at least one of the corners, one can apply the so called ellipsoid method for submodular functions [Grötschel et al., 1981] to find the right corner in polynomial time, see also [Martí and Reinelt, 2011] for further details. The approach is certainly remarkable though it contains some weaknesses.
The first problem is that though the algorithm runs in polynomial time the degree of the polynomial depends on a variety of parameters and cannot be estimated by hand a priori. Therefore, there are planar or weakly acyclic graphs, which can be solved efficently from a theoretical view point but actually a computer based implementation of the approach cannot ensure to meet a performance behavior applications require.
Secondly, the class of weakly acyclic graphs is not well classified yet. Thus, if we leave the class of planar graphs it is hard to say whether a given graph is weakly acyclic or not. For instance, consider the directed version of K 3,3 in Figure 8, which is known to be a weakly acyclic graph. Then it is not hard to see that the meta graph M c contains only one cycle. Thus, though G is not resolvable we can efficently solve the FASP on G by applying the algorithm CUT. In fact all examples of weakly acyclic graphs given in [Grötschel et al., 1981] turn out to be efficently solvable by CUT. Since the techniques of this article are not sensitive to topological obstructions as planarity we expect that there are instances of the FASP, which are neither planar nor weakly acyclic and even though can be solved efficently by CUT or CUT & RESOLVE. On the other hand, by arranging cycles along several meta cycles it is quite easy to construct a planar graph G with a number m ∈ O(|E|) of linear independent meta cycles. Thus, so far none of the approaches can state to solve the "larger" instance class efficently.
However, a deeper understanding of the meta graphs and their topology seem to be the most relevant tasks for further research, which might enable us to classify weakly acyclic graphs and yield a completely new perspective to other questions in graph theory.

Heuristics
In [Saab, 2001] a summarization of heuristic approaches is given and several new ones are introduced. The weak point in all these approaches is that they do not provide an non-empirical control of the variance of the heuristical solution from the optimum. Therefore, it is impossible to guarantee whether a solution is tight to the optimum. In [Huang et al., 2013] a good lower bound of the feedback length for Eulerian graphs is given and therefore it would be interesting how our bound behaves on this graph class. In general, if ε denotes a feedback set the heuristic GREEDY-CUT or GREEDY-CUT & RESOLVE proposes, then by Proposition 6 we have shown that if ω ≡ 1 then max µ(G), υ(G) ≤ Ω(G, ω) ≤ Ω G (ε) ≤ |E|/2 , yielding a controlled variance, as long as µ(G) can be determined or estimated from below, see [Roberts and Kroese, 2007]. We conjecture that (18) improves the known estimates given by [Berger and Shor, 1990]. Furthermore, other heuristics can be improved by the results of this article. For instance, the counter example for the Greedy approach introduced in [Ispolatov and Maslov, 2008] is resolvable and therefore RESOLVE & CUT closes this gap. A comparison of Strategy 1, with the approximation of [Even et al., 1998], where an approximation ratio in O log(Ω) log(log(Ω)) was established, might be usefull as well.

New Approach to the Subgraph Homeomorphism Problem
The NP-complete directed subgraph homeomorphism problem studied by [Fortune et al., 1980] is to consider two given graphs G = (V G , E G ) and P = (V P , E P ) together with an injective mapping m : V P −→ V G of vertices of P into the vertices of G. Now the problem is given by deciding whether there exists a injective mapping from arcs of P into pairwise node disjoint elementary paths of G such that an arc f with head h and tail t is mapped on an elementary path from m(t) to m(h). For a given graph G * = (V * , E * ), u, v ∈ V * , f = (p, q) ∈ E * with deg(p), deg(q) ≥ 2 we consider a special instance of the directed subgraph homeomorphism problem by setting G = G * \ f , P = (V P , E P ) with V P = {a, b, c, d}, E P = {(a, b), (c, d)} and m(a) = u, m(b) = p, m(c) = q, m(d) = v. Thus, solving the subgraph homeomorphism problem with respect to these special instances is equivalent to decide whether f is an arc of G * el (u, v). Hence, in addition to the polynomial time solvable instance classes known from [Fortune et al., 1980], e.g. stars, also problem instances as defined above are polynomial time solvable due to Theorem 2. Potentially, our observations can be generalized in regard of this problem.
Proof The graph G/ Γ can be computed in a single iteration over V , see Algorithm 9, where κ is explained later. Each non branching node v is removed and its two incident arcs e = (u, v) and f = (v, w) are replaced by an arc (u, w) with weight min{ω (e), ω(f )}. This is possible in time O(|V |) if the graph is represented as adjacency list where the targets of the outgoing arcs and the origins of the ingoing arcs are stored separately. Thus, the iteration over V yields a runtime of O(|V | 2 ).
To construct G/∼Φ we iterate over E Γ yielding G 1 = (G/ Γ )/ Φ , see Algorithm 10. For each arc e the weight is updated to e ∈F + (e) ω(e ) and the parallel arcs F + (e) \ {e} are purged from the graph. This can be realized in time O(|E| + |V |) = O(|E|) with a counting sort prepossessing step if the target nodes in the adjacency list are stored such that equal targets are stored consecutively. Because the construction of (C, δ) requires at most |V | iteration steps, i.e., if (G K , ω K ) = (C, δ) then K ∈ O(|V |), the essential minor (C, δ) can be computed in time O(|V | 3 + |V ||E| 2 ) ⊆ O(|V ||E| 2 ).
A simple extension of the algorithms allows to compute the information that is necessary to compute a solution ε ∈ S(G, ω) once ε C ∈ S(C, δ) is given. During the application of Γ and Φ we store the set of arcs of G that are part of a solution if the corresponding arc from G/ Γ and G/ Φ , respectively, are in a FAS. That is, an arc that gave the minimum weight of the two arcs in a non branching path or all parallel arcs, respectively, see Lemma A1 and Lemma A2 . In Algorithms 9,10 this is realized by κ which can be considered as κ : E C −→ P(E). The mapping is initialized as κ(e) ← {e}. Storing the arcs as linked list allows to update κ in linear time, i.e., the asymptotic run time of Algorithms 10,9 remains unchanged. Note that, argmin * returns only one arc in the case of equality. Now, replacing each arc e ∈ ε C by κ(e) yields ε, which due to Proposition 2 is a solution for the FASP on (G, ω). Thus, the replacement can be realized in time O(|E| 2 ).
Remark 15 Algorithm 9 may be extended to generate all solutions of the FASP for G given all solutions for the FASP on C. Therefore the equal weight alternatives in a non branching path need to be stored. The generation of the combinations of the alternatives of different paths yields all solutions. Certainly, then the run time depends exponentially on the number of possible combinations of alternatives.