Market Structure and Matching with Contracts∗
(Incomplete)
Alexander Westkamp
Bonn Graduate School of Economics
February 25, 2008
Abstract
I analyze matching models with fixed sets of contracts. These contract sets induce
a market structure, that is, a graph of potential interactions between the agents active
in the market. The main observation is that given a reference domain of preferences the
structural properties of this graph are important for a variety of interesting properties
of matching markets. In particular, there exists an individually rational and efficient
allocation if and only if the structure contains no 2 cycles, that is, cycles in which each
involved agent demands more than one contract on the cycle. The same condition is also
found to be necessary and sufficient to guarantee efficiency and core stability of chain
stable matchings. This result is then applied to many-to-many matching markets.
1
Introduction (Preliminary)
In a matching market, it is quite conceivable that some potentially beneficial partnerships
cannot be formed since agents may often be ignorant about the full set of available partnerships.
The simplest example is the dating market: In principle, disregarding sexual preference, each
human may form a partnership with any other human being but it seems impossible for any
human to be aware of this full set of possibilities when choosing a mate.
This ”ignorance” of options is, however, also present in less pathological examples of matching problems: A popular way of organizing matching markets is that, say, doctors apply to a
∗
This paper was written while I was a Visiting Fellow at Harvard University. Its hospitality and the financial
support by the German Academic Exchange Agency (DAAD) are gratefully acknowledged. I would like to
thank Benny Moldovanu, Michael Ostrovsky, Lars Ehlers, Itay Fainmesser and Fuhito Kojima for very helpful
comments and discussions. Any remaining errors are, of course, my responsibility.
1
number of, say, hospitals, who then form preferences over applicants and both sides of the market submit their rankings to a centralized agency that ultimately proposes a match. Examples
are the National Resident Matching Program (NRMP) studied in Roth (1984) and Roth and
Peranson (1999), or the German college admissions system studied in Westkamp (2007). In the
German college admissions problem, for example, students are not allowed to apply to more
than six colleges. Since students cannot be matched to colleges at which they did not apply,
some partnerships cannot be formed since at least one party is unaware of this option. Once
the interviewing or application stage is over the market structure, that is, who can contract
with whom, is known. Given a fixed domain of preferences over partnerships, it is conceivable
that the possibility to achieve certain goals may depend on this structure. Yet, most papers
in theory and applications of matching markets do not incorporate structural properties of the
market into their analysis and rely solely on assumptions about preferences.
In this paper I study the effects of market structure on the relationships between various
solution concepts. This approach seems to be particularly fruitful in models with an exogenously
fixed set of contracts such as Hatfield and Milgrom (2005) and Ostrovsky (2007). An implicit
assumption in these papers is that each pair of nodes could, in principle, contract with each
other. The validity of this assumption may be crucial for the counterexamples that are often
used to prove ”almost necessary” conditions.
To investigate this issue, I use the supply chain model introduced in Ostrovsky (2007). This
paper starts from an exogenous set of bilateral contracts, where each contract has exactly one
seller and one buyer. Ostrovsky (2007) introduces a generalization of pairwise stability which he
refers to as chain stability and shows that if preferences satisfy a variant of substitutability such
matchings always exist. The problem with this concept is that without further assumptions (a)
it may allow for allocations that are not in the core, and (b) chain stable allocations are not
necessarily efficient. Without directly imposing further restrictions on preferences, I analyze
the impact of the structural properties of the matching market on the relationship between
these solution concepts. More precisely, given a set of contracts I define a (directed) graph of
potential interactions between agents which includes an edge from agent v to agent w if and
only if there is a contract in which v is the seller and w is the buyer. My first main result is that
the absence of cycles in which each agent can sign two contracts is necessary and sufficient for
(i) the core stability of chain stable matchings, (ii) the efficiency of chain stable networks, and
(iii) the existence of an individually rational and efficient allocation. An interesting byproduct
of this analysis is that I’m able to show that there exists an efficient and individually rational
network for all preference profiles if and only if every chain stable matching is efficient for all
2
profiles in the reference domain. This provides a new rationale for using pairwise stability
concepts in general matching models. Furthermore, these results encompass some interesting
special cases that have been covered in the literature.
The papers that are most closely related to the present study are Abeledo and Isaak (1992)
and Ergin (2002). Abeledo and Isaak (1992) start from a fixed structure of potential partnerships in a simple one-to-one matching model (without contracts) represented by an undirected
graph. Their main result is that a stable matching will exist for all preference profiles if and
only if the graph of potential partnerships is bipartite. In their setting the undirected graph can
be interpreted as a complete description of mutually acceptable agents. This concept has no
direct extension if the desirability of a contract depends on the available set of contracts as in
Ostrovsky (2007), but the graph of potential interactions between agents proves to be a valuable
extension to supply chain models. Although the results in this paper are of a similar nature as
Abeledo and Isaak (1992)’s, the aim is different since I accept a restricted domain of preferences
as a primitive and focus mostly on the effect of market structures on the relationships between
various solution concepts.
In a different context, the importance of certain acyclicities for the relationship between
solution concepts has been observed by Ergin (2002). He studies a priority based allocation
problem in which a number of indivisible objects has to be distributed among a number of
agents. For each object, there is a priority ranking of agents and an allocation is envy free, if
no agent envies the allocation of another agent and at the same time has higher priority for the
associated object. The main result is that efficiency and envy freeness are compatible for all
preference profiles if and only if priority rankings satisfy an acyclicity notion. One of the main
differences to my paper is that Ergin (2002) considers a model that is structurally equivalent to
a many-to-one two sided matching model while I consider the much more general supply chain
model of Ostrovsky (2007).
A number of other papers have noted the importance of the structure of interactions for
solution concepts in cooperative games: Papai (2007) analyzes how to restrict allowable trades
in a general indivisible goods exchange market in order to guarantee a singleton core. Kalai,
Postlewaite, and Roberts (1978) compare core outcomes between an unrestricted market game
and a game in which some players may not form coalitions.
The paper is structured as follows: Section 2 contains the basic model and the main results
of the paper. In section 3 I apply this result to a many-to-many two sided matching market
and section 4 concludes.
3
2
The Supply Chain Model
This section briefs the supply chain model from Ostrovsky (2007) and introduces the main ideas
by means of a simple example. There is a finite set of nodes V and an exogenously given set
of contracts X. The only important assumption on the set of contracts is that each contract
represents the sale of an ”object” from a ”seller” to a ”buyer”.1 If there is a contract x ∈ X in
which node v is the seller and w is the buyer, w (v) is a(n) downstream (upstream) node for
v (w). As in Ostrovsky (2007) I assume that there is a partial ordering on the set of nodes
such that v w if and only if w is a downstream node for v. This means in particular that if
v can sell something to w, there is no contract in which w sells something to v.
Since there is a finite set of contracts, preferences can be described directly over sets of
contracts. Node v ∈ V is involved in contract x ∈ X if it is either the seller or the buyer in this
contract. Given a set of contracts Y ⊆ X, let Y (v) denote the set of all contracts involving v.
A typical preference relation for node v is denoted by Pv and Y Pv Z for two sets of contracts
Y, Z ⊂ X denotes that v strictly prefers Y over Z. Each node cares only about the contracts
it is involved in (no externalities), that is, Y Pv Z if and only if Y (v)Pv Z(v). Furthermore, no
node is ever indifferent between two distinct sets of contracts (strict preferences). Given a strict
preference relation Pv , Rv denotes the associated weak preference relation, that is, Y Rv Z if and
only if either Y Pv Z or Y (v) = Z(v). A set of contracts Y is acceptable according to Pv if Y Rv ∅.
Preferences will sometimes be written as Pv = Y, Z, which means that Y Pv ZPv ∅ and that Y, Z
are the only acceptable nonempty sets of contracts to v. Given Pv , node v’s most preferred
subset of a set of contracts Y ⊂ X, its choice set, is denoted by Chv (Y ). By assumption of
strict preferences, Chv (Y ) is single-valued for each v ∈ V and Y ⊂ X. Subscripts will be
omitted whenever it is clear which node is considered.
Given a node v ∈ V and a set of contracts Y ⊂ X(v), Dv (Y ) denotes the set of contracts
in which v is a seller and Uv (Y ) denotes the set of contracts in which v is a buyer. Ostrovsky
(2007) introduces the following assumptions about preferences over sets of contracts: Node v’s
preferences over contracts are same side substitutable (SSS in the following) if for any two sets of
contracts Y and Z we have that ((D(Y ) = D(Z))∧(U (Y ) ⊂ U (Z))) ⇒ U (Ch(Z))∩Y ⊂ Ch(Y )
and ((D(Y ) ⊂ D(Z)) ∧ (U (Y ) = U (Z))) ⇒ D(Ch(Z)) ∩ Y ⊂ Ch(Y ). Node v’s preference
satisfy cross side complementarity (CSC in the following) if for any two sets of contracts Y
1
This generalizes most of the discrete matching models in the literature. For example, Gale and Shapley
(1962)’s marriage problem results when we designate one of the two market sides to take the role of sellers,
assume that there is only contract between a given pair of nodes (”marriage”) and require that each node signs
at most one contract. See Ostrovsky (2007) for a thorough discussion of the nature of contracts and how this
model encompasses the various special cases.
4
and Z we have that ((D(Y ) = D(Z)) ∧ (U (Y ) ⊂ U (Z))) ⇒ D(Ch(Y )) ⊂ D(Ch(Z)) and
((D(Y ) ⊂ D(Z)) ∧ (U (Y ) = U (Z))) ⇒ U (Ch(Y )) ⊂ U (Ch(Z)).
A network µ is a set of contracts.
Network µ is individually rational for node v, if
Chv (µ(v)) = µ(v). A chain is a set of contracts {x1 , . . . , xn } together with an associated
sequence of nodes {v1 , . . . , vn+1 } such that (i) v1 is the seller in x1 , (ii) vi+1 is the buyer in
xi and the seller in xi+1 , i ∈ {1, . . . , n − 1}, and (iii) vn+1 is the buyer in xn . Network µ
is blocked by the chain {x1 , . . . , xn } ⊂ X \ µ if (i) x1 ∈ Chv1 (µ(v1 ) ∪ {x1 }), (ii) {xi , xi+1 } ⊂
Chvi+1 (µ(vi+1 ) ∪ {xi , xi+1 }), i ∈ {1, . . . , n − 1}, and (iii) xn ∈ Chvn+1 (µ(vn+1 ) ∪ {xn }).
A network µ is chain stable, if it is individually rational for each node and there is no chain
that blocks it. One of the main contributions of Ostrovsky (2007) is to show that as long
as node’s preferences satisfy SSS and CSC, the set of chain stable matchings is a non-empty
lattice. This suggests that chain stability may be the correct stability notion for the supply
chain model. In this section, I examine the relationship between chain stability and other
solution concepts that have played a prominent role in less general matching models.
First of all, a network is efficient if there is no other network that makes every node weakly
better and some nodes strictly better off. A network µ is blocked by a coalition A ⊂ V via
network µ0 if (i) v ∈ A and x ∈ µ0 (v) imply that the other node involved in x belongs to A as
well, (ii) µ0 (v)Rv µ(v), for all v ∈ A, and (iii) there exists a v ∈ A such that µ0 (v)Pv µ(v). A
network µ is in the core (or core stable), if it is not blocked by any coalition.
In the many-to-one matching problem, the core is equal to the set of pair wise stable
matchings (see e.g. Chapter 3 in Roth and Sotomayor (1991)). This equivalence may, however,
break down even in two-sided many-to-many matching problems where the core can be disjoint
from the set of pair wise stable matchings and may fail to be individually rational, see e.g.
Konishi and Unver (2006) and Sotomayor (1999) as well as the references therein. This is often
seen as a shortcoming of the core in more general matching models and used as a supporting
argument for stability concepts based on the deviation of pairs (or chains as in the current
setup). While this is certainly a valid argument, it neglects that these stability concepts may
have serious deficits themselves as the following example demonstrates for the case of chain
stability.
Example 1. Consider a supply chain model with three nodes v1 , v2 , v3 and suppose there is
exactly one contract between each pair of nodes, where xi is the contract between vi and vi+1
(I set v4 := v1 ). Node v1 is the seller in both contracts involving it and node v2 is the buyer
5
in x1 and the seller in x2 . Preferences are as follows: Pv1 = x3 , {x1 , x3 },2 Pv2 = {x1 , x2 } and
Pv3 = x2 , {x2 , x3 }. It is straightforward to check that this preference profile satisfies SSS and
CSC.
The unique chain stable network is the empty network, while the unique core stable network
is the set of all contracts. Note that both solution concepts have serious shortcomings in this
example: The unique core allocation is not individually rational and the unique chain stable
network is not efficient. So while chain stability is unambiguously an appealing game theoretic
solution concept, it is not clear whether it has the same appeal from a normative perspective. In
the present example, however, it is easy to see that there is no individually rational and efficient
network, thus leaving little hope for a solution concept that is descriptively and normatively
appealing.
Note that in the above example, the structure of potential interactions induced by the set of
available contracts is cyclic (this will be made more precise in the next subsection). Suppose
now that node v3 can sign at most one contract. In this case, there are four possible preference
relations for this node. It is straightforward to check that, keeping the preferences of the other
nodes fixed, for each of these relations any chain stable network is efficient. For example, for
the relation Pv03 = x2 , x3 the unique chain stable network is {x3 }. In the next subsection I show
that this is a special case of a general result about (a)cyclic market structures.
3
Market Structure and Solution Concepts
This section develops conditions under which the above mentioned problems do not arise.
Instead of imposing further preference restrictions, I confine myself to the domain of preferences
satisfying SSS and CSC and study how the market structure induced by the set of available
contracts relates to the problems identified in example 1.
For a clean formulation of the results it is useful to introduce capacities:3 A node v ∈ V
has upstream capacity qvU , if it can sign at most qvU upstream contracts. Node v’s downstream
capacity qvD and total capacity q v are defined similarly, and the triple qv = (qvU , qvD , q v ) summarizes node v’s capacity constraints. For the remainder of this section I maintain a capacity
vector q = (q U , q D , q) so that each node’s maximum number of upstream, downstream and
total contracts is fixed throughout. A set of contracts Y ⊂ X violates v’s capacity constraints,
if Uv (Y (v)) > qvU , Dv (Y (v)) > qvD or Y (v) > q v . A preference profile P corresponds to q, if
2
3
This construction is also used in Konishi and Unver (2006).
Alternatively, one would need to append a condition on preferences to the definition of a 2-cycle.
6
there does not exist a node v and a set of contracts A ⊂ X(v) such that A violates v’s capacity constraints and yet APv ∅. Let Pq denote the set of all preference profiles corresponding
to q that satisfy SSS and CSC. Given a profile P ∈ Pq let CST (P ) denote the set of chain
stable matchings, C(P ) denote the set of core allocations, IR(P ) denote the set of individually
rational allocations, and E(P ) denote the set of efficient allocations.
I now give a precise definition of market structure and introduce certain kinds of cycles that
will be important in determining the relationship between the various solution concepts. A set
of contracts X induces a simple directed graph GX = (V, E) which includes an edge (v, w) ∈ E
from v to w if and only if there exists a contract in which v is the seller and w is the buyer.4
I call (GX , q) the market structure induced by X. Given GX , the associated undirected graph
is the graph that results when we replace each directed edge (v, w) with one undirected edge
{v, w}. A cycle in GX is a subgraph G0 = (V 0 , E 0 ) of the underlying undirected graph such
that V 0 = {v1 , . . . , vn } and E 0 = {{v1 , v2 }, . . . , {vn−1 , vn }, {vn , v1 }}. In the following, a cycle
will be denoted by its cyclic sequence of vertices: C = v1 , . . . , vn . The set of edges of a cycle
C will be denoted by E(C). Note that the assumption of a transitive downstream-upstream
ordering of the nodes rules out directed, but not undirected cycles. Let C = v1 . . . vn be a cycle
in GX . Node vi is (i) a passing node of C, if {(vi−1 , vi ), (vi , vi+1 )} ⊂ E(C), (ii) an impasse of C,
if {(vi−1 , vi ), (vi+1 , vi )} ⊂ E(C), and (iii) a bifurcation of C, if {(vi , vi−1 ), (vi , vi+1 )} ⊂ E(C) (I
set v0 := vn and vn+1 := v1 ). A passing node v is capacity constrained on C if qvU = 0, qvD = 0
or q v ≤ 1. Similarly, a bifurcation (an impasse) v is capacity constrained on C if qvD ≤ 1 or
q v ≤ 1 (qvU ≤ 1 or q v ≤ 1).
A 2 cycle in (GX , q) is a cycle C in GX such that no node is capacity constrained on C.
In a 2 cycle, each node could, in default of better options, be willing to sign a set of contracts
with its immediate neighbors on the cycle and situations such as in example 1 may arise. It
turns out that the absence of 2 cycles is sufficient to ensure the core stability of every chain
stable network. In example 1 it would thus be sufficient to assume that one of the three nodes
cannot sign more than one contract. Recall that the sets of nodes and available contracts as
well as the vector of capacity constraints are fixed throughout.
Theorem 1. The following are equivalent:
(i) There is no 2 cycle in (GX , q).
(ii) Every chain stable network is core stable and every core allocation is individually rational,
that is, CST (P ) ⊂ C(P ) ⊂ IR(P ) for all P ∈ Pq .
4
While there may be multiple potential contracts between two nodes, there is at most one edge connecting
two nodes in GX .
7
(iii) Every chain stable network is efficient, that is, CST (P ) ⊂ E(P ) for all P ∈ Pq .
(iv) There exists an efficient and individually rational network, that is, E(P ) ∩ IR(P ) 6= ∅ for
all P ∈ Pq .
The equivalence of (iii) and (iv) is quite remarkable since it shows that the only reason for
a chain stable matching to fail the efficiency criterion is that there is, in general, no way to
reconcile any stability notion encompassing individual rationality with efficiency. There seems
to be a widespread consensus that individual rationality is a very important property even in
general matching models. For example, all of the stability concepts, apart from the core, in
Echenique and Oviedo (2006) and Konishi and Unver (2006) require individual rationality. So
the equivalence of (iii) and (iv) could be interpreted as saying that chain stability allows for a
compromise with efficiency if and only if it is absolutely necessary in order to guarantee any
sensible notion of stability. This lends further support to the adoption of chain stability as the
relevant stability concept for supply chain models. Before going into the proof of the theorem,
I’ll illustrate its usefullness with three applications.
Application 1 (Many-to-Many Matching). Consider a two-sided many-to-many matching
model with substitutable preferences in which each firm-worker pair is directly connected. This
can be formulated as a supply chain model in which there are two sets of nodes: upstream nodes
(firms) and downstream nodes (workers).5 Now suppose all firms may sign multiple contracts
whereas there is only one worker, say W , who is willing to work for more than one firm. Since
the market under consideration is two sided, each cycle must contain at least two workers. But
this implies that each cycle contains at least one worker demanding only one contract. This
application of Theorem 1 is motivated by example 2.2 in Echenique and Oviedo (2006). They
present an example in which the presence of only one worker like W can have a big impact on
the set of stable allocations - irrespective of the size of the market.6 From the above, we can
infer that although the impact may be large, the efficiency and core stability of pairwise-stable
allocations can be still be guaranteed.
Application 2 (Exclusive and Non-Exclusive connections). Models similar to the one in application 1 can be used as building blocks of more general 2-cycle-free supply chain models. I
˙ 2 ∪V
˙ 3 , where V1 comprises the set
assume that the set of nodes can be partitioned as V = V1 ∪V
of sellers of basic inputs, V2 is the set of intermediate nodes, and V3 is the set of buyers of final
products. Furthermore, I assume that two nodes in the same Vi cannot sign a contract with
5
Note that in this setting chain- reduces to pairwise-stability.
They compare the stable allocations under the assumptions that W is and is not allowed to actually sign
multiple contracts, respectively.
6
8
each other. Each node in V1 can sign at most one contract while nodes in V2 and V3 can sign
an arbitrary number of contracts. I make the following structural assumption: At most one of
the nodes in V2 connected to a given node in V3 is connected to other nodes in V3 as well, that
is, each buyer has at most one non-exclusive connection with an intermediary. This is the only
restriction on the pattern of connections. The simplest special case of this results when there is
one central intermediary (a market) to which all buyers are connected and, in addition, a buyer
may be connected to a number of ”friends” to which he has exclusive access. Clearly, there
cannot be any 2 cycles in this example since any cycle in the connections graph must include
at least one supplier of basic inputs who, by assumption, signs at most one contract. So in
particular, any chain stable matching is efficient and core stable in this example.
I now proceed to the proof of Theorem 1. The most difficult part of the proof is to show
that (i) implies (ii). The main idea there is that if an individually rational network µ is blocked
by a coalition A via network µ0 , there must exist at least one node v ∈ V that chooses at least
one contract x that is not part of µ when required to choose from contracts in µ(v) ∪ µ0 (v).
Suppose that x is a downstream contract for v. Employing SSS, we know that x will still be
chosen when all other downstream contracts in µ0 (v) \ µ(v) are deleted. If x is not chosen when
v can choose from only µ(v) ∪ {x}, there must, by rationality, exist an upstream contract x0 in
µ0 (v)\µ(v) that v chooses when its options are µ(v), x and the upstream contracts in µ0 (v)\µ(v).
SSS and rationality leave us with the following two possibilities: x0 ∈ Chv (µ(v) ∪ {x0 }) and
{x, x0 } ⊂ Chv (µ(v) ∪ {x, x0 }). Now apply the same argument to the other contracting node in
x0 . Since the set of nodes is finite, this procedure must eventually end if there are no 2 cycles.
The proof takes care of the various contingencies that may arise.
Proof :
(i) ⇒ (ii) Let P ∈ Pq be arbitrary. I show first that C(P ) ⊂ IR(P) in the absence of 2 cycles.
Note that µ ∈ C(P ) implies that µ(v)Pv ∅ for all v ∈ V . Suppose there is a node v ∈ V
such that Chv (µ(v)) 6= µ(v). This implies µ(v) 6= ∅ and, in fact, |µ(v)| ≥ 2 since otherwise
v would block µ. Let V1 ⊂ V \{v} be the set of nodes that are involved with some contract
in Chv (µ(v)). Network µ must contain a contract between a pair in V1 × (V \ {v}) since it
would be blocked by the coalition v ∪ V1 otherwise. If µ contained a contract between two
nodes in V1 we would have found a 2 cycle in (GX , q). Hence, there must exist a nonempty
set V2 ⊂ V \ {v ∪ V1 } of nodes that sign a contract with some node in V1 under µ. Now
suppose that we have defined V1 , . . . , Vk in this way so that Vk ⊂ V \ {v ∪ V1 ∪ . . . ∪ Vk−1 }
9
is the set of nodes that sign a contract with some node in Vk−1 under µ. Then µ must
contain a contract between a pair in Vk × (V \ {v ∪ V1 ∪ . . . ∪ Vk−1 }) since it would be
blocked by the coalition v ∪ (∪ki=1 Vi ) otherwise. To see this note that in the opposite
case, no contract involving a node in V1 ∪ . . . , Vk would have been deleted so that all
these nodes would be indifferent between µ and a network that excludes contracts in
µ(v) \ Chv (µ(v)). If µ contained a contract between two nodes in Vk there must be a 2 cycle of (GX , q) consisting of nodes in v ∪V1 . . .∪Vk . Hence, there must exist a nonempty set
Vk+1 ⊂ V \{v ∪V1 ∪. . .∪Vk } of nodes that sign a contract with some node in Vk under µ. If
there is no 2 cycle, the procedure would thus run forever, contradicting the finiteness of V .
The proof that every chain stable matching is in the core is a bit more involved and I
first introduce some additional notation. Given a node v ∈ V and a contract x ∈ X(v),
let Sx,v denote the direction of the contract relative to v, that is, Sx,v = Uv if and only
if x is an upstream contract for v. Let S x,v denote the complementary direction, that is,
S x,v = Dv if and only if Sx,v = Uv .
Let P ∈ Pq be arbitrary. To prove the theorem let µ be (w.l.o.g.) an individually rational
network with respect to P that is weakly dominated by network µ0 via coalition A. I
show that µ cannot be chain stable. The following algorithm, called chain algorithm, will
be key to the proof.
Step 1: Let v1 ∈ A be a node such that µ0 (v1 ) \ µ(v1 ) 6= ∅. Let x ∈ Chv1 (µ(v1 ) ∪ µ0 (v1 )) \
µ(v1 ) be arbitrary.
If x ∈ Chv1 (µ(v1 ) ∪ {x}) set x1 := x and B1 := ∅.
Else let x1 ∈ S x,v1 (Chv1 [µ(v1 ) ∪ {x} ∪ S x,v1 (µ0 (v1 ))] \ µ(v1 )) be arbitrary.
If x1 ∈ Chv1 (µ(v1 ) ∪ {x1 }) set B1 := ∅.
Else set B1 := {v1 }.7
..
.
Step k + 1: Let vk+1 6= vk be the other node associated with xk .
If xk ∈ Chvk+1 (µ(vk+1 ) ∪ {xk }) stop.
If xk ∈ Chvk+1 (µ(vk+1 ) ∪ µ0 (vk+1 )) but xk ∈
/ Chvk+1 (µ(vk+1 ) ∪ {xk }), let xk+1 ∈
S xk ,vk+1 (Chvk+1 [µ(vk+1 ) ∪ {xk } ∪ S xk ,vk+1 (µ0 (vk+1 ))] \ µ(vk+1 )) be arbitrary and set
Bk+1 := Bk .
If xk ∈
/ Chvk+1 (µ(vk+1 ) ∪ µ0 (vk+1 )) let x ∈ Chvk+1 (µ(vk+1 ) ∪ µ0 (vk+1 )) \ µ(vk+1 ) be
7
The sequence {Bk } is a stack of nodes that are marked for later processing.
10
arbitrary.
If x ∈ Chvk+1 (µ(vk+1 ) ∪ {x}) set xk+1 := x and Bk+1 := Bk
Else let xk+1 ∈ S x,vk+1 (Chvk+1 [µ(vk+1 ) ∪ {x} ∪ S x,vk+1 (µ0 (vk+1 ))] \ µ(vk+1 )) be
arbitrary.
If xk+1 ∈ Chvk+1 (µ(vk+1 ) ∪ {xk+1 }) set Bk+1 := Bk .
Else set Bk+1 := Bk ∪ {vk+1 }.
Lemma 1. The chain algorithm is well defined and terminates after a finite number of
steps. For each step k of the chain algorithm at least one of the following statements is
true
(i) xk−1 ∈ Chvk (µ(vk ) ∪ {xk−1 }),
(ii) {xk−1 , xk } ⊂ Chvk (µ(vk ) ∪ {xk , xk−1 }),
(iii) xk ∈ Chvk (µ(vk ) ∪ {xk }), or
(iv) {x, xk } ⊂ Chvk (µ(vk ) ∪ {x, xk }) for some x ∈ S xk ,vk [µ0 (vk ) \ (µ(vk ) ∪ {xk−1 })].
Proof of Lemma 1: I show first that the list of cases listed in the description of the
algorithm is exhaustive and that one of (i) to (iv) holds at each step of the procedure.
Note that if µ0 weakly dominates µ via A and µ ∈ IR(P ) there must be a node v1 ∈ A
such that Chv1 (µ(v1 ) ∪ µ0 (v1 )) \ µ(v1 ) 6= ∅ to initiate the algorithm. By SSS it must be
the case that x ∈ Chv1 (µ(v1 ) ∪ µ0 (v1 )) \ µ(v1 ) implies x ∈ Chv1 [µ(v1 ) ∪ {x} ∪ S x,v1 (µ0 (v1 ))].
If x ∈ Chv1 (µ(v1 ) ∪ {x}) the procedure sets x1 := x (so that (iii) holds), B1 := ∅ and
proceeds with step 2. If x ∈
/ Chv1 (µ(v1 ) ∪ {x}) it must, by revealed preference, be the
case that S x,v1 (Chv1 [µ(v1 ) ∪ {x} ∪ S x,v1 (µ0 (v1 ))] \ µ(v1 )) 6= ∅. If x1 is an arbitrary element
of this set, we must have, by the same arguments, that either x1 ∈ Chv1 (µ(v1 ) ∪ {x1 })
(so that case (iii) holds) or {x, x1 } ⊂ Chv1 (µ(v1 ) ∪ {x, x1 }) (so that case (iv) holds). In
the latter case the procedure sets B1 := {v1 } and marks v1 for later processing.
Now suppose we have shown that one of (i) - (iv) holds for steps 1 through k of the
procedure and that the associated sequences of nodes and contracts are {vj }kj=1 and
{xj }kj=1 . Note that we must have that {v1 , . . . , vk } ⊂ A. If vk+1 is the other node
associated with xk we must have that vk+1 ∈ A and thus µ0 (vk+1 )Pvk+1 µ(vk+1 ) (since
xk ∈ µ0 \ µ). Hence Chvk+1 (µ(vk+1 ) ∪ µ0 (vk+1 )) \ µ(vk+1 ) 6= ∅ by the individual rationality
of µ. By SSS it must be the case that xk ∈ Chvk+1 (µ(vk+1 ) ∪ µ0 (vk+1 )) \ µ(vk+1 ) implies
xk ∈ Chvk+1 [µ(vk+1 ) ∪ {xk } ∪ S xk ,vk+1 (µ0 (vk+1 ))]. If xk ∈ Chvk+1 (µ(vk+1 ) ∪ {xk }) case
(i) holds and the procedure stops. If xk ∈
/ Chvk+1 (µ(vk+1 ) ∪ {xk }) it must, by revealed
11
preference, be the case that S xk ,vk+1 (Chvk+1 [µ(vk+1 )∪{xk }∪S xk ,vk+1 (µ0 (vk+1 ))]\µ(vk+1 )) 6=
∅. The algorithm selects an arbitrary element xk+1 of this set. By the same arguments
as above it must be the case that either xk+1 ∈ Chvk+1 (µ(vk+1 ) ∪ {xk+1 }) (so that case
(iii) holds) or {xk , xk+1 } ⊂ Chvk+1 (µ(vk+1 ) ∪ {xk+1 , xk }) (so that case (ii) holds). Now if
xk ∈
/ Chvk+1 (µ(vk+1 ) ∪ µ0 (vk+1 )) the algorithm selects a contract xk+1 from the nonempty
set Chvk+1 (µ(vk+1 ) ∪ µ0 (vk+1 )) \ µ(vk+1 ). If xk+1 ∈ Chvk+1 (µ(vk+1 ) ∪ {xk+1 }) case (iii)
holds and the algorithm sets Bk+1 := Bk . Else, by revealed preference and xk−1 ∈
/
Chvk+1 (µ(vk+1 )∪µ0 (vk+1 )), there must exist a contract x ∈ S xk ,vk [µ0 (vk )\(µ(vk )∪{xk−1 })]
such that (iv) holds. In this case the algorithm marks vk+1 for later processing by setting
Bk+1 := Bk ∪ {vk+1 } and proceeds with step k + 2.
I show now that the algorithm must terminate after a finite number of rounds. Suppose
to the contrary that this was not the case. Then, since the set of nodes is finite there
must exist indices i and j such that i < j and vi = vj . We can assume that all nodes
between vi and vj are different so that we have a cycle C = vi , . . . , vj−1 . In network µ0 ,
node vm signs the contracts xm−1 (with vm−1 ) and xm (with vm+1 ). In particular, all of
the nodes on C must be in A. Note that the sequence of contracts {xk }k produced by the
algorithm lies entirely in µ0 \ µ. Since µ0 weakly dominates µ via A and µ is individually
rational it must be the case that µ0 (v)Pv ∅, for all v ∈ A. But this implies that C is a 2
cycle in (GX , q) and completes the proof of Lemma 1.
In the following I use the chain algorithm as a subroutine for another algorithm that
finds a chain block of µ in the absence of 2 cycles. This algorithm uses a special version
of the chain algorithm that starts from a given node-contract pair: Taking v ∈ V and
x ∈ µ0 (v) \ µ(v) as given, the algorithm proceeds as if the first step of the chain algorithm
yielded v1 := v, x1 := x and B1 = ∅ (so that v2 is the other contracting node in x). The
chain block algorithm works as follows.
Step 1: Run the chain algorithm and let the resulting sequence of nodes, contracts and
stacks be denoted by {vk1 , x1k , Bk1 }k≥1 . Let K1 be the last step of the algorithm. If
1
1
BK
= ∅ stop. Otherwise let j1 be the highest index such that vj11 ∈ BK
. Set
1
1
v12 := vj11 and proceed with step 2.
..
.
Step t + 1: Let xt+1
∈ S xtj
1
t
,v1t+1 (µ
0
t+1
(v1t+1 )\µ(v1t+1 )) be such that {xtjt , xt+1
1 } ∈ Chv1t+1 (µ(v1 )∪
t+1
t+1
{xtjt , xt+1
1 }). Run the chain algorithm starting at (v1 , x1 ). Let the sequence of
12
t+1
nodes and contracts in this algorithm be denoted by {vkt+1 , xt+1
k , Bk }k≥1 . Let Kt+1
t+1
be the last step of the algorithm. If BK
= ∅ stop. Otherwise let jt+1 be the highest
t+1
and proceed with step t + 2.
index such that vjk ∈ BKt+1 . Set v1t+2 := vjt+1
t+1
..
.
Note that the algorithm is well defined since a node is put on the stack if and only if only
case (iv) from Lemma 1 applies. To see that it terminates after a finite number of steps,
note that by Lemma 1 the chain algorithm must terminate as all nodes encountered are
different. If the algorithm ran forever, there would thus have to be a node v such that
v = vks = vlt for some t > s and some k, l. As above we can assume that all nodes between
t
vks and vlt are different so that we have a cycle C = vks , . . . , vl−1
. Note that the sequence
of contracts produced by the algorithm lies entirely in µ0 \ µ. Since all nodes between vks
t
and vl−1
are different, the associated subsequence of contracts from xsk to xtl−1 must be
repetition-free. Since µ0 weakly dominates the individually rational network µ, C must
be a 2 cycle in (GX , q).
So let T be the last iteration of the chain algorithm. I now show how to find a blocking chain of µ. Since KT is the last step of this iteration, we have that xTKT −1 ∈
T
T
= ∅ one of the cases (i) to (iii) from Lemma 1
) ∪ {xTKT −1 }). Since BK
ChvKT (µ(vK
T
T
T
holds for each but the first step of the last iteration of the chain algorithm. If there is
a non initial step of this iteration for which (iii) holds, let j be the last step with this
property. Then xTj , . . . , xTKT −1 is a blocking chain.8 If there is no step such that (iii) holds
consider the sequence of nodes and contracts in the T −1st iteration of the chain algorithm
starting at vjTT−1
. By construction, there is no step i > jT −1 such that only case (iv) from
−1
Lemma 1 applies. If there is a step i > jT −1 of the T − 1st iteration such that (iii) applies,
let l be the largest index with this property. Then xTl −1 , . . . , xTK−1
is a blocking chain.
T −1
If there is no node such that (iii) applies, xTKT −1 , . . . , xT1 , xTjT−1
, xTjT−1
, . . . , xTK−1
is a
−1
−1 +1
T −1 −1
blocking chain. This completes the proof that (i) ⇒ (ii).
(ii) ⇒ (iii) Suppose that (ii) holds but that there exists a preference profile P ∈ Pq and a
network µ ∈ CST (P ) \ E(P ). By definition, this means that there exists a network µ0
that all nodes weakly and some strictly prefer over µ. But then µ would be dominated
by µ0 via V which contradicts (ii).
8
By definition of j case (ii) from Lemma 1 must hold for all steps k ∈ {j + 1, . . . , KT − 1}. Furthermore
T
T
T
T
∈ S xTk ,vk+1
(µ0 (vk+1
) \ µ(vk+1
)) so that node vk+1
has different roles in xTk and xTk+1 as required in the
definition of a chain block. A similar remark applies to the cases discussed below.
xTk+1
13
(iii) ⇒ (iv) By Theorem 1 in Ostrovsky (2007) a chain stable network always exists when
preferences satisfy SSS and CSC. Since any chain stable network must by definition be
individually rational (iv) holds if (iii) is correct.
(iv) ⇒ (i) Suppose there is a 2 cycle C = v1 , . . . , vn in (GX , q). I show that there exists a
profile P ∈ Pq such that E(P ) ∩ IR(P ) = ∅. By standard arguments we can assume
that V = {v1 , . . . , vn }.9 Let xi ∈ X denote some contract between vi and vi+1 for
i ∈ {1, . . . , n}. The preferences of nodes on the cycle are defined by induction. If v1 is a
passing node, the only set of contracts that it prefers to the empty set is {xn , x1 }. In any
other case, the most preferred set of contracts for v1 is {x1 }, the second most preferred
set is {xn , x1 }, which is in turn preferred to the empty set. No other set of contracts
is preferred to the empty set. In the inductive step suppose that we have defined the
preferences of nodes v1 to vk for some k ≤ n − 1. If vk+1 is a passing node, the only set of
contracts it prefers to the empty set is {xk , xk+1 }. In any other case, the most preferred
set of contracts for vk+1 is {xk+1 }, the second most preferred set is {xk , xk+1 }, which is in
turn preferred to the empty set. No other set of contracts is preferred to the empty set.
It is easy to check that the resulting profile P is in Pq .10
I show that for this profile any individually rational network must assign the empty set
of contracts to all nodes on the cycle. Since there are no directed cycles in GX , there
must be at least one node on the cycle that is not a passing node. Let j be the minimal
index such that vj is not a passing node. By construction, individual rationality demands
that vj is assigned either the empty set of contracts or only xj . So suppose that there
is an individually rational network µ that includes xj but not xj−1 . If vj+1 is not a
passing node we get an immediate contradiction since by the same argument any network
that includes xj cannot be individually rational. So vj+1 must be a passing node and
{xj , xj+1 } ⊂ µ. An iterative application of this argument shows that in fact any node
that we encounter when we move along C in clockwise direction starting from vj must
be a passing node. This, however, would require that vj itself is a passing node, which is
a contradiction. But if all individually rational matchings must match each non-passing
node on the cycle to the empty set of contracts, the same must be true for each passing
node by the above construction of preferences. This shows that any individually rational
9
This is valid since we can always construct the preference profile in such a way that no node outside of C
wants to sign any contract with any node on C.
10
In fact, preferences are also same-side responsive so the result when we restrict attention to this smaller
domain of preferences. I thank Lars Ehlers for pointing this out to me.
14
network is the empty network which is dominated by a network that includes {x1 , . . . , xn }.
This completes the proof that (iv) ⇒ (i).
3.1
Core equivalence
Going back to example 1, suppose that v3 is a unit capacity node with preferences Pv3 = x3 , x2
and that preferences of the other nodes are Pv1 = {x1 , x3 }, x1 , x3 and Pv2 = {x1 , x2 }. It is easy to
see that {x1 , x2 } is a core allocation which is blocked by the chain x3 . So even when every chain
stable network is core stable and efficient, it may still be the case that some core allocations fail
chain stability thus lending further support to the preference of chain (or pair-wise) over core
stability in general matching models. Motivated by this example, I now propose an alternative
definition of cycles that turns out to be crucial for core equivalence, that is, CST (P ) = C(P )
for all P ∈ Pq , in supply chain models. A restricted 2 cycle of (GX , q) is a cycle C = v1 , . . . , vn
such that either (i) C is a 2 cycle, or (ii) there is only one capacity constrained node on C and
this node is an impasse or a bifurcation of C. In the example above, v1 , v2 , v3 is a restricted
2 cycle, but not a 2 cycle since the impasse v3 is the only capacity constrained node. To rule
out restricted 2 cycles in this example, we need to assume that either v2 and v3 both have
unit capacities or that the set of capacity constrained nodes contains v2 .11 The following result
shows that the absence of restricted 2 cycles is crucial for core equivalence.
Theorem 2. The following are equivalent
(i) There is no restricted 2 cycle in (GX , q).
(ii) CST (P ) = C(P ) for all P ∈ Pq .
Before proving Theorem 2, I discuss two special cases of this result from the existing literature on matching with contracts. Note that while 2 cycles are ruled out in applications 1 and
2, restricted 2 cycles are still possible so that the set of chain stable matchings may be a strict
subset of the core by Theorem 2.
Application 3 (The unit capacity model). Suppose each node can sign at most one upstream
and at most one downstream contract. Theorem 4 in Ostrovsky (2007) establishes that core
equivalence holds in this case. Note that this is a special case of the above theorem since any
non-passing node must be capacity constrained on a cycle.
11
Note that while there are no 2-cycles in applications 1 and 2, the absence of restricted 2 cycles cannot be
guaranteed.
15
Application 4 (Many-to-One Matching with Substitutes and Complements). Another interesting special case is the many-to-one matching model with complementarities studied by Sun
and Yang (2007) (which is a discrete version of the model introduced in Sun and Yang (2006)).
The main condition in their model is that it is possible to decompose the set of workers into
two sets such that all firms view two workers from the same set as substitutes and workers from
different sets as complements. Ostrovsky (2007) shows that this can be formulated as a supply
chain model in which the set of sellers of basic inputs comprises one set of workers, the set of
consumers of final products comprises the other set of workers and the set of intermediate nodes
comprises all firms. It is clear that there can be no restricted 2 cycles since any cycle must be of
even length and any non-passing node in a cycle must be a worker, who, by assumption, signs
at most one contract. By Theorem 2 firms can be allowed to sign any number of upstream and
downstream contracts in this setting while still guaranteeing core equivalence for any preference
profile satisfying SSS and CSC.
I now proceed to the proof of Theorem 2. It is helpful to note that any network µ defines
a (unique) subgraph of GX , denoted by GµX , which includes an edge between nodes v and w if
and only if µ contains a contract between v and w.
Proof :
(i) ⇒ (ii) By Theorem 1 we know that for any P ∈ Pq we have that CST (P ) ⊂ C(P ) ⊂ IR(P )
if there are no 2 cycles. So we only need to show that C(P ) ⊂ CST (P ) in the absence
of restricted 2 cycles. Suppose µ ∈ IR(P ) is blocked by a chain x1 , . . . , xn . Consider
the network µ0 that results from µ when we add the contracts in the blocking chain and
delete contracts in µ(v1 ) \ Chv1 (µ(v1 ) ∪ {x1 }), µ(vn+1 ) \ Chvn+1 (µ(vn+1 ) ∪ {xn }), and,
µ(vi ) \ Chvi (µ(vi ) ∪ {ci−1 , ci }), for i ∈ {2, . . . , n}. Now let A be the set of nodes that
0
are in the same connected component of GµX as v1 .12 I claim that µ0 dominates µ via A.
Suppose to the contrary that there is a node v ∈ A such that µ(v)Pv µ0 (v). This implies
directly that v ∈
/ {v1 , . . . , vn }. Since we have only deleted some contracts incident to
nodes in {v1 , . . . , vn }, this means that there is contract x ∈ µ \ µ0 for which v and one of
the nodes in {v1 , . . . , vn }, say vj , are the involved parties. Since v is, by assumption, in
µ0 ∪{x}
0
the same connected component of GµX as v1 this means that GX
contains a cycle C
that runs through v and vj . To complete the proof, I show that C must be a restricted
2 cycle. First of all, by CSC and the individual rationality of µ, the following two cases
cannot occur: (i) j = 1 and x is an upstream contract for v1 , and (ii) j = n + 1 and x
12
Two nodes v and w are in the same connected component of an undirected graph G if the underlying
undirected graph contains a path from v to w.
16
is a downstream contract for vn+1 . It is straightforward (but cumbersome) to check that
these are the only problematic cases13 and that C must be a restricted 2 cycle.
(ii) ⇒ (i) Suppose C = v1 , . . . , vn is a restricted 2 cycle. If C is a 2 cycle, a close examination
of the proof that statement (iv) of Theorem 1 implies (i) reveals that for the profile
constructed there the core is actually disjoint from the set of chain stable matchings. So
suppose that C is a restricted 2 cycle for which condition (ii) holds. In the following I
assume that the only node with capacity constraints on C is the bifurcation v1 (the case
where v1 is an impasse can be handled similarly). Let x1 , . . . , xn be an accompanying
sequence of contracts, that is, xk is a contract between node vk and node vk+1 (I set
n + 1 := n). As in the proof of Theorem 1 (that (iv) ⇒ (i)), we can assume that
V = {v1 , . . . , vn } (see the corresponding remark in that proof). I define a preference profile
for the nodes on C by induction starting with Pv1 = x1 , x2 . Now suppose we have defined
preferences for nodes v1 , . . . , vk for some k ∈ {1, . . . , n − 1}. If vk+1 is a passing node, we
set Pvk+1 = {xk , xk+1 }. If vk+1 is not a passing node, we set Pvk+1 = {xk , xk+1 }, xk+1 , xk .
Let the resulting profile be denoted by P .
Now let j be the smallest index greater 1 such that vj is not a passing node and consider
the network µ = {xj , . . . , xn } on C. Clearly, µ ∈
/ CST (P ) since it is blocked by the
chain x1 , . . . , xj−1 . I claim that µ ∈ C(P ). To see this note that in order for v1 to be
better off, it must be the case that it signs only x2 . This implies that vn cannot be a
part of the blocking coalition. But v1 signing x2 implies that v2 is part of the blocking
coalition. But by the construction of P , we can iterate this argument to show that the
blocking coalition must include all nodes v2 , . . . , vn . Hence, there is no blocking coalition
that makes v1 strictly better off. By similar arguments, any blocking coalition that makes
some node in {v2 , . . . , vj } strictly better off must contain all nodes on the cycle. But since
v1 can sign at most one contract at least one node must be strictly worse off than in µ.
Before applying the main results of this section to a many-to-many matching model, I illustrate the use of introducing quotas by comparing the Theorems obtained above to corresponding
results in a model without quotas. So for the following let P denote the set of preference profiles satisfying SSS and CSC. The following corollary shows that in this case the existence of
13
For example, consider the case where x is a downstream contract for vj with j ∈ {2, . . . , n} and C does
not contain any nodes vi with i < j. In this case vj is a passing node in C. Since vj signs an upstream and a
downstream contract in µ0 , which is by construction individually rational for vj , vj is not capacity constrained
on C.
17
undirected cycles in GX is crucial for the efficiency properties of chain stable networks.
Corollary 1. The following are equivalent:
(i) GX is a tree.
(ii) CST (P ) = C(P ) for all P ∈ P.
(iii) CST (P ) ⊂ E(P ) for all P ∈ P.
(iv) E(P ) ∩ IR(P ) 6= ∅ for all P ∈ P.
Proof : That (i) implies (ii) follows directly from Theorem 2. That (ii) ⇒ (iii) ⇒ (iv) is
proven in exactly the same way as in the proof of Theorem 1. Lastly (iv) ⇒ (i) follows from
the analogous part in the proof of Theorem 1, since in the absence of quotas any cycle in GX
would be a 2 cycle.
While the remarkable equivalence of (ii) and (iv) carries over, the market structure has to
be very simple in order to guarantee the efficiency of any stability notion that encompasses
individual rationality. In particular, it is not enough to assume a two sided market, which
would still allow for cycles of even length. The corresponding condition in the model with
quotas is much less restrictive and even allows for odd cycles as long as there is at least one
capacity constrained node.
4
Application: Many-to-Many matching (Preliminary)
In this section I consider a two sided many-to-many matching model. One practical application of many-to-many markets is the study of labor markets in which workers can also take
multiple jobs such as the UK market for medical students in which each student must secure
two internship position, one medical and one surgical (Konishi and Unver (2006)). Echenique
and Oviedo (2006) point out that in some matching markets, while some workers may demand
multiple jobs, the majority is not interested in working for multiple firms.
In the following, I calculate upper and lower bounds on the number of workers demanding
multiple contracts such that the absence of 2 cycles (and thus the compatibility of efficiency
and stability) can be guaranteed. In particular, I’m interested in the relation between these
bounds and the number of edges. The approach is different to the last section, since I start
from a number of total connections in the market and then build graphs that have exactly this
number of edges. So in this section I will concentrate on graphs and underlying contract sets
will not be mentioned explicitly. The reader should, however, keep in mind that each of these
18
graphs is meant to represent the market structure arising from some set of contracts (that may
include multiple contracts for a given pair of nodes).
To formalize this let W denote a set of workers and F denote a set of firms. Workers may
contract only with firms and vice versa, that is, I consider only graphs that have a bipartition
˙ . For the sake of simplicity and to avoid case distinctions, I assume that each firm
V = W ∪F
has multiple jobs to offer so that if there is an agent demanding only one position it must be a
worker. In the following, a worker demanding only one job is called a 1-capacity worker. Based
on casual observation, it does not seem to be very restrictive to assume that |W | ≥ |F | ≥ 2. It
is assumed throughout that preferences satisfy SSS and CSC.
Let C be a set of cycles of some graph G and let W 0 ⊂ W . I say that W 0 covers C if for
every cycle C ∈ C there exists a worker w ∈ W 0 on C. A set W 0 ⊂ W is a minimum cycle
cover of G if there is no set of smaller cardinality than |W 0 | that covers all cycles of G. Clearly,
a market structure (G, q) is free of 2 cycles if and only if the set of 1-capacity workers covers
each cycle in G. The cardinality of a minimum cycle cover of the set of cycles of a graph is the
minimal number of 1-capacity workers needed to ensure that (G, q) is free of 2 cycles.
Given a fixed number m of connections in the market, the cardinality of a minimum cycle
cover given m is κm if (i) there exists a graph G with m edges and a set W 0 ⊂ W with |W 0 | = κm
such that W 0 is a minimum cycle cover of G, and (ii) for every graph G0 with at least m edges
the cardinality of a minimum cycle cover of G0 is at least κm . If we observed a matching market
with m connections in which more than |F | − κm workers demand multiple jobs, there exists
a preference profile satisfying SSS and CSC such that efficiency and individual rationality are
not compatible by Theorem 1. The following proposition gives an explicit formula for the
relationship between m and κm . In the follwing, let K := |W | − |F |, L := |W | + K − 2, and
M := (K + 1)(|F | − 1).
Proposition 1.
(i) For m ∈ {0, . . . , |W | + |F | − 1}, κm = 0.
(i) For k ∈ {0, . . . , K} and m ∈ {|W | + (k + 1)(|F | − 1) + 1, . . . , |W | + (k + 2)(|F | − 1)},
κm = 1 + k.
(ii) For l ∈ {0, . . . , L} and m ∈ {|W | + M + l(|F | − 2) + 1, . . . , |W | + M + (l + 1)(|F | − 2)},
κm = 1 + K + l.
Proof : I show first how, given a number of edges, one can construct a bipartite graph for
which the formulas in statements (i) and (ii) correctly give the cardinality of a minimum cycle
cover of this graph. Let W = {w1 , . . . , w|W | } and F = {f1 , . . . , f|F | }. Edges are introduced in
the following order:
19
1. one edge {wi , fi } for all i ∈ {1, . . . , |F |}
2. one edge {wi−1 , fi } for all i ∈ {2, . . . , |F |}
3. one edge {w|F |+i , f|F | } for all i ∈ {1, . . . , K}
4. one edge {w|F |+i , fj } for all i ∈ {0, . . . , K} and all j ∈ {1, . . . , |F | − 1}14
5. one edge {wi , fj } for all i ∈ {1, . . . , |F | − 1} and all j ∈ {1, . . . , i − 2} ∪ {i + 1, . . . , |F |}
Let Gm be the resulting graph for m connections. Note first that there are no cycles in Gm if
m is smaller than |W | + |F | so that (i) is correct. To prove statement (ii), I claim that for all
k ∈ {0, . . . , K} and all m ∈ {|W | + (k + 1)(|F | − 1) + 1, . . . , |W | + (k + 2)(|F | − 1)} the set
{w|F | , . . . , w|F |+k } is a minimum cycle cover of Gm . It is clear that this covers all cycles in the
graph. To see that there is no cycle cover of smaller cardinality note that for any number of
edges in this set and any pair of indices i, j ∈ {0, . . . , k + 1} with i 6= j, there is a cycle of Gm
that contains only workers w|F |−1+i and w|F |−1+j . Hence, any cycle cover must contain at least
one node out of every two-element subset of {0, . . . , k + 1} and thus k + 1 workers. The proof
of statement (iii) is very similar. So the formulas in the three statements correctly specify the
cardinality of a minimum cycle cover of Gm .
I now show by induction on the number of edges that there is no m such that there exists
a graph G0 with at least m edges whose minimum cycle cover has lower cardinality than the
minimum cycle cover of Gm . First note that for any m ≥ |W | + |F | the minimum cycle
cover of a graph with at least m edges contains at least one worker. Suppose that we have
proven the statement for all m ≤ m0 . There are two cases to consider: (i) m0 ∈ {|W | +
(k + 1)(|F | − 1) + 1, . . . , |W | + (k + 2)(|F | − 1)} for some k ∈ {0, . . . , K}, and (ii) m0 ∈
{|W | + M + l(|F | − 2) + 1, . . . , |W | + M + (l + 1)(|F | − 2)} for some l ∈ {0, . . . , L}. In case (i),
if m0 < |W | + (k + 2)(|F | − 1), the cardinality of a minimum cycle cover of Gm0 +1 is unchanged
so that the statement must hold for m0 + 1. If m0 = |W | + (k + 2)(|F | − 1), note that by the
inductive assumption the statement holds G|W |+(k+1)(|F |−1)+1 . Now, no matter how the next
|F | − 1 edges are introduced, a new cycle results that contains exactly two workers. But this
means that we must have that κm0 +1 = κm0 + 1 and thus the statement holds for Gm0 +1 . Case
(ii) is handled similarly.
So in general, there may be a significant number of nodes on both sides of the market
demanding multiple contracts while efficiency and core stability of chain stable matchings can
still be guaranteed. Of course, this result is to be interpreted with care, since it assumes that
In step 4, the pairs (i, j) are considered in lexicographical order, that is, if i < i0 then, for each j, j 0 , the
edge {w|F |+i , fj } is added before edge {w|F |+i0 , fj 0 }. The same remark applies for step 5.
14
20
the market structure is formed in the, for our purpose, best possible way. It is interesting to
compare this with a situation in which the market structure is formed in the worst possible
way given any number of edges. Given a fixed number m of connections in the market, the
cardinality of a maximum cycle cover given m is λm if (i) there exists a graph G with m edges
and a set W 0 ⊂ W with |W 0 | = λm such that W 0 is a minimum cycle cover of G, and (ii) for
every bipartite graph G0 with m edges the cardinality of a minimum cycle cover of G0 is smaller
than λm . The following proposition gives an explicit formula for the relationship between λm
and m.
Proposition 2. Given any number of edges m, we have that λm = |
m
2
− 1| if m ≤ 2|F | and
λm = |F | − 1 otherwise.
Proof : The basic structure of the proof is the same as for proposition 1. First, I show
how to construct Gm such that the cardinality of a minimum cycle cover is | m2 − 1|. For
m ≤ 2|F | edges are introduced in the following order: For all i ∈ {1, . . . , |F |} one edge {wi , f1 }
and {wi , f2 }.15 The formula above obviously gives the cardinality of a minimum cycle cover for
Gm .
Now consider an m such that |
m
2
− 1| < |F | − 1. For any such m, the graph with the
max-min cycle cover must be such that it achieves the maximum possible number of cycles
containing exactly two workers given m. A closer inspection of Gm reveals that it achieves this
and thus λm must be the cardinality of a maximum cycle cover given m.
5
Conclusion
This paper showed the importance of the market structure induced by a set of contracts for
the relationship between solution concepts. In particular, the absence of so called 2 cycles
was shown to be sufficient for the core stability of chain stable matchings, efficiency of stable
matchings and the compatibility of efficiency and individual rationality, as well as necessary
for each of these conditions separately. The second main result was that a more restrictive
acyclicity notion is necessary and sufficient for the equivalence of core and chain stability.
These results where then applied to a many-to-many matching model. I calculated bounds on
the number of workers demanding only one job such that the absence of 2 cycles, and thus the
compatibility of efficiency and individual rationality, could be guaranteed for any preference
profile in the reference domain. The results obtained in this paper suggest, that the combination
15
It is not necessary how edges are added if m ≥ 2|F | + 1 since this has no effect on the minimum cycle cover.
21
of structural and preference restrictions may often lead to interesting insights in the study of
general matching markets and warrant further study.
References
Abeledo, H., and G. Isaak (1992): “A characterization of graphs that ensure the existence
of stable matchings,” Mathematical Social Sciences, pp. 93 – 96.
Echenique, F., and J. Oviedo (2006): “A theory of stability in many-to-many matching
markets,” Theoretical Economics, pp. 233 – 273.
Ergin, H. (2002): “Efficient resource allocation on the basis of priorities,” Econometrica,
70(6), 2489 – 2497.
Gale, D., and L. Shapley (1962): “College Admissions and the Stability of Marriage,”
American Mathematical Monthly, 69, 9–15.
Hatfield, J., and P. Milgrom (2005): “Matching with Contracts,” American Economic
Review, pp. 913 – 935.
Kalai, E., A. Postlewaite, and J. Roberts (1978): “Barriers to Trade and Disadvantageous Middlemen: Nonmonotonicity of the core,” Journal of Economic Theory, pp. 200 –
209.
Konishi, H., and M. Unver (2006): “Credible group stability in many-to-many matching
problems,” Journal of Economic Theory, pp. 57 – 80.
Ostrovsky, M. (2007): “Stability in Supply-Chain Networks,” American Economic Review,
forthcoming.
Papai, S. (2007): “Exchange in a general market with indivisible goods,” Journal of Economic
Theory, pp. 208 – 235.
Roth, A. (1984): “The Evolution of the Labor Market for Medical Interns and Residents: A
Case Study in Game Theory,” Journal of Political Economy, 92(6), 991 – 1016.
Roth, A., and E. Peranson (1999): “The redesign of the Matching Market for American
Physicians: Some Engineering Aspects of Economic Design,” American Economc Review,
89(4), 748 – 780.
22
Roth, A., and M. Sotomayor (1991): Two Sided Markets - A Study in Game Theoretic
modeling. Cambridge University Press.
Sotomayor, M. (1999): “Three remarks on the many-to-many stable matching problem,”
Mathematical Social Sciences, pp. 55 – 70.
Sun, N., and Z. Yang (2006): “Equilibria and Indivisibilities,” Econometrica, pp. 1385 –
1402.
(2007): “A double track auction for substitutes and complements,” Working Paper,
Yokohama National University.
Westkamp, A. (2007): “Failures in the German college admissions system,” Working Paper,
Bonn Graduate School of Economics.
23
© Copyright 2026 Paperzz