## 1 Introduction  
Just as network flows generalize bipartite matchings, the stable marriage problem can be generalized to stable flows. An acyclic network model was presented by [PERSON] [1], while [PERSON] [2] introduced a stable flow model where the network is not necessarily acyclic. The aim of this paper is to extend the model of [PERSON] to multicommodity flows, but first we briefly describe his model and results.  
An instance of the stable flow problem consists of a network on digraph \(D=(V,A)\) with \(s,t\in V\) and capacities \(c\in\mathbb{R}_{+}^{A}\), and additionally for each node \(v\in V\) a linear order \(<_{v}\) on the arc set incident to \(v\). We assume that \(s\) has no incoming arcs and \(t\) has no outgoing arcs. The network along with the set of these preference orders is called a _network with preferences_. We note that outgoing arcs are never compared with incoming arcs, so the information that we really need is a linear order on the set of outgoing arcs \(\delta^{out}(v)\) and one on the set of incoming arcs \(\delta^{in}(v)\).  
We refer to directed walks simply as _walks_ in this paper. Let \(f\) be a flow of network \((D,s,t,c)\). A walk \(P=(v_{1},a_{1},v_{2},a_{2},\ldots,a_{k-1},v_{k})\) is said to _block_\(f\) if the following hold:  
1. each arc \(a_{i}\) is unsaturated in \(f\),
2. \(v_{1}=s\) or there is an arc \(a^{\prime}=v_{1}u\) for which \(f(a^{\prime})>0\) and \(a^{\prime}<_{v_{1}}a_{1}\),
3. \(v_{k}=t\) or there is an arc \(a^{\prime\prime}=wv_{k}\) for which \(f(a^{\prime\prime})>0\) and \(a^{\prime\prime}<_{v_{k}}a_{k-1}\).  
A flow is called _stable_ if there is no walk blocking it. Note that this definition is slightly different from the one in [2], but it is equivalent.  
The problem can be motivated by a network trading model: the nodes are traders that can buy and sell amounts of a certain product along the arcs of the digraph, and have preferences with whom they would like to trade (\(a<_{v}a^{\prime}\) means that trader \(v\) prefers trading along \(a^{\prime}\) to trading along \(a\)). A blocking walk represents a possible chain of transactions that offers a better selling option for the first trader of the walk than the current \(f\), and also offers a better buying option for the last trader. In this interpretation, nodes \(s\) and \(t\) represent the producers and the consumers.  
Since it will be convenient in the proofs to consider only finitely many walks, we introduce a finite subclass of walks that already determines stability. A walk \(P=(v_{1},a_{1},v_{2},a_{2},\ldots,a_{k-1},v_{k})\) is called a _quasi-path_ if \(v_{2},a_{2},\ldots,a_{k-2},v_{k-1}\) is a path. It is easy to see that every blocking walk contains a blocking quasi-path, so we may restrict the condition of stability to quasi-paths.  
[PERSON] [2] proved the following result, by reducing the stable flow problem to the stable allocation problem of [PERSON] and [PERSON] [3]. A different proof based on the Gale-Shapley algorithm, as well as an extension to flows over time, was given by [PERSON], [PERSON], and [PERSON] [4].  
**Theorem 1.1** ([PERSON] [2]).: _Every network with preferences has a stable flow. If the capacities are integral, then there is an integral stable flow._