0% found this document useful (0 votes)
5 views239 pages

Notes 2017 Matching

The document discusses matching and market design, focusing on both two-sided and one-sided matching theories and their applications in various contexts such as marriage, college admissions, and housing markets. It covers formal models, algorithms, properties of stable matchings, and incentive compatibility, providing a comprehensive overview of the evolution and practical implications of matching theory. The content includes detailed sections on specific mechanisms and case studies relevant to market design.

Uploaded by

szeyinadachan
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views239 pages

Notes 2017 Matching

The document discusses matching and market design, focusing on both two-sided and one-sided matching theories and their applications in various contexts such as marriage, college admissions, and housing markets. It covers formal models, algorithms, properties of stable matchings, and incentive compatibility, providing a comprehensive overview of the evolution and practical implications of matching theory. The content includes detailed sections on specific mechanisms and case studies relevant to market design.

Uploaded by

szeyinadachan
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Matching and Market Design

Theory and Practice

Xiang Sun

May 12, 2017


ii
Contents

Acknowledgement vii

1 Introduction 1
1.1 Matching and market design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Time line of the main evolution of matching and market design . . . . . . . . . . . . . . . . . . . . . . . 2

I Two-sided matching 9

2 Marriage 11
2.1 The formal model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Stability and optimality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.3 Deferred acceptance algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14


2.4 Properties of stable matchings I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.5 Properties of stable matchings II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.6 Extension: Extending the men’s preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24


2.7 Extension: Adding another woman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.8 Incentive compatibility I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.9 Incentive compatibility II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2.10 Non-bossiness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

3 College admissions 41
3.1 The formal model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2 Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.3 The connection between the college admissions model and the marriage model . . . . . . . . . . . . . . 44

3.4 Deferred acceptance algorithm and properties of stable matchings . . . . . . . . . . . . . . . . . . . . . 45

i
Contents ii

3.5 Further results for the college admissions model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49


3.6 Incentive compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6.1 Preference manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3.6.2 Capacity manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54


3.7 Comparison of marriage problems and college admissions . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.8 National intern matching program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.9 New York City high school match . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

II One-sided matching 61

4 Housing market 63
4.1 The former model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.2 Top trading cycles algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.3 Incentive compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

4.4 Axiomatic characterization of top trading cycles algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 77

5 House allocation 81
5.1 The former model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.2 Simple serial dictatorship and core from assigned endowments . . . . . . . . . . . . . . . . . . . . . . . 82
5.3 Incentive compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

5.4 Neutrality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.5 Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.6 Random house allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

6 House allocation with existing tenants 95

6.1 The former model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95


6.2 Real-lief mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.2.1 Random serial dictatorship with squatting rights . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.2.2 Random serial dictatorship with waiting list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

6.2.3 MIT-NH4 mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98


6.3 Top trading cycles algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.4 You request my house—I get your turn algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.5 Axiomatic characterization of YRMH-IGYT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

6.6 Random house allocation with existing tenants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

7 Hierarchical exchange rule 111


Contents iii

8 Random assignment mechanism 113


8.1 Random assignment problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
8.2 Random priority mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

8.3 Simultaneous eating algorithm and probabilistic serial mechanism . . . . . . . . . . . . . . . . . . . . . 116


8.4 Efficiency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
8.4.1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
8.4.2 Ordinal efficiency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

8.4.3 Efficiency of RP and PS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125


8.5 Fairness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
8.5.1 Anonymity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

8.5.2 Envy-freeness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129


8.5.3 Equal treatment of equals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.6 Incentive compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.7 RP vs PS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

8.8 Impossibility results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137


8.9 Large markets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.10 Implementing random assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

III School choice 139

9 Introduction to school choice 141

9.1 The former model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141


9.2 Boston school choice mechanism (immediate acceptance mechanism) . . . . . . . . . . . . . . . . . . . 145
9.3 Deferred acceptance algorithm and student-optimal stable mechanism . . . . . . . . . . . . . . . . . . . 147

9.4 Top trading cycles mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150


9.5 Case study: Chinese college admissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

10 Acyclicity 155
10.1 Cycles and efficiency of deferred acceptance algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
10.2 Robust stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

11 Efficiency improvement on student-optimal stable mechanism 165


11.1 Efficiency-adjusted deferred acceptance algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

11.2 Simplified efficiency-adjusted deferred acceptance algorithm . . . . . . . . . . . . . . . . . . . . . . . . 172


11.3 Stable improvement cycle algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Contents iv

12 School choice with weak priorities 179


12.1 Weak priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
12.2 DA with tie breaking rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

12.3 Stable improvement cycles algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181

13 Affirmative action 185


13.1 The formal model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
13.2 Affirmative action policies with majority quotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
13.3 Affirmative action policies with minority reserves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

IV Kidney exchange 193

14 Kidney exchange I 195


14.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
14.2 The model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
14.3 Multi-way kidney exchanges with strict preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

15 Kidney exchange II 207

15.1 Two-way kidney exchanges with 0 1 preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207


15.2 Multi-way kidney exchanges with 0 1 preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
15.3 Dynamic kidney exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
15.4 Lung exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

V Topics 209

16 The assignment game 211


16.1 The core of the game . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
16.2 The formal model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
16.3 The core of the assignment game . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

17 Matching with transfers 213

17.1 The substitutable preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213


17.2 A model with money and gross substitutable preferences . . . . . . . . . . . . . . . . . . . . . . . . . . 215

18 Matching with constraint 219

19 Matching with incomplete information 221


Contents v

Bibliography 223
Contents vi
Acknowledgement

This note was initiated when I gave lectures at Wuhan University in Spring 2014. I thank Wei He, Gaoji Hu and Qian-
feng Tang for helpful discussion.
This note is much influenced by the following books, surveys, and lecture notes
• Atila Abdulkadiroğlu and Tayfun Sönmez, Matching Markets: Theory and Practice, in Advances in Economics and
Econometrics Theory and Applications, Volume II, Tenth World Congress.
• Fuhito Kojima, Lecture notes on Market Design, 2015. Available at Kojima’s homepage.
• Alvin E. Roth’s blog on Matching and Market Design.
• Alvin E. Roth and Marilda A. Oliveira Sotomayor, Two-Sided Matching: A Study in Game-Theoretic Modeling and
Analysis, Cambridge University Press, 1992.
• Tayfun Sönmez, Mini-Course on Matching. Available at Sönmez’s homepage.
• Tayfun Sönmez and M. Utku Ünver, Matching, Allocation, and Exchange of Discrete Resources, in Handbook of
Social Economics, Volume 1A (Jess Benhabib, Alberto Bisin and Matthew O. Jackson Eds.), Elsevier B.V., 2010.
• Qianfeng Tang and Yongchao Zhang, Lecture notes on matching, 2015.
• Jerusalem Summer School in Matching and Market Design (with recorded lectures), 2014. Available at http:
//[Link]/schools/econ25.

I am grateful for the following students who provide lots of helpful suggestions and comments: Xiaoguang Chen (
), Yichen Chen ( ), Jun Cheng ( ), Yongkang Hu ( ), Liucong Huang ( ), Yikuan Huang (
), Zhijiang Huang ( ), Yiwen Jin ( ), Jia’en Li ( ), Qin Li ( ), Xiao Lin ( ), Haomin Liu
( ), Yuting Liu ( ), Jie Lu ( ), Xiaojie Mao ( ), Keji Mei ( ), Tianchen Song ( ),
Xunkang Tian ( ), Rui Wang ( ), Xiao Wang ( ), Ya Wen ( ), Kaiwen Wu ( ), Yue Wu ( ),
Weihao Yan ( ), Chen Zhang ( ), Ying Zhou ( ).

vii
viii
Chapter 1
Introduction

Contents
1.1 Matching and market design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Time line of the main evolution of matching and market design . . . . . . . . . . . . . . . . . . . . 2

1.1 Matching and market design

1.1 Matching theory, a name referring to several loosely related research areas concerning matching, allocation, and
exchange of indivisible resources, such as jobs, school seats, houses, etc., lies at the intersection of game theory,
social choice theory, and mechanism design.

1.2 Matching can involve two-sided matching, in markets with two sides, such as firms and workers, students and
schools, or men and women, that need to be matched with each other. Or matching can involve the allocation or
exchange of indivisible objects, such as dormitory rooms, transplant organs, courses, summer houses, etc.
Recently, matching theory and its application to market design have emerged as one of the success stories of eco-
nomic theory and applied mechanism design.

1.3 The economics of “matching and market design” analyzes and designs real-life institutions. A lot of emphasis is
placed on concrete markets and details so that we can offer practical solutions.

1.4 Labor markets: the case of American hospital-intern markets:

• Medical students in many countries work as residents (interns) at hospitals.


• In the U.S. more than 20,000 medical students and 4,000 hospitals are matched through a clearinghouse, called
NRMP (National Resident Matching Program).
• Doctors and hospitals submit preference rankings to the clearinghouse, and the clearinghouse uses a specified
rule (computer program) to decide who works where.
• Some markets succeeded while others failed. What is a “good way” to match doctors and hospitals?

1.5 School choice:

• In many countries, especially in the past, children were automatically sent to a school in their neighborhoods.

1
1.2. Time line of the main evolution of matching and market design 2

• Recently, more and more cities in the United States and in other countries employ school choice programs:
school authorities take into account preferences of children and their parents.
• Because school seats are limited (for popular schools), school districts should decide who is admitted.
• How should school districts decide placements of students in schools?

1.6 Kidney exchange:

• Kidney exchange is a preferred method to save kidney-disease patients.


• There are lots of kidney shortages, and willing donor may be incompatible with the donor.
• Kidney exchange tries to solve this by matching donor-patient pairs.
• What is a “good way” to match donor-patient pairs?

1.7 Targets:

• Efficiency: Pareto efficiency, individual optimality, ordinal efficiency, ex ante efficiency, ex post efficiency, etc.
• Fairness: stability, anonymity, envy-freeness, equal treatment of equals, etc.
• Incentives: strategy-proofness, nonbossiness, etc.
• Easy for participants to understand and use.

1.8 Reading:

• Information for the Public: Stable matching: Theory, evidence, and practical design.
• Scientific Background: Stable allocations and the practice of market design.
• Roth (2015).
• Sakai (2013).

1.2 Time line of the main evolution of matching and market design
1.2. Time line of the main evolution of matching and market design 3

Matching Markets: The Path Between Theory & Practice


Timeline Key Two-Sided Matching Allocation via One-Sided Matching Combinatorial
Contributions Priorities (Unit-Demand Indivisible Goods Allocation) Optimization
Gale & Shapley
1960 AMM 62

Gallai
MTAMKIK 63 Edmonds
MTAMKIK 64 CJM 65

1970
Shapley & Scarf
JME 74 Hylland & Zeckhauser
JPE 77

1980 Kelso & Crawford Dubins & Freedman Roth


Econometrica 82 AMM 81 MOR 82
Roth
JPE 84

Roth & Sotomayor


1990 1990

=
Balinski & Sönmez Abdulkadiroğlu &
JET 99 Sönmez JET 99
2000
Hatfield & Milgrom Abdulkadiroğlu &
Roth, Sönmez &
AER 05 Sönmez AER 03
Ünver QJE 04
JET 05
2010 Echenique Hatfield & Kojima Sönmez & Switzer
AER 12 JET 10
2011
NRMP & School Choice Reforms in: Kidney Exchange Clearinghouses:
Real Life Various other labor markets New York City New England Program for Kidney Exchange
Practice summarized in Roth & Peranson AER 99 Boston Allience for Paired Donation
Chicago New Orleans National Matching Scheme
(England)
Denver for Paired Donation
England National KPD Pilot Program (USA)

Figure 1.1: Overview (Taken from Sönmez’s lecture notes).

Two-sided matching

1.9 In 1962, deferred-acceptance algorithm by David Gale and Lloyd Shapley.



David Gale and Lloyd Shapley, College admissions and the stability of marriage, The American Mathematical
Monthly 69 (1962), 9–15.

(a) Lloyd Stowell Shapley. (b) David Gale.

Figure 1.2
1.2. Time line of the main evolution of matching and market design 4

Gale and Shapley asked whether it is possible to match m women with m men so that there is no pair consisting
of a woman and a man who prefer each other to the partners with whom they are currently matched. They proved
not only non-emptiness but also provided an algorithm for finding a point in it.

1.10 Shapley and Shubik (1972) and Kelso and Crawford (1982) introduced variants of the two-sided matching model
where monetary transfers are also possible between matching sides.

Lloyd Shapley and Martin Shubik, The assignment game I: the core, International Journal of Game Theory 1 (1972),
111–130.

Alexander S. Kelso and Vincent P. Crawford, Job matchings, coalition formation, and gross substitutes, Economet-
rica 50:6 (1982), 1483–1504.

(a) Martin Shubik. (b) Vincent Crawford.

Figure 1.3

1.11 In 1982, impossibility theorem by Alvin Roth.



Alvin Roth, The economics of matching: stability and incentives, Mathematics of Operations Research 7:4 (1982),
671–628.

Figure 1.4: Alvin Roth.

Roth proved that no stable matching mechanism exists for which stating the true preferences is a dominant strategy
for every agent.
1.2. Time line of the main evolution of matching and market design 5

1.12 Gale and Shapley’s short note was almost forgotten until 1984, when Roth showed that the same algorithm was
independently discovered by the National Residency Matching Program (NRMP) in the United States.

Alvin Roth, The evolution of the labor market for medical interns and residents: a case study in game theory, Journal
of Political Economy 92 (1984), 991–1016.

1.13 Recently, new links between auctions, two-sided matching, and lattice theory were discovered; for example, match-
ing with contracts by Hatfield and Milgrom in 2005.

J. W. Hatfield, P. R. Milgrom, Matching with contracts, American Economic Review 95 (2005), 913–935.

(a) Paul Milgrom. (b) John Hatfield.

Figure 1.5

One-sided matching

1.14 In 1974, top trading cycles algorithm by David Gale, Herbert Scarf and Lloyd Shapley.

Lloyd Shapley and Herbert Scarf, On cores and indivisibility, Journal of Mathematical Economics 1 (1974), 23–28.

Figure 1.6: Herbert Scarf.

In the other branch of matching theory, allocation and exchange of indivisible goods, the basic model, referred to
as the housing market, consists of agents each of whom owns an object, e.g., a house. They have preferences over
1.2. Time line of the main evolution of matching and market design 6

all houses including their own. The agents are allowed to exchange the houses in an exchange economy. Shapley
and Scarf showed that such a market always has a (strict) core matching, which is also a competitive equilibrium
allocation. They also noted that a simple algorithm suggested by David Gale, now commonly referred to as Gale’s
top trading cycles algorithm, also finds this particular core outcome.

1.15 In 1979, Hylland and Zeckhauser proposed the house allocation problem.

Aanund Hylland and Richard Zeckhauser, The efficient allocation of individuals to positions, Journal of Political
Economy 87:2 (1979), 293–314.

(a) Aanund Hylland. (b) Richard Zeckhauser.

Figure 1.7

1.16 In 1999, Atila Abdulkadiroğlu and Tayfun Sönmez proposed YQMH-IGYT (you request my house—I get your
turn) algorithm for the house allocation problem with existing tenants.

Atila Abdulkadiroğlu and Tayfun Sönmez, House allocation with existing tenants, Journal of Economic Theory 88
(1999), 233–260.

(a) Atila Abdulkadiroğlu. (b) Tayfun Sönmez.

Figure 1.8

1.17 In 2003, Atila Abdulkadiroğlu and Tayfun Sönmez proposed school choice problem.
1.2. Time line of the main evolution of matching and market design 7


Atila Abdulkadiroğlu and Tayfun Sönmez, School choice: a mechanism design approach, American Economic Re-
view 93:3 (2003), 729–747.

1.18 In 2004, Alvin Roth, Tayfun Sönmez and M. Utku Ünver proposed kidney exchange problem.

Alvin E. Roth and Tayfun Sönmez, M. Utku Ünver, Kidney exchange, Quarterly Journal of Economics 119 (2004),
457–488.

Figure 1.9: M. Utku Ünver.


1.2. Time line of the main evolution of matching and market design 8
Part I

Two-sided matching

9
10
Chapter 2
Marriage

Contents
2.1 The formal model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Stability and optimality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3 Deferred acceptance algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4 Properties of stable matchings I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.5 Properties of stable matchings II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.6 Extension: Extending the men’s preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.7 Extension: Adding another woman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.8 Incentive compatibility I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.9 Incentive compatibility II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.10 Non-bossiness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.1 The formal model

 2.1 A marriage problem ( ) is a triple Γ = ⟨M, W, ≿⟩, where

• M is a finite set of men,


• W is a finite set of women,
• ≿= (≿i )i∈M ∪W is a list of preferences. Here
– ≿m denotes the preference of man m over W ∪ {m},
– ≿w denotes the preference of woman w over M ∪ {w},
– ≻i denotes the strict preference derived from ≿i for each i ∈ M ∪ W .

2.2 For man m:

• w ≻m w′ means that man m prefers woman w to woman w′ .


• w ≻m m means that man m prefers woman w to remaining single.
• m ≻m w means that woman w is unacceptable to man m.

11
2.2. Stability and optimality 12

We use the similar notation for women.

2.3 If an individual is not indifferent between any two distinct acceptable alternatives, he has strict preferences. Unless
otherwise mentioned all preferences are strict.

 2.4 In a marriage problem Γ = ⟨M, W, ≿⟩, a matching ( ) is a outcome, and is defined by a function µ : M ∪ W →
M ∪ W such that

• for all m ∈ M , if µ(m) ̸= m then µ(m) ∈ W ,


• for all w ∈ W , if µ(w) ̸= w then µ(w) ∈ M ,
• for all m ∈ M and w ∈ W , µ(m) = w if and only if µ(w) = m (i.e., a matching is mutual: you are matched
with me if and only if I am matched with you).

We refer to µ(i) as the mate of i, and µ(i) = i means that agent i remains single under the matching µ.

2.5 A matching will sometimes be represented as a set of matched pairs. Thus, for example, the matching
[ ]
w4 w1 w2 w3 (m5 )
µ=
m1 m2 m3 m4 m5

has m1 married to w4 and m5 remaining single.

2.2 Stability and optimality

Let us focus on a fixed marriage problem Γ = ⟨M, W, ≿⟩.

2.6 For two matchings µ and ν, an individual i prefers µ to ν if and only if i prefers µ(i) to ν(i).
Let µ ≻M ν if µ(m) ≿m ν(m) for all m ∈ M , and µ(m) ≻m ν(m) for at least one man m.
Let µ ≿M ν denote that either µ ≻M ν or that all men are indifferent between µ and ν.
The relation ≿M gives a partial order on the set of stable matchings; see 2.37.

 2.7 A matching µ is Pareto efficient1 ( ) if there is no other matching ν such that

• ν(i) ≿i µ(i) for all i ∈ M ∪ W ,


• ν(i0 ) ≻i0 µ(i0 ) for some i0 ∈ M ∪ W .

 2.8 A matching µ is blocked by an individual i ∈ M ∪ W if i ≻i µ(i).


A matching is individually rational2 ( ) if it is not blocked by any individual.

2.9 A matching µ is blocked by a pair (m, w) ∈ M ∪ W if they both prefer each other to their partners under µ, i.e.,

w ≻m µ(m) and m ≻w µ(w).

 2.10 A matching µ is stable ( ) if it is not blocked by any individual or any pair.


Roughly speaking, a matching is stable if there are no individuals or pairs of individuals who can profitably deviate
from it.
1 In general, Pareto efficiency or Pareto optimality is a state of allocation of resources from which it is impossible to reallocate so as to make any
one individual or preference criterion better off without making at least one individual or preference criterion worse off.
2 In general, individual rationality constraints are said to be satisfied if a mechanism leaves all participants at least as well off as they would have

been if they hadn’t participated. They are also called participation constraints or rational participation constraints
2.3. Deferred acceptance algorithm 13

2.11 Example: There are three men and three women, with the following preferences:

m1 m2 m3 w1 w2 w3
w2 w1 w1 m1 m3 m1
w1 w3 w2 m3 m1 m3
w3 w2 w3 m2 m2 m2

Table 2.1

All possible matchings are individually rational, since all pairs (m, w) are mutually acceptable.
The matching µ given below is unstable, since (m1 , w2 ) is a blocking pair.
[ ]
w1 w2 w3
µ= .
m1 m2 m3

The matching µ′ is stable. [ ]


′ w1 w2 w3
µ = .
m1 m3 m2

2.12 Proposition: Stability implies Pareto efficiency.

Proof. (1) Suppose the matching µ is not Pareto efficient, that is, there exists a matching ν such that ν(i) ≿i µ(i)
for all i ∈ M ∪ W and ν(i0 ) ≻i0 µ(i0 ) for some i0 ∈ M ∪ W .
(2) Case 1: If ν(i0 ) = i0 , then µ is blocked by the individual i0 . Contradiction.
(3) Case 2: Suppose ν(i0 ) ̸= i0 , without loss of generality, denote i0 by m, and ν(i0 ) = ν(m) by w. Hence we
have w ≻m µ(m).
(4) Since ν(i) ≿i µ(i) holds for all i, we have m = ν(w) ≿w µ(w).
(5) Since all preferences are strict, m ≿w µ(w) if and only if m ≻w µ(w) or m = µ(w).
(6) If m = µ(w), then µ(m) = w, which contradicts to w ≻m µ(m). Hence we have m ≻w µ(w). Therefore µ
is blocked by the pair (m, w). Contradiction.

ν
ν(w) = m w = ν(m)

µ(w)

2.13 Exercise: Stability can not be implied by Pareto efficiency.

2.14 Question: Does a stable matching always exists? How to get a stable matching?
2.3. Deferred acceptance algorithm 14

2.3 Deferred acceptance algorithm



2.15 Men-proposing deferred acceptance algorithm.

Step 1: (a) Each man m proposes to his first choice (if he has any acceptable choices).
(b) Each woman rejects any offer except the best acceptable proposal and “holds” the most-preferred accept-
able proposal (if any). Note that she does not accept him yet, but keeps him on a string to allow for the
possibility that someone better may come along later.
Step k: (a) Any man who was rejected at Step (k − 1) makes a new proposal to his most-preferred acceptable
potential mate who has not yet rejected him (If no acceptable choices remain, he makes no proposal).
(b) Each woman receiving proposals chooses her most-preferred acceptable proposal from the group con-
sisting of the new proposers and the man on her string, if any. She rejects all the rest and again keeps the
best-preferred in suspense.
End: The algorithm terminates when there are no more rejections. Each woman is matched with the man she has
been holding in the last step. Any woman who has not been holding an offer or any man who was rejected by
all acceptable women remains single.

2.16 Question: Why do we call this algorithm the “deferred acceptance” algorithm? Hint: Compare it with the Boston
mechanism 9.21.

2.17 Example of men-proposing deferred acceptance algorithm: There are five men and four women, and their prefer-
ences are as follows:

m1 m2 m3 m4 m5 w1 w2 w3 w4
w1 w4 w4 w1 w1 m2 m3 m5 m1
w2 w2 w3 w4 w2 m3 m1 m4 m4
w3 w3 w1 w3 w4 m1 m2 m1 m5
w4 w1 w2 w2 m4 m4 m2 m2
m5 m5 m3 m3

Table 2.2

Step 1: m1 , m4 , and m5 propose to w1 , and m2 and m3 propose to w4 ; w1 rejects m4 and m5 and keeps m1
engaged; w4 rejects m3 and keeps m2 engaged. That is,
[ ]
w1 w2 w3 w4
.
H
m1 , 
mH H
4, 
mH
5 H
m2 , 
mH
3

Step 2: m3 , m4 and m5 propose to their second choice, that is, to w3 , w4 and w2 respectively; w4 rejects m2 and
keeps m4 engaged: [ ]
w1 w2 w3 w4
.
m1 m5 m3 H
m
m4 , H
2

Step 3: m2 proposes to his second choice, w2 , who rejects m5 and keeps m2 engaged:
[ ]
w1 w2 w3 w4
.
m1 H
m
m2 , H
5 m3 m4
2.3. Deferred acceptance algorithm 15

Step 4: m5 proposes to his third choice, w4 , who rejects m5 and continues with m4 engaged. Since m5 has been
rejected by every woman on his list of acceptable women, he stays single, and the matching is:
[ ]
w1 w2 w3 w4 (m5 )
.
m1 m2 m3 m4 m5

2.18 Observation: As the algorithm proceeds, the tentative partners of a man is weakening, and the tentative partners
of a woman is improving.

 2.19 Theorem on stability (Theorem 1 in Gale and Shapley (1962)): The men-proposing deferred acceptance algorithm
gives a stable matching for each marriage problem.

Proof. (1) It suffices to show that the matching µ determined by the men-proposing deferred acceptance algo-
rithm is not blocked by any pair (m, w).
(2) Suppose that there is a pair (m, w), such that m ̸= µ(w) and w ≻m µ(m).
(3) Then m must have proposed to w at some step and subsequently been rejected in favor of someone (m′ in the
figure) that w likes better.

w µ(m)
≻m

µ(w) m′ m
≻w

(4) It is now clear that w must prefer her mate µ(w) to m and there is no instability.
(5) Similar discussion applies to the pair (m, w) with m ̸= µ(w) and m ≻w µ(w).

2.20 Quotation from Roth (2008): At his birthday celebration in Stony Brook on 12 July 2007, David Gale related the
story of his collaboration with Shapley to produce deferred acceptance algorithm by saying that he (Gale) had pro-
posed the model and definition of stability, and had sent to a number of colleagues the conjecture that a stable
matching always existed. By return mail, Shapley proposed the deferred acceptance algorithm and the correspond-
ing proof.

 2.21 Theorem on optimality (Theorem 2 in Gale and Shapley (1962)): The matching determined by men-proposing
deferred acceptance algorithm is at least as good as any other stable matching for all men.

Proof. Let us call a woman “achievable” for a particular man if there is a stable matching that sends him to her.

(1) For contradiction, suppose that a man is rejected by an achievable woman.


(2) Consider the first step (say Step k) in which a man (call him m) is rejected by an achievable woman (call her
w)
(3) Then w keeps some other man m′ at this step, so m′ ≻w m.
(4) Let µ be a stable matching where µ(m) = w.
(5) Since this is the first step of DA where a man is rejected by an achievable woman, w ≻m′ µ(m′ ). Otherwise,
• Case 1: µ(m′ ) ≻m′ w, then m′ is rejected by an achievable woman µ(m′ ) before Step k.
2.4. Properties of stable matchings I 16

• Case 2: µ(m′ ) = w = µ(m), which leads to m = m′ . Contradiction.


(6) Thus, (m′ , w) blocks µ, contradicting the stability of µ.

2.22 Remark: Theorem 2.21 says that different stable matchings may benefit different participants. In particular, each
version of deferred acceptance algorithm favors one side at the expense of the other side.

2.23 Remark: Intuitively, men may have different (individually) optimal matchings, since they have different preferences.
However, restricting to the set of stable matchings, the stable matching resulting from men-proposing deferred
acceptance algorithm is optimal for every man.

2.24 For Γ = ⟨M, W, ≿⟩, we refer to the outcome of the men-proposing deferred acceptance algorithm as the man-
optimal stable matching and denote it by µM [Γ] or µM [≿] (when M and W are fixed) or µM (when M , W and ≿
are fixed).
The algorithm where the roles of men and women are reversed is known as the women-proposing deferred accep-
tance algorithm and we refer to its outcome µW [Γ] or µW [≿] (when M and W are fixed) or µW (when M , W and
≿ are fixed) as the woman-optimal stable matching.

2.25 These two matchings will not typically be the same. For Example 2.17, the matching obtained when the women
propose to the men is [ ]
w4 w1 w2 w3 (m5 )
.
m1 m2 m3 m4 m5

It turns out that the stable matchings are not unique.

2.26 If some individuals may be indifferent between possible mates, i.e., some individuals’ preferences is not strict, The-
orem 2.21 need not hold.
Example: There are three men and three women, and their preferences are as follows:

m1 m2 m3 w1 w2 w3
w2 , w 3 w2 w3 m1 m1 m1
w1 w1 w1 m2 m2 m3
m3

Table 2.3

The stable matchings are [ ] [ ]


w1 w2 w3 w1 w2 w3
µ1 = and µ2 = ,
m2 m1 m3 m3 m2 m1

but there are no optimal stable matchings since

• µ1 (m3 ) ≻m3 µ2 (m3 ) and µ2 (m2 ) ≻m2 µ1 (m2 );


• µ1 (w2 ) ≻w2 µ2 (w2 ) and µ2 (w3 ) ≻w3 µ1 (w3 ).

2.4 Properties of stable matchings I

 2.27 Decomposition theorem (Knuth (1976)): Let µ and µ′ be stable matchings in ⟨M, W, ≿⟩, where all preferences are
2.4. Properties of stable matchings I 17

strict. Let M (µ) be the set of men who prefers µ to µ′ and W (µ) the set of women who prefer µ to µ′ . Analogously
define M (µ′ ) and W (µ′ ). Then µ and µ′ map M (µ′ ) onto W (µ) and M (µ) onto W (µ′ ).

Proof. (1) For any m ∈ M (µ′ ), we have µ′ (m) ≻m µ(m) ≿m m, where the second inequality holds since µ is
stable and not blocked by any individual.
(2) Then µ′ (m) ̸= m, and hence µ′ (m) ∈ W , denoted by w.
(3) Since µ is a stable matching in ⟨M, W, ≿⟩, µ(w) ≿w µ′ (w); otherwise the pair (m, w) blocks µ.
(4) Furthermore, µ(w) ≻w µ′ (w) otherwise µ′ (m) = w = µ(m).
(5) We have µ′ (m) = w ∈ W (µ), and hence µ′ (M (µ′ )) ⊆ W (µ).
(6) For any w ∈ W (µ), we have µ(w) ≻w µ′ (w) ≿w w, where the second inequality holds since µ is stable and
not blocked by any individual.
(7) Then µ(w) ∈ M , denoted by m.
(8) Since µ′ is a stable matching in ⟨M, W, ≿⟩, µ′ (m) ≻m µ(m); otherwise the pair (m, w) blocks µ′ .
(9) We have µ′ (m) ≻m µ(m) = w and µ(m) ≻m m, then µ′ (m) ≻m µ(m) = w.
(10) We have m ∈ M (µ′ ) and hence µ(W (µ)) ⊆ M (µ′ ).
(11) Since µ and µ′ are one-to-one and M (µ′ ) and W (µ) are finite, the conclusion follows.

2.28 Remark: Decomposition theorem (Theorem 2.27) implies that if m prefers µ to µ′ and µ(m) = w and µ′ (m) = w′ ,
then both w and w′ will prefer µ′ to µ. That is, both µ and µ′ decompose the men and women as illustrated in
Figure 2.1:

( )
M M (µ′ ) M \ M (µ) ∪ M (µ′ ) M (µ)

µ µ′ µ µ′ µ µ′

( )
W W (µ) W \ W (µ) ∪ W (µ′ ) W (µ′ )

Figure 2.1: Decomposition theorem

 2.29 Theorem (Knuth (1976)): When all the agents have strict preferences, if µ and µ′ are stable matchings, then µ′ ≻M
µ if and only µ ≻W µ′ .

Proof. (1) µ′ ≻M µ if and only if M (µ) = ∅ and M (µ′ ) ̸= ∅.


(2) This is equivalent to W (µ′ ) = ∅ and W (µ) ̸= ∅.
(3) This is equivalent to µ ≻W µ′ .

2.30 Corollary: When all the agents have strict preferences, the man-optimal stable matching is the worst matching for
the women; that is, it matches each woman with her least-preferred achievable mate.
Similarly, the woman-optimal stable matching matches each man with his least-preferred achievable mate.
2.4. Properties of stable matchings I 18

 2.31 Rural hospital theorem3 (Theorem in McVitie and Wilson (1970), Theorem 1 in Gale and Sotomayor (1985)): The
set of individuals who are matched is the same for all stable matchings.

Proof. (1) Suppose that m is matched under µ′ but not under µ. Then m ∈ M (µ′ ).
(2) By decomposition theorem (Theorem 2.27), µ maps M (µ′ ) to W (µ).
(3) So m is also matched under µ. Contradiction.

2.32 Direct proof:

Proof. (1) Let µM be the man-optimal stable matching and µ be an arbitrary stable matching.
(2) Since µM is man-optimal, all the men that are matched in µ are matched in µM .
(3) Since µM is woman-pessimal, all the women that are matched in µM are matched in µ (why?).
(4) But for any given matching, the number of matched men and women are the same to each other (why?).
(5) So the same set of men and women are matched in µM and µ (exercise: complete the argument).

For an alternative proof, see Ciupan, Hatfield and Kominers (2016).

2.33 Remark: One motivation is the allocation of residents in rural hospitals. Hospitals in rural areas cannot fill positions
for residents, and some people argue that the matching mechanisms should be changed so that more doctors end
up in rural hospitals. But the theorem says that it is impossible as long as stable matchings are implemented.
If some men were matched in some stable matching and not in others, the latter may be unfair to them. The theorem
says that there is no need to worry.

2.34 In ⟨M, W, ≿⟩, when preferences are strict, for any two matchings µ and µ′ , define the following function on M ∪W :
 
µ(m), if µ(m) ≻ µ′ (m) µ(w), if µ′ (w) ≻w µ(w)
m
µ ∨M µ′ (m) = , µ ∨M µ′ (w) = .
µ′ (m), otherwise µ′ (w), otherwise

This function assigns each man his more preferred mate from µ and µ′ , and it assigns each woman her less preferred
mate.
Similarly, we can define the function µ ∧M µ′ , which gives each man his less preferred mate and each woman her
more preferred mate.

2.35 Remark: µ ∨M µ′ may fail to be matchings due to the following two ways.

• µ ∨M µ′ might assign the same woman to two different men.


• µ ∨M µ′ might be that giving each man the more preferred of his mates at µ and µ′ is not identical to giving
each woman the less preferred of her mates.

Even when µ ∨M µ′ and µ ∧M µ′ are matchings, they might not be stable.


Exercise: Provide several examples (as simple as possible) to illustrate the points above.
3 This theorem is renamed as “ ” by Xiaoguang Chen and Tianchen Song for fun.
2.4. Properties of stable matchings I 19

2.36 Lattice theorem (Conway): When all the preferences are strict, if µ and µ′ are stable matchings for ⟨M, W, ≿⟩, then
the functions λ = µ ∨M µ′ and ν = µ ∧M µ′ are both stable matchings.

Proof. We only prove the statement for λ.

(1) By definition, µ ∨M µ′ agrees with µ′ on M (µ′ ) and W (µ), and with µ otherwise.
(2) By decomposition theorem (Theorem 2.27), λ is therefore a matching.
(3) It is trivial that λ is not blocked by any individual in ⟨M, W, ≿⟩.
(4) Suppose that some pair (m, w) blocks λ.
(5) If m ∈ M (µ′ ), then w ≻m λ(m) = µ′ (m) ≻m µ(m).
• If w ∈ W (µ), then m ≻w λ(w) = µ′ (w), and hence µ′ is blocked by (m, w).
• If w ∈ W \ W (µ), then m ≻w λ(w) = µ(w), and hence µ is blocked by (m, w).
(6) If m ∈ M \ M (µ′ ), then w ≻m λ(m) = µ(m) ≿m µ′ (m).
• If w ∈ W (µ), then m ≻w λ(w) = µ′ (w), and hence µ′ is blocked by (m, w).
• If w ∈ W \ W (µ), then m ≻w λ(w) = µ(w), and hence µ is blocked by (m, w).
(7) Therefore, λ is a stable matching.

2.37 Remark: The existence of man-optimal and woman-optimal stable matchings can be deduced from the lattice the-
orem.
A lattice is a partially ordered set in which every two elements have a supremum (also called a least upper bound
or join) and an infimum (also called a greatest lower bound or meet). Lattice theorem (Theorem 2.36) implies that
the set of stable matchings is a lattice under ≿M (defined in 2.6), dual to ≿W .

µM

µ ∨M µ′

µ µ′

µ ∧M µ′

µW

2.38 To compute all the stable matchings, see McVitie and Wilson (1971), Irving and Leather (1986) and Section 3.2 of
Roth and Sotomayor (1989).
2.4. Properties of stable matchings I 20

2.39 Theorem on weak Pareto optimality for the men (Theorem 6 in Roth (1982b)): In a marriage problem Γ =
⟨M, W, ≿⟩, there is no individually rational matching µ (stable or not) such that µ(m) ≻m µM (m) for all m ∈ M ,
where µM is the matching obtained by the men-proposing deferred acceptance algorithm.

Proof. (1) Suppose that there exists such a matching µ.


(2) µ matches every man m to some woman w ≜ µ(m) who has rejected him in the men-proposing deferred
acceptance algorithm, so
µ(m) ≻m µM (m) ≿m m

holds for every m, and hence µ(m) ∈ W for every m.


(3) Since µM is a stable matching, µM (w) ≻w m = µ(w).
(4) Since µ is individually rational, µ(w) ≿w w, and hence

µM (w) ≻w m = µ(w) ≿w w.

(5) Therefore, µM (w) ∈ M for every w with the form w = µ(m).


(6) Hence, µ(M ) have been matched under µM . That is, µM (µ(M )) ⊆ M .
(7) Since µ and µM are one-to-one and µ(M ) ⊆ W , we have |µM (µ(M ))| = |M |, and hence µM (µ(M )) = M .
(8) Hence, all of M have been matched under µM and µM (M ) = µ(M ).
(9) Since all of M are matched under µM , any woman w who gets a proposal at the last step of the algorithm at
which proposals were issued has not rejected any acceptable man; otherwise her waiting list is full, and some
man is rejected at the last step.
(10) That is, the algorithm stops as soon as every woman in µM (M ) has an acceptable proposal.
(11) Since every man prefers µ to µM , such a woman w must be single under µ, which contradicts the fact that
µM (M ) = µ(M ).

2.40 Remark: There is no other matching, stable or not, that all men prefer to µM .
We have already studied the sense in which it is as good a stable matching as the men can achieve, but now we want
to ask whether there might not be some other unstable matching that all the men would prefer. If so, then we might
conclude that, even at the man-optimal stable matching, the men collectively “pay a price” for stability. However,
this turns out not to be the case.

2.41 Example: µM is not strongly Pareto optimal, that is, there exists an individually rational matching µ, such that
µ(m) ≿m µM (m) for all m, and µ(m0 ) ≻m0 µM (m0 ) for some m0 ∈ M .
There are three men and two women, and their preferences are as follows:

m1 m2 m3 w1 w2
w2 w1 w1 m1 m3
w1 w2 m2 m1
m3

Table 2.4

Then [ ]
M w1 (m2 ) w2
µ = .
m1 m2 m3
2.5. Properties of stable matchings II 21

Nevertheless [ ]
w2 (m2 ) w1
µ=
m1 m2 m3

leaves m2 no worse than under µM , but benefits m1 and m3 .

2.5 Properties of stable matchings II

2.42 Definition: In a marriage problem Γ = ⟨M, W, ≿⟩, we say that a matching µ′ weakly dominates another matching
µ if there exists a coalition ∅ ̸= A ⊆ M ∪ W , such that µ′ (i) ≿i µ(i) and µ′ (i) ∈ A for any i ∈ A and
µ′ (i0 ) ≻i0 µ(i0 ) for some i0 ∈ A.
A matching µ is in the core if there exists no matching µ′ which weakly dominates µ.

2.43 Theorem: In a marriage problem Γ = ⟨M, W, ≿⟩, the core equals to the set of stable matchings.

Proof. “⇒”: Assume that µ is in the core.


(1) If µ is blocked by an individual i, then it is weakly dominated by any matching µ′ with µ′ (i) = i via the
singleton coalition {i}.
(2) If µ is blocked by a pair (m, w), then it is weakly dominated by any matching µ′ with µ′ (m) = w via the
coalition {m, w} .
“⇐”: Assume that µ is a stable matching.
(1) If µ is not in the core, then µ is weakly dominated by some matching µ′ via a coalition A. Hence, there
exists i0 ∈ A such that µ′ (i0 ) ≻i0 µ(i0 ).
(2) For notational simplicity, denote i0 = m.
(3) Since µ is individually rational, µ′ (m) ≻m µ(m) ≿m m, and hence µ′ (m) ∈ W . Denote µ′ (m) by w.
(4) Since w ∈ A, we have µ′ (w) ≿w µ(w).
(5) Clearly, µ′ (w) = µ(w); otherwise, µ′ (m) = µ(m). Thus, µ′ (w) ≻w µ(w).
(6) The matching µ is blocked by (m, w). It is a contradiction.

2.44 Remark: There is another version of core.


In a marriage problem Γ = ⟨M, W, ≿⟩, we say that a matching µ′ dominates another matching µ if there exists a
coalition ∅ ̸= A ⊆ M ∪ W , such that µ′ (i) ≻i µ(i) and µ′ (i) ∈ A for any i ∈ A.
A matching µ is in the core defined via strict domination if there exists no matching µ′ which dominates µ.
Exercise: Show that the set of stable matchings, the core, and the core defined via strict domination are the same.

2.45 Theorem on strong stability property (Demange, Gale and Sotomayor (1987)): If µ is an unstable matching, then
either there exists a blocking pair (m, w) and a stable matching µ̄ such that

µ̄(m) ≿m µ(m) and µ̄(w) ≿w µ(w),

or µ is not individually rational.


2.5. Properties of stable matchings II 22

2.46 Blocking lemma (Hwang (unknown), Gale and Sotomayor (1985)): Let µ be any individually rational matching
with respect to strict preferences ≿ and let M ′ be all men who prefer µ to µM . If M ′ is non-empty, there is a pair
(m, w) that blocked µ such that m ∈ M \ M ′ and w ∈ µ(M ′ ).

Proof. Case 1: Suppose µM (M ′ ) ̸= µ(M ′ ).

(1) Choose w ∈ µ(M ′ ) \ µM (M ′ ), say, w = µ(m′ ).


(2) Then m′ prefers µ to µM , that is, w = µ(m′ ) ≻m′ µM (m′ ).
(3) Since µM is stable, we have m ≜ µM (w) ≿w µ(w) = m′ .
(4) Furthermore, m = µM (w) ≻w µ(w) = m′ ; otherwise m = µM (w) = µ(w) = m′ contradicts with the fact
w ∈ µ(M ′ ) \ µM (M ′ ).
(5) Since µM (m) = w ̸∈ µM (M ′ ), m is not in M ′ .
(6) Hence, µM (m) ≿m µ(m).
(7) Furthermore, µM (m) ≻m µ(m); otherwise µ(m′ ) = w = µM (m) = µ(m).
(8) Hence, (m, w) blocks µ.

w ∈ µ(M ′ ) \ µM (M ′ )

µ µM

m′ ∈ M ′ m ̸∈ M ′

Figure 2.2

Case 2: Suppose µM (M ′ ) = µ(M ′ ) ≜ W ′ .

(1) Let w be the last woman in W ′ to receive a proposal from an acceptable member of M ′ in the deferred
acceptance algorithm.
(2) Since µM (M ′ ) = µ(M ′ ) and each m ∈ M ′ prefers µ(m) to µM (m), all w ∈ W ′ have rejects acceptable men
from M ′ , and hence w has some man m engaged when she received this last proposal.
(3) We claim (m, w) is the desirable blocking pair.
• m is not in M ′ ; otherwise, after being rejected by w, he will propose again to a member of W ′ , contra-
dicting the fact that w received the last such proposal.
• Since m is rejected by w, m prefers w to his mate µM (m) under µM . Since m ̸∈ M ′ , m is not better off
under µ than under µM , and hence m prefers w to µ(m).
• In the algorithm, m is the last man to be rejected by w, so she must have rejected her mate µ(m) under
µ before she rejected m. Hence, she prefers m to µ(w).

2.47 Remark: Since m ∈ M \ M ′ , we have µM (m) ≿m µ(m).


Since w ∈ µ(M ′ ), we have w ≜ µ(m′ ) ≻m′ µM (m′ ). Then by stability of µM we have µM (w) ≿w µ(w).

2.48 Proof of Theorem 2.45. (1) If µM [≿] ≿M µ is not satisfied, the set M ′ would be non-empty and the blocking pair
(m, w) will satisfy
µM [≿](m) ≿m µ(m) and µM [≿](w) ≿w µ(w),

so Theorem will be true with (m, w) and µ̄ = µM .


2.5. Properties of stable matchings II 23

(2) Henceforth, we therefore assume

µM [≿] ≿M µ and symmetrically µW [≿] ≿W µ.

(3) The set of stable matchings µ′ such that µ′ ≿M µ is non-empty since it contains µM [≿], and it has a smallest
element µ∗ , since the set of stable matchings is a lattice under the partial order ≿M .
(4) If µ∗ (w) ≻w µ(w) for some w, then Theorem holds with (µ∗ (w), w) and µ∗ . We can now restrict our
consideration to the case where
µ ≿W µ ∗ .

(5) Define a new preference profiles ≿′ by modifying ≿ as follows:


• Each w who is matched under the stable matchings deletes from her preference list of acceptable men all
m such that µ∗ (w) ≻w m.
• If µ(w) ≻w µ∗ (w), then µ∗ (w) is also deleted.
Clearly the second item must hold for some w; otherwise µ = µ∗ .
(6) Let µM [≿′ ] be the man-optimal stable matching for ⟨M, W, ≿′ ⟩. We will show that µM [≿′ ] is the matching
µ̄ of the Theorem.
(7) First we claim µM [≿′ ] is stable under ≿.
(i) Since µW [≿] ≿W µ ≿W µ∗ , µW [≿](w) is acceptable for w under ≿′ , and hence the woman-optimal
stable matching µW [≿′ ] in ⟨M, W, ≿′ ⟩ is still µW [≿].
(ii) Since µW [≿] and µM [≿′ ] are two stable matchings in ⟨M, W, ≿′ ⟩, we have µM [≿′ ] ≿′M µW [≿], which
is equivalent to µM [≿′ ] ≿M µW [≿] due to every man use the same preference in ≿ and ≿′ .
(iii) Suppose w is single under µM [≿′ ].
• Then w is also single under µW [≿], since both are stable matchings in ⟨M, W, ≿′ ⟩.
• If w is part of a blocking pair for µM [≿′ ] under ≿, that is, there exists m, such that (m, w) blocks
µM [≿′ ] under ≿.
• We have
m ≻w µM [≿′ ](w) = w, and w ≻m µM [≿′ ](m) ≿m µW [≿](m).

• Since µW [≿] is stable in ⟨M, W, ≿⟩, we have

w = µW [≿](w) ≿w m,

which contradicts the fact m ≻w w.


• Therefore, w can not be part of a blocking pair for µM [≿′ ] under ≿.
(iv) Suppose w is matched under µM [≿′ ].
• Then she prefers her mate to the men she has deleted.
• Hence she can not block with any deleted man and hence she belongs to no blocking pair.
(8) Next we show that µ∗ ≿M µM [≿′ ].
(i) If not, we have w ≜ µM [≿′ ](m) ≻m µ∗ (m).
(ii) Then by stability of µ∗ we have µ∗ (w) ≻w m.
(iii) By the definition of ≿′ , m is deleted by w, so w = µM [≿′ ](m) is impossible.
(9) It follows that µ(m) ≻m µM [≿′ ](m) for at least one m.
2.6. Extension: Extending the men’s preferences 24

(i) If not we have µ∗ ≿M µM [≿′ ] ≿M µ.


(ii) By the definition of ≿′ , µM [≿′ ] ̸= µ∗ .
(iii) It contradicts that µ∗ is the smallest stable matching preferred by M to µ.
(10) Finally, we apply the blocking lemma to the preference profile ≿′ for which µM [≿′ ] is man-optimal.
(11) Then there is a blocking pair (m0 , w0 ) for µ under ≿′ and hence under ≿.
(12) The proof is complete with µ̄ = µM [≿′ ] as claimed, under the assumption that preferences are strict, by
Remark 2.47.
(13) To prove the theorem without the assumption that preferences are strict, we need the following additional
observation. Let µ be an unstable matching under non-strict preferences ≿. Then there exists a way to break
ties so that the strict preferences ≿′ correspond to ≿, and every pair (m, w) that blocks µ under ≿′ also blocks
µ under ≿: If any agent x is indifferent under ≿ between µ(x) and some other alternative, then under ≿′ , x
prefers µ(x). Then the theorem applied to the case of the strict preferences ≿′ gives the desired result.

2.6 Extension: Extending the men’s preferences

2.49 Example: The effect of extending the men’s preferences.


In the marriage problem Γ = ⟨M, W, ≿⟩, there are six men and five women, and their preferences are given as
follows:

m1 m2 m3 m4 m5 m6 w1 w2 w3 w4 w5
w1 w2 w4 w3 w5 w1 m2 m6 m3 m4 m5
w3 w4 w3 w4 w4 m1 m1 m4 m3
m6 m2 m1 m2
m2

The man-optimal and woman-optimal stable matchings are given by:


[ ] [ ]
M w1 w2 w3 w4 w5 (m6 ) W w1 w2 w3 w4 w5 (m6 )
µ [≿] = , µ [≿] = .
m1 m2 m4 m3 m5 m6 m1 m2 m3 m4 m5 m6

Consider a new marriage problem Γ′ = ⟨M, W, ≿′ ⟩ some of men decide to extend their lists of acceptable women
yielding the new preference profile ≿′ :

m1 m2 m3 m4 m5 m6 w1 w2 w3 w4 w5
w1 w2 w4 w3 w5 w1 m2 m6 m3 m4 m5
w3 w4 w3 w4 w3 w4 m1 m1 m4 m3
w2 w1 w2 w2 m6 m2 m1 m2
m2

In this case the man-optimal and woman-optimal stable matchings are:


[ ] [ ]
M ′ w1 w2 w3 w4 w5 (m1 ) W ′ w1 w2 w3 w4 w5 (m1 )
µ [≿ ] = , µ [≿ ] = .
m2 m6 m4 m3 m5 m1 m2 m6 m3 m4 m5 m1
2.6. Extension: Extending the men’s preferences 25

Under the original preferences ≿, no man is worse off, and no woman is better off at µM [≿] (resp. µW [≿]) than at
µM [≿′ ] (resp. µW [≿′ ]).

2.50 Notation: We will write ≿′m ▷ ≿m if ≿′m is an extension of ≿m by adding people to the end of the original list
of acceptable people. Similarly, we will write ≿′w ▷ ≿w and finally we will write ≿′ ▷M ≿ if ≿′m ▷ ≿m for all
m ∈ M.
Note that for any woman w, her preferences in ≿′ and ≿ are same when ≿′ ▷M ≿.

2.51 Decomposition lemma (Lemma 1 in Gale and Sotomayor (1985)): Let µ and µ′ be, respectively, stable matchings in
⟨M, W, ≿⟩ and ⟨M, W, ≿′ ⟩ with ≿′ ▷M ≿, and all preferences are strict. Let M (µ′ ) be the set of men who prefers
µ′ to µ under ≿ and let W (µ) be the set of women who prefer µ to µ′ . Then µ′ and µ are bijections from M (µ′ ) to
W (µ). (That is, both µ′ and µ match any man who prefers µ′ to a woman who prefers µ, and vice versa.)

Proof. (1) For any m ∈ M (µ′ ), we have µ′ (m) ≻m µ(m) ≿m m, where the second equation holds since µ is
stable and not blocked by any individual.
(2) Then µ′ (m) ̸= m, and hence µ′ (m) ∈ W , denoted by w. So we have w = µ′ (m) ≻m µ(m).
(3) Since µ is a stable matching in ⟨M, W, ≿⟩, µ(w) ≿w m = µ′ (w); otherwise the pair (m, w) blocks µ.
(4) Furthermore, µ(w) ≻w µ′ (w) otherwise µ′ (m) = w = µ(m).
(5) We have µ′ (m) = w ∈ W (µ), and hence µ′ (M (µ′ )) ⊆ W (µ).
(6) For any w ∈ W (µ), we have µ(w) ≻w µ′ (w) ≿w w, where the second equation holds since µ′ is stable and
not blocked by any individual.
(7) Then µ(w) ∈ M , denoted by m.
(8) Since µ′ is a stable matching in ⟨M, W, ≿′ ⟩, µ′ (m) ≻′m µ(m); otherwise the pair (m, w) blocks µ′ .
(9) We have µ′ (m) ≻′m µ(m) = w and µ(m) ≻m m, then µ′ (m) ≻′m µ(m) ≻m m, and hence µ′ (m) ≻m
µ(m) = w.
(10) We have m ∈ M (µ′ ) and hence µ(W (µ)) ⊆ M (µ′ ).
(11) Since µ and µ′ are one-to-one and M (µ′ ) and W (µ) are finite, the conclusion follows.

2.52 Remark: µ and µ′ are not bijections from M (µ) to W (µ′ ).


Consider the Example 2.49. Let
[ ] [ ]
w1 w2 w3 w4 w5 (m6 ) w1 w2 w3 w4 w5 (m1 )
µ ≜ µM [≿] = , µ′ ≜ µM [≿′ ] = .
m1 m2 m4 m3 m5 m6 m2 m6 m4 m3 m5 m1

Then it is clear that there is no bijection between M (µ) and W (µ′ ), where

M (µ) = {m1 , m2 , m6 } and W (µ′ ) = {w1 , w2 }.

2.53 Lattice lemma: Let µ and µ′ be, respectively, stable matchings in ⟨M, W, ≿⟩ and ⟨M, W, ≿′ ⟩ with ≿′ ▷M ≿, and
all preferences are strict. Then we have

• λ = µ ∨M µ′ , under ≿, is a matching and is stable for ⟨M, W, ≿⟩.


• ν = µ ∧M µ′ , under ≿, is a matching and is stable for ⟨M, W, ≿′ ⟩.
2.7. Extension: Adding another woman 26

Proof. We only prove the first statement.

(1) By definition, µ ∨M µ′ agrees with µ′ on M (µ′ ) and W (µ), and with µ otherwise.
(2) By decomposition lemma, λ is therefore a matching.
(3) For m ∈ M (µ′ ), we have µ′ (m) ≻m µ(m) ≿m m so µ′ (m) is acceptable to m under ≿, and hence λ is not
blocked by any individual in ⟨M, W, ≿⟩.
(4) Suppose that some pair (m, w) blocks λ.
(5) If m ∈ M (µ′ ), then w ≻m λ(m) = µ′ (m) ≻m µ(m).
• If w ∈ W (µ), then m ≻w λ(w) = µ′ (w), and hence µ′ is blocked by (m, w).
• If w ∈ W \ W (µ), then m ≻w λ(w) = µ(w), and hence µ is blocked by (m, w).
(6) If m ∈ M \ M (µ′ ), then w ≻m λ(m) = µ(m) ≿m µ′ (m).
• If w ∈ W (µ), then m ≻w λ(w) = µ′ (w), and hence µ′ is blocked by (m, w).
• If w ∈ W \ W (µ), then m ≻w λ(w) = µ(w), and hence µ is blocked by (m, w).
(7) Therefore, λ is a stable matching.

2.54 Theorem (Gale and Sotomayor (1985)): Suppose ≿′ ▷M ≿, and let µM [≿′ ], µM [≿], µW [≿′ ] and µW [≿] be the
corresponding optimal matchings. Then under the preference ≿ the men are not worse off and the women are not
better off in ⟨M, W, ≿⟩ than in ⟨M, W, ≿′ ⟩, no matter which of the two optimal matchings are considered. That is,

µM [≿] ≿M µM [≿′ ], and µW [≿′ ] ≿W µW [≿].

Proof. (1) By lattice lemma (Lemma 2.53), µM [≿] ∨M µM [≿′ ] under ≿ is stable for ⟨M, W, ≿⟩.
( )
(2) Then by optimality we have µM [≿] ≿M µM [≿] ∨M µM [≿′ ] ≿M µM [≿′ ].
(3) Also by lattice lemma (Lemma 2.53), µW [≿] ∨W µW [≿′ ] under ≿ is stable for ⟨M, W, ≿′ ⟩.
( )
(4) Then by optimality we have µW [≿′ ] ≿W µW [≿] ∨W µW [≿′ ] ≿W µW [≿].

2.55 Corollary: µM [≿′ ] ≿W µM [≿] by the stability of µM [≿′ ] and µW [≿] ≿M µW [≿′ ] by the stability of µW [≿].

2.7 Extension: Adding another woman

2.56 Example: Effect of adding another woman.


In the marriage problem Γ = ⟨M, W, ≿⟩, where there are three men and three women, and their preferences are
as follows:

m1 m2 m3 w1 w2 w3
w1 w3 w1 m1 m2 m3
w3 w2 w3 m3 m2

Table 2.5
2.7. Extension: Adding another woman 27

There is a single stable matching in this example:


[ ]
M W w1 w2 w3
µ [Γ] = µ [Γ] = .
m1 m2 m3

Suppose woman w4 now enters, and the new marriage problem Γ′ = ⟨M, W ′ , ≿′ ⟩ is given by W ′ = {w1 , w2 , w3 , w4 },
and ≿′ given by:

m1 m2 m3 w1 w2 w3 w4
w4 w3 w1 m1 m2 m3 m2
w1 w2 w3 m3 m2 m1
w3

Table 2.6

Again there is a single stable matching under ≿′ ;


[ ]
M ′ W ′ w1 w2 w3 w4
µ (Γ ) = µ (Γ ) =
m3 (w2 ) m2 m1

Under the preferences ≿′ , all the men are better off under µM [Γ′ ] than under µM [Γ].

2.57 Theorem (Gale and Sotomayor (1985)): Suppose W ⊆ W ′ and µM [Γ] and µW [Γ] are the man-optimal and woman-
optimal matchings, respectively, for Γ = ⟨M, W, ≿⟩. Let µM [Γ′ ] and µW [Γ′ ] be the man-optimal and woman-
optimal matchings, respectively, for Γ′ = ⟨M, W ′ , ≿′ ⟩, where ≿′ agrees with ≿ on M and W . Then

µW [Γ] ≿W µW [Γ′ ], µW [Γ′ ] ≿M



µW [Γ], µM [Γ′ ] ≿′M µM [Γ], µM [Γ] ≿W µM [Γ′ ].

Proof. (1) Denote by ≿′′ the set of preferences on M ∪ W ′ such that ≿′′ agrees with ≿′ on M ∪ W , and for each
w ∈ W ′ \ W , w has no acceptable man under ≿′′ .
(2) Let µM [Γ′′ ] and µW [Γ′′ ] be the man-optimal and woman-optimal stable matchings for Γ′′ = ⟨M, W ′ , ≿′′ ⟩.
(3) Since no man is acceptable to any woman in W ′ \ W under ≿′′ , µM [Γ′′ ] agrees with µM [Γ] on M ∪ W , and
µW [Γ′′ ] agrees with µW [Γ] on M ∪ W .
(4) Note that ≿′ ▷W ≿′′ .
(5) So we can apply Theorem 2.54 and obtain that

µW [Γ′′ ] ≿′′W ′ µW [Γ′ ],

so µW [Γ] ≿W µW [Γ′ ].
(6) Similarly, µW [Γ′ ] ≿′M µW [Γ′′ ] so µW [Γ′ ] ≿′M µW [Γ].
(7) Similarly, µM [Γ′ ] ≿′M µM [Γ′′ ] so µM [Γ′ ] ≿′M µM [Γ].
(8) Finally, µM [Γ′′ ] ≿′′W ′ µM [Γ′ ] so µM [Γ] ≿W µM [Γ′ ].

2.58 Remark: Theorem 2.57 states that when new women enter, no man is hurt under the man-optimal matchings.
2.7. Extension: Adding another woman 28

2.59 Theorem: Suppose a woman w0 is added and let µW [Γ′ ] be the woman-optimal stable matching for Γ′ = ⟨M, W ′ =
W ∪{w0 }, ≿′ ⟩, where ≿′ agrees with ≿ on W . Let µM [Γ] be the man-optimal stable matching for Γ = ⟨M, W, ≿⟩.
If w0 is not single under µW [Γ′ ], then there exists a non-empty subset of men, S, such that if a man is in S he is
better off, and if a woman is in µM [Γ](S) she is worse off under any stable matching for the new marriage problem
than under any stable matching for the original marriage problem, under the new (strict) preferences ≿′ .

Proof. (1) Let µW [Γ′ ](w0 ) = m0 .


(2) If m0 is single under µM [Γ], then Theorem holds by taking S = {m0 }.
(3) So suppose m0 is matched to w1 ∈ W under µM [Γ].
(4) It suffices to show that there exists a set of men S such that

µW [Γ′ ](m) ≻′m µM [Γ] for all m ∈ S, and µM [Γ](w) ≻w µW [Γ′ ] for any w ∈ µM [Γ](S).

(5) Construct a directed graph whose vertices are M ∪ W . There are two type of arcs.
• If m ∈ M and µM [Γ](m) = w ∈ W , there is an arc from m to w.
• If w ∈ W and µW [Γ′ ](w) = m ∈ M , there is an arc from w to m.
(6) Let M̄ ∪ W̄ be all vertices that can be reached by a directed path starting from m0 .
(7) Case 1: The path starting from m0 ends at wk+1 , that is,

µW [Γ′ ] µW [Γ′ ]
m0 w1 m1 w2 m2
µM [Γ] µM [Γ]

µW [Γ′ ] µW [Γ′ ]
wi+1 mi wi mi−1 wi−1
µM [Γ] µM [Γ]

µW [Γ′ ] µW [Γ′ ]
mk−1 wk mk wk+1 wk+1
µM [Γ] µM [Γ]

Figure 2.3

(i) We claim that S = {m0 , m1 , . . . , mk } has the desired property. µM [Γ](S) = {w1 , w2 , . . . , wk+1 }
(ii) mk = µM [Γ](wk+1 ) ≻wk+1 wk+1 = µW [Γ′ ](wk+1 ) implies

wk = µW [Γ′ ](mk ) ≻mk wk+1 = µM [Γ](mk ).

(iii) Then mk−1 = µM [Γ](wk ) ≻wk mk = µW [Γ′ ](wk ).


(iv) By induction, we have

µW [Γ′ ](mi ) ≻mi µM [Γ](mi ), i = 0, 1, . . . , k


µM [Γ](wj ) ≻wj µW [Γ′ ](wj ), j = 1, 2, . . . , k + 1.

(8) Case 2: The path starting from m0 ends at mk , that is,


(i) We claim that S = {m0 , m1 , . . . , mk } has the desired property. µ(S) = {w1 , w2 , . . . , wk }.
2.8. Incentive compatibility I 29

µW [Γ′ ] µW [Γ′ ]
m0 w1 m1 w2 m2
µM [Γ] µM [Γ]

µW [Γ′ ] µW [Γ′ ]
wi+1 mi wi mi−1 wi−1
µM [Γ] µM [Γ]

µW [Γ′ ]
mk−1 wk mk mk
µM [Γ] µM [Γ]

Figure 2.4

(ii) wk = µW [Γ′ ](mk ) ≻mk µM [Γ](mk ) = mk implies

mk−1 = µM [Γ](wk ) ≻wk mk = µW [Γ′ ](wk ).

(iii) Then wk−1 = µW [Γ′ ](mk−1 ) ≻mk−1 wk = µM [Γ](mk−1 ).


(iv) By induction, we have

µW [Γ′ ](mi ) ≻mi µM [Γ](mi ), i = 0, 1, . . . , k


µM [Γ](wj ) ≻wj µW [Γ′ ](wj ), j = 1, 2, . . . , k.

2.60 Remark: There exist some men who are in fact helped in quite a clear way (unless the new women remain un-
matched): They are better off at every stable matching in the new market than they were at any stable matching of
the old market. Furthermore (unless these men were all previously unmatched), there are some women who are
similarly harmed by the entry of new women into the market.

2.8 Incentive compatibility I


 2.61 A (direct) mechanism ( ) φ is a systematic procedure that determines a matching for each marriage problem
⟨M, W, ≿⟩.

input output
a (marriage) problem φ a matching

Figure 2.5: A mechanism

We have already studied two typical mechanisms which select the man-optimal and woman-optimal stable match-
ings, denoted by DAM and DAW , respectively. We call them the man-optimal stable mechanism and the woman-
optimal stable mechanism, respectively.
For the sake of convenience, we shall use “the men-proposing deferred acceptance algorithm” interchangeably with
“the man-optimal stable mechanism”.
2.8. Incentive compatibility I 30

2.62 Question: What is the difference between a matching and a mechanism?

 2.63 A mechanism φ is stable if it always selects a stable matching.4


A mechanism φ is Pareto efficient if it always selects a Pareto efficient matching.
A mechanism φ is individually rational if it always selects an individually rational matching.

2.64 Let Pi denote the set of all preferences for i ∈ M ∪ W , P = Pm1 × · · · × Pmp × Pw1 × · · · × Pwq denote the set
of all preference profiles, and P−i denote the set of all preference profiles for all individuals except i. Let M denote
the set of all matchings.

2.65 We have learned properties of stable matching, given information about preferences of participants. But in reality,
preferences are private information, so the clearinghouse should ask participants. Do people have incentives to tell
the truth?
In a marriage problem ⟨M, W, ≿⟩, we assume that everything is known except ≿. Therefore, people are the only
strategic agents in the problem and can manipulate the mechanism by misreporting their preferences.
When other components of the problem are clear, we represent the problem just by ≻, represent the outcome of
the mechanism by φ[≻], and a mechanism becomes a function φ : P → M.

 2.66 A mechanism φ is strategy-proof5 ( ) if for each marriage problem ⟨M, W, ≿⟩, for each i ∈ M ∪ W ,
and for each ≿′i ∈ Pi , we have
φ[≿−i , ≿i ](i) ≿i φ[≿−i , ≿′i ](i).

2.67 Example: Deferred acceptance algorithm is not strategy-proof.


Consider the following marriage problem with two men and two women with preferences ≿ given by:

m1 m2 w1 w2
w1 w2 m2 m1
w2 w1 m1 m2

Table 2.7

The outcome of men-proposing deferred acceptance algorithm is


[ ]
m1 m2
.
w1 w2

However, w1 can be better off if she misreports her preference ≻′w1 : m2 . The new outcome is
[ ]
m1 m2
.
w2 w1

2.68 Example: A strategy-proof (and Pareto efficient) mechanism.


For any marriage problem ⟨M, W, ≿⟩, let the men be placed in some order, {m1 , m2 , . . . , mp }. Consider the
mechanism that for any stated preference profile ≿′ yields the matching µ = φ[≿′ ] that matches m1 to his stated
first choice, m2 to his stated first choice of possible mates remaining after µ(m1 ) has been removed from the market,
and any mk to his stated first choice after µ(m1 ) through µ(mk−1 ).
4 Table 1 in Roth (2002) shows that unstable matching algorithms tend to die out while stable algorithms survive the test of time.
5 In general, a mechanism is strategy-proof if it is a weakly-dominant strategy for every individual to reveal his/her private information.
2.8. Incentive compatibility I 31

• It is clearly a dominant strategy for each man to state his true preferences, since each man is married to
whomever he indicates is his first choice among those remaining when his turn comes. It is also (degenerately)
a dominant strategy for each woman to state her true preferences, since the preferences stated by the women
have no influence.
• The mechanism φ is Pareto efficient, since at any other matching some man would do no better.
• However, φ is not a stable matching mechanism, since it might happen, for example, that woman w = φ[≿
](m1 ), who is the (draft) choice of man m1 would prefer to be matched with someone else, who would also
prefer to be matched to her. That is, φ is not a stable matching mechanism because there are some sets of
preferences for which it will produce unstable outcomes.

 2.69 Impossibility theorem (Theorem 3 in Roth (1982b)): There exists no mechanism that is both stable and strategy-
proof. In other words, for any stable mechanism φ, there exist a marriage problem ⟨M, W, ≿⟩, a person i ∈ M ∪W ,
and a preference ≿′i such that
φ[≿′i , ≿−i ](i) ≻i φ[≿i , ≿−i ](i).

Proof. (1) Consider the following marriage problem with two men and two women with preferences ≿ given by:

m1 m2 w1 w2
w1 w2 m2 m1
w2 w1 m1 m2

Table 2.8

(2) In this problem there are only two stable matchings:


[ ] [ ]
M m1 m2 W m1 m2
µ = and µ = .
w1 w2 w2 w1

(3) Let φ be any stable mechanism. Then φ[≿] = µM or φ[≿] = µW .


(4) If φ[≿] = µM then woman w1 can report a fake preference ≿′w1 where only her top choice m2 is acceptable
and force her favorite stable matching µW to be selected by φ since it is the only stable matching for the
marriage problem (≿−w1 , ≿′w1 ).
(5) If, on the other hand, φ[≿] = µW , then man m1 can report a fake preference ≿′m1 where only his top choice
w1 is acceptable and force his favorite stable matching µM to be selected by φ since it is the only stable match-
ing for the marriage problem (≿−m1 , ≿′m1 ).

2.70 Remark: No perfect mechanism exists.

2.71 Corollary: No stable mechanism exists for which stating the true preferences is always a best response for every
individual when all other individuals state their true preferences.

2.72 Theorem: When any stable mechanism is applied to a marriage problem in which preferences are strict and there is
more than one stable matching, then at least one individual can profitably misreport his or her preference, assuming
that the others tell the truth.

Proof. (1) By hypothesis µM ̸= µW .


2.8. Incentive compatibility I 32

(2) Without loss of generality, suppose that when all individuals state their true preferences, the mechanism selects
a stable matching µ ̸= µW .
(3) Let w be any woman such that µW (w) ≻w µ(w). Note that w is not single at µW .
(4) Let w misreport her preference by removing from her stated preference list of acceptable men all men who
rank below µW (w).

µW (w) µ(w) w
≻w

µW (w)
≻′w
w
µ′ (w)

(5) Clearly the matching µW will still be stable under this preference profile.
• It is obvious that µW is individually rational under the new preference profile, since µW (w) ≿′w w and
µW (i) ≿i i for each i ̸= w.
• It is trivial that µW is not blocked by a pair which does not contain w under the new preference profile;
otherwise µW is blocked by this pair under the original preference profile.
• If µW is blocked by a pair (m, w) under the new preference profile, then m ≻′w µW (w) and w ≻m
µW (m). Thus, m ≻w µW (w) and w ≻m µW (m), which means that µW is blocked by the pair (m, w)
under the original preference profile.
(6) Letting µ′ be the stable matching selected by the mechanism for the new preference profile.
(7) It follows from rural hospital theorem (Theorem 2.31) that w is not single under µ′ (µW and µ′ are two stable
matchings under the new preference profile).
(8) Hence, she is matched with someone she likes at least as well as µW (w), since all other men have been removed
from her list of acceptable men. That is, µ′ (w) ≿w µW (w).
(9) It is clear that µ′ is also stable for the original preference profile.
• It is obvious that µ′ is individually rational under the original preference profile, since µ′ (w) ≿w µW (w) ≻w
w and µ′ (i) ≿i i for each i ̸= w.
• It is trivial that µ′ is not blocked by a pair which does not contain w under the original preference profile;
otherwise µ′ is blocked by this pair under the new preference profile.
• If µ′ is blocked by a pair (m, w) under the original preference profile, then m ≻w µ′ (w) and w ≻m
µ′ (m). Thus, m ≻′w µ′ (w) and w ≻m µ′ (m), which means that µ′ is blocked by the pair (m, w) under
the new preference profile.
(10) Then µW (w) ≿w µ′ (w) due to the woman-optimality of µW (under the original preference profile).
(11) It follows that µW (w) = µ′ (w), and hence µ′ (w) ≻w µ(w).
(12) Therefore, w prefers matching µ′ to µ.
(13) If the mechanism originally selects the matching µW , then the symmetric argument can be made for any man
m who strictly prefers µM .

2.73 Question: What is the difference between Theorems 2.69 and 2.72?
2.8. Incentive compatibility I 33

2.74 Proposition: If φ is a stable mechanism, and µ is a stable matching in ⟨M, W, ≻⟩, then for each i ∈ M ∪ W , there
exists ≻i′ such that φ[≻′i , ≻−i ](i) = µ(i).

Proof. (1) Let ≻′i : µ(i), i.


(2) Note that µ is also stable at (≻′i , ≻−i ).
(3) If i is matched at ≻, then i is also matched at (≻′i , ≻−i ).
(4) Since only µ(i) is acceptable to i at ≻′i and φ is stable, φ[≻′i , ≻−i ](i) = µ(i).

The proposition implies that a man/woman can misreport to obtain any stable assignment under a stable mecha-
nism.

2.75 Theorem (Proposition 1 in Alcalde and Barberà (1994)): There exists no mechanism that is Pareto efficient, indi-
vidually rational, and strategy-proof.

Proof. (1) Consider the following marriage problem with two men and two women with preferences ≿1 given
by:

m1 m2 w1 w2
w1 w2 m2 m1
w2 w1 m1 m2

Table 2.9

(2) In this problem there are only two individually rational, Pareto efficient matchings:
[ ] [ ]
m1 m2 m1 m2
µ11 = and µ12 = .
w1 w2 w2 w1

(3) Let φ be any individually rational, and Pareto efficient mechanism. Then φ[≿1 ] = µ11 or φ[≿1 ] = µ12 .
(4) If φ[≿1 ] = µ11 . Then consider the marriage problem with two men and two women with preferences ≿2 given
by:

m1 m2 w1 w2
w1 w2 m2 m1
w2 w1 m2

Table 2.10

In this problem there are only two individually rational, Pareto efficient matchings:
[ ] [ ]
m1 m2 (w1 ) m1 m2
µ21 = and µ22 = .
(m1 ) w2 w1 w2 w1

• If φ[≿2 ] = µ22 , w1 can manipulate φ at ≿1 via ≿2w1 : w1 will get m1 if reporting true preference ≿1w1 , and
get m2 if misreporting ≿2w1 .
• If φ[≿2 ] = µ21 , then consider the marriage problem with two men and two women with preferences ≿3
given by:
2.8. Incentive compatibility I 34

m1 m2 w1 w2
w1 w2 m2 m1
w2 w1

Table 2.11

In this problem there is only one individually rational, Pareto efficient matching:
[ ]
m1 m2
µ3 = .
w2 w1

w2 can manipulate at ≿2 via ≿3w2 : w2 will get m2 if reporting the true preference ≿2w2 , and get w1 if
misreporting ≿3w2 .
(5) If φ[≿] = µ12 . Then consider the marriage problem with two men and two women with preferences ≿4 given
by:

m1 m2 w1 w2
w1 w2 m2 m1
w1 m1 m2

Table 2.12

In this problem there are only two individually rational, Pareto efficient matchings:
[ ] [ ]
m1 m2 m1 m2 (w2 )
µ41 = and µ42 = .
w1 w2 (m1 ) w1 w2

• If φ[≿4 ] = µ41 , m1 can manipulate φ at ≿1 via ≿4m1 : m1 will get w2 if reporting true preference ≿1m1 ,
and get w1 if misreporting ≿4m1 .
• If φ[≿4 ] = µ42 , then consider the marriage problem with two men and two women with preferences ≿5
given by:

m1 m2 w1 w2
w1 w2 m2 m1
m1 m2

Table 2.13

In this problem there is only one individually rational, Pareto efficient matching:
[ ]
5 m1 m2
µ = .
w1 w2

m2 can manipulate at ≿4 via ≿5m2 : m2 will get w1 if reporting the true preference ≿5m2 , and get w2 if
misreporting ≿5m2 .
2.9. Incentive compatibility II 35

2.9 Incentive compatibility II


 2.76 Theorem (Theorem 9 in Dubins and Freedman (1981), Theorem 5 in Roth (1982b)): Truth-telling is a weakly dom-
inant strategy for any man under the man-optimal stable mechanism. Similarly, truth-telling is a weakly dominant
strategy for any woman under the woman-optimal stable mechanism.
Intuition: Men are not punished when applying to preferred women. This is in a contrast with the Boston mecha-
nism.

Proof. It is a corollary of theorem of limits on successful manipulation (Theorem 2.86).


We provide an alternative proof as follows:

(1) In the marriage problem ⟨M, W, ≻⟩, suppose that man m misreports ≻′m . Let DAM [≻′m , ≻−m ] = µ. It is
sufficient to show that by truthfully reporting ≻m , m will be weakly better off.
(2) Case 1: If µ(m) = m or m ≻i µ(m), nothing needs to be proved.
(3) Case 2: Suppose that µ(m) = w.
(4) Suppose m reports ≻′′m : w, m, i.e., only w is acceptable to him.

µ(m) = w m
≻′m

≻′′m
w m

(i) At (≻′′m , ≻−m ), µ is still stable due to less desires.


(ii) Since m is matched to w under µ, rural hospital theorem (Theorem 2.31) implies that m being unmatched
will be unstable at (≻′′m , ≻−m ).
(5) Consider ≻′′′
m : . . . , w, m, which is obtained by truncating the true preference from w.

m
≻m
w

≻′′′
m w m

(i) m being unmatched will also be unstable at (≻′′′


m , ≻−m ): If a matching making m single is stable under
(≻′′′ ′′
m , ≻−m ), then it is also stable under (≻m , ≻−m ).

(ii) Therefore, under DAM [≻′′′


m , ≻−m ], m is matched to some woman weakly better than w.

(iii) As the DA procedure is the same under (≻′′′


m , ≻−m ) and (≻m , ≻−m ), m will be weakly better off by
truthfully reporting ≻m .

 2.77 Remark: Deferred acceptance algorithm is the unique stable and one-sided strategy-proof mechanism; see Theo-
rem 9.34.

2.78 Remark: The men-proposing deferred acceptance algorithm is group strategy-proof for men.

2.79 Simple misreport manipulation lemma (Lemma 1 in Roth (1982b)): Let m be in M . Let µM [≿′ ] and µM [≿′′ ] be
the corresponding man-optimal stable matchings for ⟨M, W, ≿′ ⟩ and ⟨M, W, ≿′′ ⟩, where ≿′i =≿′′i for all agents i
other than m, and µM [≿′ ](m) is the first choice for m in ≿′′m . Then µM [≿′′ ](m) = µM [≿′ ](m).
2.9. Incentive compatibility II 36

Proof. (1) Clearly the matching µM [≿′ ] is stable under the preference profile ≿′′ .
(2) Since µM [≿′′ ] is man-optimal in ⟨M, W, ≿′′ ⟩ and µM [≿′ ](m) is the first choice of ≿′′m , we have µM [≿′
](m) = µM [≿′′ ](m).

2.80 Remark: There are of course many ways in which a man m might report a preference ordering ≿′m different from
≿m , but this lemma shows that, in considering man m’s incentives to misreport his preferences, we can confine our
attention to certain kinds of simple misreport.
Suppose by reporting some preference ≿′m , man m can change his mate from µM [≿](m) to µM [≿′ ](m). Then he
can get the same result—that is, he can be matched to µM [≿′ ](m)—by reporting a preference ≿′′m in which µM [≿′
](m) is his first choice. So, if there is any way for m to be matched to µM [≿′ ](m) by reporting some appropriate
preference, then there is a simple way—he can just list her as his first choice.

µM [≿′ ](m) = w m
≻′w

≻′′w
w m

2.81 Lemma (Lemma 2 in Roth (1982b)): Let m be in M . Let µM [≿′ ] be the man-optimal stable matching for ⟨M, W, ≿′
⟩. If ≿′i =≿i for all i other than m and µM [≿′ ](m) is the first choice for m in ≿′m , and µM [≿′ ](m) ≿m µM [≿](m),
then for each mj in M we have µM [≿′ ](mj ) ≿mj µM [≿](mj ).
{ }
Proof. (1) Let M ∗ = mj | µM [≿](mj ) ≻mj µM [≿′ ](mj ) . Suppose M ∗ ̸= ∅.
(2) It is clear that all mj in M ∗ are matched under µM [≿].
(3) Since every individual other than m reports the same preferences under ≿ and ≿′ and m ̸∈ M ∗ , it must be
that all mj in M ∗ are rejected by their mates under ≿M [≿] at some step of the deferred acceptance algorithm
in ⟨M, W, ≿′ ⟩.
(4) Let s be the first step of the algorithm in ⟨M, W, ≿′ ⟩ at which some mj in M ∗ is rejected by w ≜ µM [≿](mj ).
(5) Since mj and w are mutually acceptable, this implies that w must receive a proposal at Step s of the algorithm
for ⟨M, W, ≿′ ⟩ from some mk who did not propose to her under ≿ and whom she likes more than mj .
(6) The fact that mk did not propose to w under ≿ means that µM [≿](mk ) ≻mk w.
(7) Then mk ∈ M ∗ ; otherwise we have the contradiction

w ≿mk µM [≿′ ](mk ) ≿mk µM [≿](mk ) ≻mk w,

where the first relation holds because in deferred acceptance algorithm for ⟨M, W, ≿′ ⟩, mk is on the waiting
list of w at Step s.
(8) So mk ̸= m and ≿mk =≿′mk and mk must have been rejected by µM [≿](mk ) in ⟨M, W, ≿′ ⟩ prior to Step s,
which contradicts the choice of s as the first such period.
(9) Consequently, M ∗ = ∅ and µM [≿′ ](mj ) ≿mj µM [≿](mj ) for all mj in M .

2.82 Remark: Lemma shows that if a simple misreport by m leaves m at least as well off as at µM [≿], then no man will
suffer; that is, every man likes the matching µM [≿′ ] resulting from the misreport at least as well as the matching
µM [≿]. This illustrates another way in which the men have common rather than conflicting interests.
2.10. Non-bossiness 37

2.83 Theorem (Theorem 17 in Dubins and Freedman (1981)): Let ≿ be the true preferences of the agents, and let ≿′
differ from ≿ in that some coalition M̄ of the men misreport their preferences. Then there is no matching µ, stable
for ≿′ , which is preferred to µM [≿] by all members of M̄ .

Proof. It is a corollary of theorem of limits on successful manipulation (Theorem 2.86).

2.84 Remark: Theorem 2.83 implies that if the man-optimal stable mechanism is used, then no man or coalition of men
can improve the outcome for all its members by misreporting preferences.

2.85 For an agent i with true preference ≿i , the strict preference ≿+


i corresponds to ≿i if the true preference can be
obtained from ≿+
i without changing the order of any alternatives, simply by indicating which alternatives are tied.

2.86 Theorem of limits on successful manipulation (Theorem in Demange, Gale and Sotomayor (1987)): Let ≿ be the
true preferences (not necessarily strict) of the agents, and let ≿′ differ from ≿ in that some coalition C of men and
women misreport their preferences. Then there is no matching µ, stable for ≿′ , which is preferred to every stable
matching under the true preference profile ≿ by all members of C.

Proof. (1) Suppose that some non-empty subset M̄ ∪ W̄ of men and women misreport their preferences and are
strictly better off under some µ, stable under ≿′ , than under any stable matching under ≿.
(2) If µ is not individually rational under ≿, then someone, say a man, is matched under µ with a woman not on
his true list of acceptable women, so he is surely a liar and is in M̄ , which is a contradiction.
(3) Assume µ is individually rational under ≿.
(4) Clearly µ is not stable under ≿, since every member in the coalition prefers µ to any stable matching.
(5) Construct a corresponding preference profile ≿+ , with strict preferences, so that, if any agent i is indifferent
under ≿ between µ(i) and some other alternative, then under ≿+ i prefers µ(i).
(6) Then (m, w) blocks µ under ≿+ only if (m, w) blocks µ under ≿.
(7) Since every stable matching under ≿+ is also stable under ≿,

µ(m) ≻m µM [≿+ ](m) for every m in M̄ , and µ(w) ≻w µW [≿+ ](w) for every w in W̄ .

(8) If M̄ is not empty, we can apply the blocking lemma (Lemma 2.46) to the marriage problem ⟨M, W, ≿+ ⟩:
there is a pair (m, w) that blocks µ under ≿+ and so under ≿, such that

µM [≿+ ](m) ≿m µ(m) and µM [≿+ ](w) ≿w µ(w).

(9) Clearly m and w are not in M̄ ∪ W̄ and therefore are not misreporting their preferences, so they will also
block µ under ≿′ , contradicting that µ is stable under ≿′ .
(10) If M̄ is empty, W̄ is not empty and the symmetrical argument applies.

2.87 Remark: Theorem 2.86 implies that no matter which stable matching under ≿′ is chosen, at least one of the liars is
not better off than he would be at the man-optimal matching under ≿.
2.10. Non-bossiness 38

2.10 Non-bossiness

 2.88 Definition: A mechanism φ is said to be non-bossy ( )6 if, for each marriage problem ⟨M, W, ≻⟩, for each
i ∈ M ∪ W , and for each ≻′i ∈ Pi ,

φ[≻′i , ≻−i ](i) = φ[≻](i) implies φ[≻′i , ≻−i ] = φ[≻].

2.89 Example: Deferred acceptance algorithm is not non-bossy.


Let M = {m1 , m2 , m3 } and W = {w1 , w2 }, and preferences given by

m1 m2 m3 w1 w2
w1 w1 w2 m3 m1
w2 w1 m2 m3
m1

Table 2.14

The men-proposing DA outcome is [ ]


m1 m2 m3
w2 (m2 ) w1

Consider a preference for m2 , ≻′m2 : m2 . Then the men-proposing DA outcome under this modified preference is
[ ]
m1 m2 m3
w1 (m2 ) w2

So we have just shown that the men-proposing DA is not non-bossy.

 2.90 Theorem (Theorem 1 in Kojima (2010)): There exists no stable mechanism that is non-bossy for marriage problems.

Proof. (1) Consider a problem where W = {w1 , w2 , w3 } and M = {m1 , m2 , m3 }, and preferences are given
by

m1 m2 m3 w1 w2 w3
w3 w3 w1 m1 ∅ m3
w2 w2 w2 m2 m2
w1 w1 w3 m3 m1

Table 2.15

(2) There exists a unique stable matching


[ ]
w1 w2 w3 ∅
φ[≻] = .
m1 ∅ m3 m2

(3) Consider ≻′m2 given by


≻′m2 : ∅.
6 The concept of non-bossiness is due to Satterthwaite and Sonnenschein (1981). A mechanism is “non-bossy” if whenever a change in an

individual’s preference does not bring about a change in his assignment, then it does not bring about a change in anybody’s assignment. See
Thomson (2014).
2.10. Non-bossiness 39

(4) Now there are two stable matchings, µ and µ′ , given by


[ ] [ ]
w1 w2 w3 ∅ ′ w1 w2 w3 ∅
µ= , µ = .
m3 ∅ m1 m2 m1 ∅ m3 m2

(5) Case 1: φ[≻′m2 , ≻−m2 ] = µ. Then φ[≻′m2 , ≻−m2 ](m2 ) = φ[≻](m2 ) and φ[≻m

2
, ≻−m2 ] ̸= φ[≻]. Thus, φ
is not non-bossy.
(6) Case 2: φ[≻′m2 , ≻−m2 ] = µ′ .
(i) Consider ≻′w2 given by
≻′w2 : m1 , m2 , m3 .

(ii) Then φ[≻′w2 , ≻′w2 , ≻−w2 −m2 ] is given by


[ ]
w1 w2 w3 ∅
φ[≻′w2 , ≻′m2 , ≻−w2 −m2 ] = .
m3 ∅ m1 m2

(iii) Therefore, we have that

φ[≻′w2 , ≻′m2 , ≻−w2 −m2 ](w2 ) = φ[≻′m2 , ≻−m2 ](w2 ), and φ[≻′w2 , ≻′m2 , ≻−w2 −m2 ] ̸= φ[≻′m2 , ≻−m2 ],

so φ is not non-bossy.

2.91 A rough idea is to note that the men-proposing DA is not non-bossy, but then when preference of a man (say m2 )
changes, there are two stable matchings and one of them, which is the woman-optimal stable matching, does not
contradict non-bossiness (yet). But then, we can add one more agent, w2 , to make the situation much like the
original situation, but the roles of men and women are switched.

2.92 Exercise: Find a non-bossy mechanism for marriage problems.


2.10. Non-bossiness 40
Chapter 3
College admissions

Contents
3.1 The formal model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2 Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.3 The connection between the college admissions model and the marriage model . . . . . . . . . . . . 44
3.4 Deferred acceptance algorithm and properties of stable matchings . . . . . . . . . . . . . . . . . . . 45
3.5 Further results for the college admissions model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.6 Incentive compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6.1 Preference manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.6.2 Capacity manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.7 Comparison of marriage problems and college admissions . . . . . . . . . . . . . . . . . . . . . . . 56
3.8 National intern matching program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.9 New York City high school match . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

3.1 The formal model

3.1 In a college admissions model, there exist two sides of agents referred to as colleges and students. Each student
would like to attend a college and has preferences over colleges and the option of remaining unmatched. Each col-
lege would like to recruit a maximum number of students determined by their exogenously given capacity. They
have preferences over individual students, which translate into preferences over groups of students under a respon-
siveness assumption.

 3.2 Definition: A college admissions problem Γ = ⟨S, C, q, ≻⟩ consists of:

• a finite set of students S,


• a finite set of colleges C,
• a quota vector q = (qc )c∈C such that qc ∈ Z+ is the quota of college c,
• a preference profile for students ≻S = (≻s )s∈S such that ≻s is a strict preference over colleges and remaining
unmatched, denoting the strict preference of student s,

41
3.2. Stability 42

• a preference profile for colleges ≻C = (≻c )c∈C such that ≻c is a strict preference over students and remaining
unmatched, denoting the strict preference of college c.

In this chapter, we will use ∅ to denote “unmatched”.

 3.3 Definition: In a college admissions problem, a matching is the outcome, and is defined by a function µ : C ∪ S →
2S ∪ 2C such that

• for each student s ∈ S, µ(s) ∈ 2C with |µ(s)| ≤ 1,


• for each college c ∈ C, µ(c) ∈ 2S with |µ(c)| ≤ qc ,
• µ(s) = c if and only if s ∈ µ(c).

Alternatively, a matching is a function µ : S → C ∪ {∅} such that for each college c, |µ−1 (c)| ≤ qc .

3.4 Even though we have described colleges’ preferences over students, each college with a quota greater than one must
be able to compare groups of students in order to compare alternative matchings, and we have yet to describe the
preferences of colleges over groups of students.
Example: Suppose that there are three students {1, 2, 3} and a college c has three quotas. Then the college c should
have a ranking over the groups of students: {1, 2, 3}, {1, 2}, {1, 3}, {2, 3}, {1}, {2}, {3}, ∅.

3.5 Let ≻#c denote the preference of college c over all assignments µ(c) it could receive at some matching µ of the college
admissions problem.
Definition: The preference ≻#c over sets of students is responsive (to the preferences over individual students) if,1

• whenever si , sj ∈ S and S ′ ⊆ S \ {si , sj }, si ∪ S ′ ≻#c sj ∪ S ′ if and only if si ≻c sj ;


• whenever s ∈ S and S ′ ⊆ S \ s, s ∪ S ′ ≻#c S ′ if and only if s ≻c ∅, which denotes the remaining unmatched
option for a college (and for a student).

3.6 Remark: A college c’s preferences ≻#c will be called responsive to its preferences over individual students if, for any
two assignments that differ in only one student, it prefers the assignment containing the more preferred student
(and is indifferent between them if it is indifferent between the students).

3.7 Example: Suppose that there are two students {1, 2} and a college c has two quotas. The following preference ≻c
is not responsive:

c
{1, 2}
{1}

Table 3.1

3.2 Stability

3.8 Definition: A matching µ is blocked by a college c ∈ C if there exists s ∈ µ(c) such that ∅ ≻c s.
A matching µ is blocked by a student s ∈ S if ∅ ≻s µ(s).
A matching is individually rational if it is not blocked by any college or student.
1 By an abuse of notation, we will denote a singleton without {}.
3.2. Stability 43

3.9 Definition: A matching µ is blocked by a pair (c, s) ∈ C × S if

• c ≻s µ(s), and
• – either there exists s′ ∈ µ(c) such that s ≻c s′ (justifiable envy), or
– |µ(c)| < qc and s ≻c ∅ (wasteful).

 3.10 Definition: A matching is stable if it is not blocked by any agent or pair.

3.11 Example: If colleges do not have responsive preferences, the set of stable matchings might be empty.
Consider two colleges and three students with the following preferences, and each college can admit as many as
students as it wishes.

c1 c2 s1 s2 s3
{s1 , s3 } {s1 , s3 } c2 c2 c1
{s1 , s2 } {s2 , s3 } c1 c1 c2
{s2 , s3 } {s1 , s2 }
s1 s3
s2 s1
s2

Table 3.2

It is clear that c1 ’s preference is not responsive.


The only individually rational matchings without unemployment are
[ ]
c1 c2
µ1 = , which is blocked by (c2 , s1 )
s1 , s3 s2
[ ]
c1 c2
µ2 = , which is blocked by (c2 , {s1 , s3 })
s1 , s2 s3
[ ]
c1 c2
µ3 = , which is blocked by (c2 , {s1 , s2 })
s2 , s3 s1
[ ]
c1 c2
µ4 = , which is blocked by (c1 , {s2 , s3 })
s2 s1 , s3
[ ]
c1 c2
µ5 = , which is blocked by (c1 , {s1 , s3 })
s1 s2 , s3

Now observe that any matching that leaves s1 unmatched is blocked either by (c1 , s1 ) or by (c2 , s1 ); any matching
that leaves s2 unmatched is blocked either by (c1 , s2 ), (c2 , s2 ) or (c2 , {s2 , s3 }). Finally, any matching that leaves
s3 unmatched is blocked by (c2 , {s1 , s3 }).

3.12 We will henceforth assume that colleges have preferences over groups of students that are responsive to their pref-
erences over individual students.

3.13 Definition: A matching µ is group unstable, or it is blocked by a coalition, if there exists another matching µ′ and
a coalition A, which might consist of multiple students and/or colleges, such that for all students s in A, and for all
colleges c in A,

(1) µ′ (s) ∈ A, i.e., every student in A who is matched by µ′ is matched to a college in A;


3.3. The connection between the college admissions model and the marriage model 44

(2) µ′ (s) ≻s µ(s), i.e., every student in A prefers his/her new match to his/her old one;
(3) s′ ∈ µ′ (c) implies s′ ∈ A ∪ µ(c), i.e., every college in A is matched at µ′ to new students only from A,
although it may continue to be matched with some of its old students from µ(c);
(4) µ′ (c) ≻c µ(c), i.e., every college in A prefers its new set of students to its old one.

A matching is group stable if it is not blocked by any coalition.

3.14 Proposition: In college admissions model, a matching is group stable if and only if stable.

Proof. (1) If µ is blocked via coalition A and matching µ′ , let c ∈ A.


(2) Then the fact that µ′ (c) ≻c µ(c) implies that there exists a student s in µ′ (c) \ µ(c) and a s′ ∈ µ(c) \ µ′ (c)
such that s ≻c s′ .
(3) So s ∈ A, and hence µ′ (s) ≻s µ(s).
(4) So s prefers c = µ′ (s) to µ(s), so µ is blocked by the pair (s, c).

3.3 The connection between the college admissions model and the marriage model

3.15 The importance of Proposition 3.14 for the college admissions model goes beyond the fact that it allows us to
concentrate on small coalitions. It says that stable and group stable matchings can be identified using only the
preferences ≻ over individuals—that is, without knowing the preferences ≻#c that each college has over groups of
students.

3.16 Consider a particular college admissions problem. We can consider a related marriage problem, in which each
college c with quota qc is broken into qc “pieces” of itself, so that in the related problem, the agents will be students
and college positions, each having a quota of one.

3.17 Given a college admissions problem ⟨S, C, q, ≻⟩, the related marriage problem is constructed as follows:
qc
• “Divide” each college cℓ into qcℓ separate pieces c1ℓ , c2ℓ , . . . , cℓ ℓ , where each piece has a capacity of one; and
let each piece have the same preferences over S as college c has. (Since college preferences are responsive, ≻c
is consistent with a unique ranking of students.)
C ∗ : The resulting set of college “pieces” (or seats).
• For any student s, extend her preference to C ∗ by replacing each college cℓ in her original preference ≻s with
qcℓ
the block c1ℓ , c2ℓ , . . . , cℓ in that order.

3.18 Example: Consider the problem consisting of two colleges {c1 , c2 } with qc1 = 2, qc2 = 1 and two students {s1 , s2 }.
The preferences are given by

s1 s2 c1 c2
c1 c2 s2 s1
c2 c1 s1 s2

Table 3.3

The related marriage problem is as follows: Three seats C ∗ = {c11 , c21 , c2 } and three students {s1 , s2 , s3 }. The
preferences are given by
3.4. Deferred acceptance algorithm and properties of stable matchings 45

s1 s2 s3 c11 c21 c2
c11 c2 c11 s2 s2 s1
c21 c11 c21 s1 s1 s2
c2 c21

Table 3.4

3.19 Given a matching for a college admissions problem, it is straightforward to define a corresponding matching for its
related marriage problem: Given any college c, assign the students who were assigned to c in the original problem
one at a time to pieces of c starting with lower index pieces.
In the college admissions problem above, consider a matching
[ ]
c1 c2
.
s1 , s3 s2

Then we have a corresponding matching for the related marriage problem


[ ]
c11 c21 c2
.
s1 s3 s2

3.20 Lemma (Lemma 1 in Roth and Sotomayor (1989)): A matching of a college admissions problem is stable if and
only if the corresponding matching of its related marriage problem is stable.

Proof. Exercise.

3.4 Deferred acceptance algorithm and properties of stable matchings



3.21 College-proposing deferred acceptance algorithm.

Step 1: (a) Each college c proposes to its top choice qc students (if it has fewer individually rational choices than
qc , then it proposes to all its individually rational students).
(b) Each student rejects any individually irrational proposal and, if more than one individually rational pro-
posal is received, “holds” the most preferred. Any college c that is rejected will remove the students who
have rejected it.
Step k: (a) Any college c that was rejected at the previous step by ℓ students makes a new proposal to its most
preferred ℓ students who haven’t yet rejected it (if there are fewer than ℓ individually rational students, it
proposes to all of them).
(b) Each student “holds” her most preferred individually rational offer to date and rejects the rest. Any college
c that is rejected will remove the students who have rejected it.
End: The algorithm terminates after a step where no rejections are made by matching each student to the college
(if any) whose proposal she is “holding.”

3.22 Student-proposing deferred acceptance algorithm.

Step 1: (a) Each student proposes to her top-choice individually rational college (if she has one).
(b) Each college c rejects any individually irrational proposal and, if more than qc individually rational pro-
posals are received, “holds” the most preferred qc of them and rejects the rest.
3.4. Deferred acceptance algorithm and properties of stable matchings 46

Step k: (a) Any student who was rejected at the previous step makes a new proposal to her most preferred indi-
vidually rational college that hasn’t yet rejected her (if there is one).
(b) Each college c “holds” at most qc best student proposals to date, and rejects the rest.
End: The algorithm terminates after a step where no rejections are made by matching each college to the students
(if any) whose proposals it is “holding.”

 3.23 Theorem on stability (Theorem 1 in Gale and Shapley (1962)): The student- and college-proposing deferred accep-
tance algorithms give stable matchings for each college admissions model.

Proof. It is a consequence of theorem on stability in marriage problem (Theorem 2.45) and Lemma 3.20.

3.24 In a college admissions model, college c and student s are “achievable” for one another if there is some stable
matching at which they are matched.
For each cℓ with quota qℓ , let aℓ be the number of achievable students, and define kℓ = min{qℓ , aℓ }.

 3.25 Theorem: The college-proposing deferred acceptance algorithm produces a matching that gives each college cℓ its
kℓ highest ranked achievable students.

Proof. We can prove it by induction.

(1) Suppose that, up to Step r of the algorithm, no student has been removed from the list of a college for whom
he or she is achievable, and that at Step (r + 1) student sj holds college ci , and has been removed from the
list of ck .
(2) Then any matching that matches sj with ck , and matches achievable students to ci , is unstable since sj ranks
ci higher than ck and ci ranks sj higher than one of its assignees. (This follows since sj is top-ranked by ci at
the end of Step r, when no achievable students had yet been removed from ci ’s list.)
(3) So sj is not achievable for ck .

3.26 Corollary: There exists a college-optimal stable matching that every college likes as well as any other stable matching,
and a student-optimal stable matching that every student likes as well as any other stable matching.

 3.27 Theorem: The student-optimal stable matching is weakly Pareto efficient for the students.

Proof. It follows from Theorem 2.39 and Lemma 3.20.

3.28 Example: The college-optimal stable matching need not be even weakly Pareto optimal for the colleges.

Proof. (1) Consider the problem consisting of two colleges {c1 , c2 } with qc1 = 2, qc2 = 1, and two students
{s1 , s2 }. The preferences are given by

s1 s2 c1 c2
c1 c2 {s1 , s2 } s1
c2 c1 s2 s2
s1

Table 3.5
3.4. Deferred acceptance algorithm and properties of stable matchings 47

(2) It is straightforward to see that the college-optimal stable matching is


[ ]
C c1 c2
µ = .
s1 s2

(3) Consider the matching [ ]


′ c1 c2
µ = .
s2 s1

(4) Both colleges strictly prefer µ′ to µC .

3.29 Remark: in the marriage problem related to a college admissions problem, it is the college seats that play the role of
the agents on the college side of the market. So Theorem 2.39 and Lemma 3.20 tell us that there exists no matching
that gives every college a more preferred student in every seat than it gets at the college-optimal stable matching.
But of course, as we have just seen, this does not imply that the colleges do not all prefer some other matching.
This result is also consistent with the fact that DA is not strongly Pareto optimal; see Example 2.41.

 3.30 Theorem: The set of students admitted and seats filled is the same at every stable matching.

Proof. The proof is immediate via Theorem 2.31 and Lemma 3.20.

3.31 Lemma (Lemma 3 in Roth and Sotomayor (1989)): Suppose that colleges and students have strict individual pref-
erences, and let µ and µ′ be stable matchings for ⟨S, C, q, ≻⟩, such that µ(c) ̸= µ′ (c) for some c. Let µ̄ and µ̄′ be
the stable matchings corresponding to µ and µ′ in the related marriage problem. If µ̄(ci ) ≻c µ̄′ (ci ) for some seat
ci of c, then µ̄(cj ) ≻c µ̄′ (cj ) for all seats cj of c.

Proof. (1) It suffices to show that µ̄(cj ) ≻c µ̄′ (cj ) for all j > i. To see this, if there exists j < i, such that
µ̄ (cj ) ≻c µ̄(cj ), then by this claim we have µ̄′ (ci ) ≻c µ̄(ci ), which contradicts the fact µ̄(ci ) ≻c µ̄′ (ci ).

(2) Suppose that this claim is false. Then there exists an index j such that

µ̄(cj ) ≻c µ̄′ (cj ) and µ̄′ (cj+1 ) ≿c µ̄(cj+1 ).

(3) It is clear that µ̄(cj ) ∈ S. Then by Theorem 3.30, we know µ̄′ (cj ) is also in S, so denote it by s′ .
(4) By decomposition lemma, cj = µ̄′ (s′ ) ≻s′ µ̄(s′ ).
(5) Since µ̄′ (cj ) ≻c µ̄′ (cj+1 ), we have s′ = µ̄′ (cj ) ≻c µ̄′ (cj+1 ) ≿c µ̄(cj+1 ), and hence s′ ̸= µ̄(cj+1 ).
(6) Since µ̄(cj ) ≻c s′ , µ̄(cj+1 ) ̸= s′ , and cj+1 comes right after cj in the preference of s′ in the related marriage
problem, we have µ̄(cj+1 ) ≻c s′ .
(7) So µ̄ is blocked by the pair (s′ , cj+1 ), contradicting the stability of µ.

3.32 Remark: The proof of Lemma 3.31 actually shows that if µ̄(ci ) ≻c µ̄′ (ci ) for some position ci of c then µ̄(cj ) ≻c
µ̄′ (cj ) for all j > i.

3.33 Remark: Consider a college c with qc = 2 and preferences s1 ≻c s2 ≻c s3 ≻c s4 . Consider two matchings µ and ν
such that µ(c) = {s1 , s4 } and ν(c) = {s2 , s3 }. Then without knowing anything about the preferences of students
and other colleges, we can conclude that µ and ν can not both be stable by Lemma 3.31.
3.4. Deferred acceptance algorithm and properties of stable matchings 48

 3.34 Theorem (Theorem 1 in Roth (1986)): Any college that does not fill its quota at some stable matching is assigned
precisely the same set of students at every stable matching.

Proof. (1) Recall that if a college c has any unfilled positions, these will be the highest numbered cj at any stable
matching of the corresponding marriage problem.
(2) By Theorem 3.30 these positions will be unfilled at any stable matching, that is, µ̄(cj ) = µ̄′ (cj ) for all such j.
(3) µ̄(cj ) = µ̄′ (cj ) for all j, since the proof of Lemma 3.31 shows that if µ̄(ci ) ≻c µ̄′ (ci ) for some position ci of
c, then µ̄(cj ) ≻c µ̄′ (cj ) for all j > i.

3.35 Exercise: Find a non-trivial example to illustrate the above result does not necessarily hold for colleges which fill
quotas at some stable matching.
Hint: Consider the example in the proof of Theorem 2.69.

3.36 Theorem (Theorem 3 in Roth and Sotomayor (1989)): If colleges and students have strict preferences over individu-
als, then colleges have strict preferences over those groups of students that they may be assigned at stable matchings.
That is, if µ and µ′ are stable matchings, then a college c is indifferent between µ(c) and µ′ (c) only if µ(c) = µ′ (c).

Proof. (1) If µ(c) ̸= µ′ (c), then without loss of generality µ̄(ci ) ≻c µ̄′ (ci ) for some position ci of c, where µ̄ and
µ̄′ are the matchings in the related marriage problem corresponding to µ and µ′ .
(2) By Lemma 3.31, µ̄(cj ) ≻c µ̄′ (cj ) for all positions cj of c.
(3) So µ(c) ≻c µ′ (c), by repeated application of the fact that c’s preferences are responsive and transitive:

µ(c) = {µ̄(c1 ), µ̄(c2 ), . . . , µ̄(cqℓ )} ≻c {µ̄′ (c1 ), µ̄(c2 ), . . . , µ̄(cqℓ )}


≻c {µ̄′ (c1 ), µ̄′ (c2 ), . . . , µ̄(cqℓ )} ≻c · · · ≻c {µ̄′ (c1 ), µ̄′ (c2 ), . . . , µ̄′ (cqℓ )} = µ′ (c).

3.37 Theorem (Theorem 4 in Roth and Sotomayor (1989)): Let preferences over individuals be strict, and let µ and
µ′ be stable matchings for ⟨S, C, ≻, q⟩. If µ(c) ≻c µ′ (c) for some college c, then s ≻c s′ for all s ∈ µ(c) and
s′ ∈ µ′ (c) \ µ(c). That is, c prefers every student in its entering class at µ to every student who is in its entering
class at µ′ but not at µ.

Proof. (1) Consider the related marriage problem ⟨S, C ′ , ≻⟩ and the stable matchings µ̄ and µ̄′ corresponding
to µ and µ′ .
(2) Observe that c fills its quota under µ and µ′ , since if not, Theorem 3.34 would imply that µ(c) = µ′ (c).
(3) So µ′ (c) \ µ(c) is a non-empty subset of S.
(4) Let s′ ∈ µ′ (c) \ µ(c), then s′ = µ̄′ (cj ) for some position cj and s′ ̸∈ µ(c), and hence µ̄(cj ) ̸= µ̄′ (cj ).
(5) By Lemma 3.31 µ̄(cj ) ≻c µ̄′ (cj ) = s′ ; otherwise µ′ (c) ≻c µ(c), which contradicts the fact µ(c) ≻c µ′ (c).
(6) The decomposition lemma (Lemma 2.51) implies cj = µ̄′ (s′ ) ≻s′ µ̄(s′ ).
(7) So the construction of the related marriage problem implies c ≻s′ µ(s′ ), since µ(s′ ) ̸= c.
(8) Thus s ≻c s′ for all s ∈ µ(c) by the stability of µ.
3.5. Further results for the college admissions model 49

3.38 Corollary: Let µ and µ′ be two stable matchings. For any college c,

• either i ≻c j for all i ∈ µ(c) \ µ′ (c) and j ∈ µ′ (c) \ µ(c),


• or j ≻c i for all i ∈ µ(c) \ µ′ (c) and j ∈ µ′ (c) \ µ(c).

3.39 Remark: Consider again a college c with qc = 2 and preferences s1 ≻c s2 ≻c s3 ≻c s4 . Consider two matchings
µ and ν such that µ(c) = {s1 , s3 } and ν(c) = {s2 , s4 }. Then the theorem says that if µ is stable, ν is not, and vice
versa. (Since c’s preference is responsive, µ(c) ≻c µ′ (c).)

3.40 Corollary (Corollary 1 in Roth and Sotomayor (1989)): Consider a college c with preferences ≻c over individual
students, and let ≻#c and ≻∗c be preferences over groups of students that are responsive to ≻c , (but are otherwise
arbitrary). Then for every pair of stable matchings µ and µ′ , µ(c) is preferred to µ′ (c) under the preferences ≻#c if
and only if µ(c) is preferred to µ′ (c) under ≻∗c .

Proof. It follows immediately from the theorem and the definition of responsive preferences.

3.41 Example: Let the preferences over individuals be given by

s1 s2 s3 s4 s5 s6 s7 c1 c2 c3 c4 c5
c5 c2 c3 c4 c1 c1 c1 s1 s5 s6 s7 s2
c1 c5 c1 c1 c2 c3 c3 s2 s2 s7 s4 s1
c1 c4 s3 s3
s4
s5
s6
s7

Table 3.6

and let the quotas be qc1 = 3, qcj = 1 for j = 2, . . . , 5. Then the set of stable outcomes is {µ1 , µ2 , µ3 , µ4 }, where
[ ]
c1 c2 c3 c4 c5
µ1 =
s1 , s3 , s4 s5 s6 s7 s2
[ ]
c1 c2 c3 c4 c5
µ2 =
s3 , s4 , s5 s2 s6 s7 s1
[ ]
c1 c2 c3 c4 c5
µ3 =
s3 , s5 , s6 s2 s7 s4 s1
[ ]
c1 c2 c3 c4 c5
µ4 =
s5 , s6 , s7 s2 s3 s4 s1

Note that these are the only stable matchings, and

µ1 (c1 ) ≻#c1 µ2 (c1 ) ≻#c1 µ3 (c1 ) ≻#c1 µ4 (c1 ),

for any responsive preferences ≻#c1 .

3.5 Further results for the college admissions model


 3.42 Theorem: If µ and µ′ are stable matchings for ⟨S, C, ≻, q⟩ then µ ≻C µ′ if and only if µ′ ≻S µ. Here µ ≻C µ′
3.5. Further results for the college admissions model 50

means µ(c) ≿c µ′ (c) for all c ∈ C and µ(c) ≻c µ′ (c) for some c ∈ C.

Proof. (1) Suppose that µ(c) ≿c µ′ (c) for all c ∈ C and µ(c) ≻c µ′ (c) for some c ∈ C.
(2) Using Lemma 3.31 in one direction and the responsiveness of the colleges’ preferences in the other direction,
we can see that this is equivalent to µ̄(c′ ) ≿′c′ µ̄′ (c′ ) for all c′ ∈ C ′ and µ̄(c′ ) ≻′c′ µ̄′ for some c′ ∈ C ′ , where
µ̄ and µ̄′ are the stable matchings corresponding to µ and µ′ for the related marriage problem ⟨S, C ′ , ≻′ ⟩
(3) This in turn is satisfied if and only if µ̄ ≻C ′ µ̄′ and hence, if and only if µ̄′ ≻S µ̄ by Theorem 2.29, which
implies µ′ ≻S µ.

3.43 Corollary: The optimal stable matching on one side of the problem ⟨S, C, ≻, q⟩ is the worst stable matching for the
other side.

3.44 In ⟨S, C, ≻, q⟩, for any two matchings µ and µ′ , define the following function on S ∪ C:
 
µ(c), if µ(c) ≻c µ′ (c) µ(s), if µ′ (s) ≻s µ(s)
µ ∨C µ′ (c) = , µ ∨C µ′ (s) = .
µ′ (c), otherwise µ′ (s), otherwise

Similarly, we can define the function µ ∧C µ′ .

3.45 Theorem: Let µ and µ′ be stable matchings for ⟨S, C, ≻, q⟩. Then µ ∨C µ′ and µ ∧C µ′ are stable matchings.

Proof. (1) Consider the marriage problem ⟨S, C ′ , ≻′ ⟩ related to ⟨S, C, ≻, q⟩ and the stable matchings µ̄ and µ̄′
corresponding to µ and µ′ .
(2) We know that λ̄ ≜ µ̄ ∨C ′ µ̄′ is a stable matching for ⟨S, C ′ , ≻′ ⟩.
(3) If µ ∨C µ′ (c) = µ(c), then µ(c) ≿c µ′ (c), and hence µ̄(ci ) ≿ci µ̄′ (ci ) for all positions ci of c by Lemma 3.31.
(4) Then µ̄ ∨C ′ µ̄′ (ci ) = µ̄(ci ) for all positions ci of c.
(5) If s is in µ(c), there is some position ci of c such that s = λ̄(c).
(6) (i) To see that µ ∨C µ′ is a matching, suppose by the way of contradiction that there are some s in S and c
and c′ in C with c ̸= c′ and such that s is contained in both µ ∨C µ′ (c) and µ ∨C µ(c′ ).
(ii) Then there exists some position ci of c, and some position cj of c′ , such that λ̄(ci ) = s = λ̄(cj ), which
contradicts the fact that λ̄ is a matching.
(7) The matching µ ∨C µ′ is stable: if s ≻c s′ ∈ µ ∨C µ′ (c), so there is some position ci of c such that s′ = λ̄(ci )
and s ≻ci λ̄(ci ). Then by stability of λ̄, λ̄(s) ≻s ci , which implies that µ ∨C µ′ (s) ≻s c and (c, s) does not
block µ ∨C µ′ .

3.46 Corollary: The set of stable matchings forms a lattice under the partial orders ≻C or ≻S with the lattice under the
first partial order being the dual to the lattice under the second partial order.

3.47 Theorem: If µ and µ′ are two stable matchings for ⟨S, C, ≻, q⟩ and c = µ(s) or c = µ′ (s), with c ∈ C and s ∈ S,
then if µ(c) ≻c µ′ (c) then µ′ (s) ≿s µ(s); and if µ′ (s) ≻s µ(s) then µ(c) ≿c µ′ (c).

Proof. (1) Consider the related marriage problem ⟨S, C ′ , ≻′ ⟩ and the corresponding stable matchings µ̄ and µ̄′ .
3.5. Further results for the college admissions model 51

(2) Define
S(µ̄′ ) = {s ∈ S | µ̄′ (s) ≻s µ̄(s)}, and C ′ (µ̄) = {ci ∈ C ′ | µ̄(ci ) ≻ci µ̄′ (ci )}.

Similarly define S(µ̄) and C ′ (µ̄′ ).


(3) By decomposition lemma (Lemma 2.51) µ̄ and µ̄′ map S(µ̄′ ) onto C ′ (µ̄) and S(µ̄) onto C ′ (µ̄′ ).
(4) If µ(c) ≻c µ′ (c), Lemma 3.31 implies that µ̄(ci ) ≿ci µ̄′ (ci ) for all position ci of c.
(5) Then ci ̸∈ C ′ (µ̄′ ) for all positions ci of c.
(6) Then µ̄(ci ) and µ̄′ (ci ) are in S(µ̄′ ) or µ̄(ci ) = µ̄′ (ci ), for all positions ci of c.
(7) Since s is matched to some position of c under µ̄ or µ̄′ , we have µ′ (s) ≿s µ(s).

3.48 Theorem: Suppose that ≻′ ▷C ≻ and let µC [≻′ ], µC [≻], µS [≻′ ], and µS [≻] be the corresponding optimal stable
matchings. Then

µC [≻] ≿C µC [≻′ ], µC [≻′ ] ≿S µC [≻], µS [≻′ ] ≿S µS [≻] and µS [≻] ≿C µS [≻′ ].

Symmetrical results are obtained if ≻′ ▷S ≻.

Proof. (1) Suppose that ≻′ ▷C ≻.


(2) Consider the marriage problems ⟨S, C̄, ≻⟩ ¯ ′ ⟩ related to ⟨S, C, ≻, q⟩ and ⟨S, C, ≻′ , q⟩ respec-
¯ and ⟨S, C̄, ≻
tively, where ≻(s)
¯ ¯ ′ (s) for all s in S.
=≻
¯ ′ ▷C̄ ≻.
(3) Then ≻ ¯
(4) Now apply Theorem 2.54.

3.49 Theorem: Suppose that C is contained in C ′ and µS [Γ] is the student-optimal matching for Γ = ⟨S, C, ≻, q⟩ and
µS [Γ′ ] is the student-optimal matching for Γ′ = ⟨S, C ′ , ≻′ , q ′ ⟩, where ≻′ agrees with ≻ on C. Then

µS [Γ′ ] ≿′S µS [Γ] and µS [Γ] ≿C µS [Γ′ ].

Symmetrical results are obtained if S is contained in S ′ .

Proof. (1) Suppose that C is contained in C ′ .


¯ ′ ⟩ related to ⟨S, C, ≻, q⟩ and ⟨S, C ′ , ≻′ , q ′ ⟩ respec-
¯ and ⟨S, C̄ ′ , ≻
(2) Consider the marriage problem ⟨S, C̄, ≻⟩
¯ ′ agrees with ≻
tively, where ≻ ¯ on C̄.
(3) Now apply Theorem 2.57.

3.50 Definition: A matching µ′ weakly dominates µ via a coalition A contained in C ∪ S if for all students s and colleges
c in A,
µ′ (s) ∈ A, µ′ (c) ⊆ A, µ′ (s) ≿s µ(s), and µ′ (c) ≿c µ(c),

and
µ′ (s) ≻s µ(s) for some s in A, or µ′ (c) ≻c µ(c) for some c in A.

The core, C(≻), is the set of matchings that are not weakly dominated by any other matching.
3.6. Incentive compatibility 52

3.51 Proposition (Theorem A2.2 in Roth (1985b)): When preferences over individuals are strict, the set of stable match-
ings is C(≻).

Proof. Part 1: Every core matching is stable.

(1) If µ is not stable, then µ is unstable via some student s and college c with s ≻c s′ for some s′ in µ(c).
(2) Then µ is weakly dominated via the coalition c ∪ µ(c) ∪ s \ s′ by any matching µ′ with µ′ (s) = c and
µ′ (c) = µ(c) ∪ s \ s′ .

Part 2: Every stable matching is in the core.

(3) If µ is not in C(≻), then µ is weakly dominated by some matching µ′ via a coalition A, so some student or
college in A prefers µ′ to µ.
(4) Suppose that some c prefers µ′ to µ. Then there must be some student s in µ′ (c) \ µ(c) and some s′ in
µ(c) \ µ′ (c) such that s ≻c s′ . If not, then s′ ≻c s for all s in µ′ (c) \ µ(c) and s′ in µ(c) \ µ′ (c), which would
imply µ(c) ≿c µ′ (c), since c has responsive preferences. So µ is unstable, since it is blocked by the pair (s, c).
(5) Suppose that some student s in A with µ′ (s) = c prefers µ′ to µ. Then the fact that µ′ (c) ≿c µ(c) similarly
implies that there is a student s′ (possibly different from s) in µ′ (c) \ µ(c) and a s′′ in µ(c) \ µ′ (c) such that
s′ ≻c s′′ . Then µ is blocked by the pair (s′ , c).

3.52 Remark: There is another version of core.


A matching µ′ dominates another matching µ via a coalition A contained in C ∪ S if for all students s and colleges
c in A,
µ′ (s) ∈ A, µ′ (c) ⊆ A, µ′ (s) ≻s µ(s), and µ′ (c) ≻c µ(c).

The core defined via strict domination is the set of matchings that are not dominated by any other matching.
Exercise: Find a college admission problem such that the core and the core defined via strict domination are not
the same.

3.6 Incentive compatibility

3.53 Throughout this section we fix S = {s1 , s2 , . . . , sp }, and C = {c1 , c2 , . . . , cr }, so each pair of preference profile
and quota profile defines a college admissions problem.

3.54 Let Ps and Pc denote the set of all preferences for student s and college c, P = (Ps )p × (Pc )r denote the set of all
preference profiles, and P−i denote the set of all preference profiles for all agents except i.
Let Qc denote the set of all quotas for college c, Q = Qc1 × Qc2 × · · · × Qcr denote the set of all quota profiles,
and Q−c denote the set of all quota profiles for all schools except c.
Let E = P × Q, and let M denote the set of all matchings.

 3.55 A (direct) mechanism is a systematic procedure that determines a matching for each college admissions problem.
Formally, it is a function φ : E → M.
3.6. Incentive compatibility 53

 3.56 A mechanism φ is stable if φ[≿, q] is stable for any (≿, q) ∈ E .


A mechanism φ is Pareto efficient if it is always selects a Pareto efficient matching.
A mechanism φ is individually rational if it is always selects an individually rational matching.

3.57 Let φS (or SOSM) and φC be the student-optimal and college-optimal stable mechanisms that selects the student-
optimal and college-optimal stable matchings for each problem respectively.

3.6.1 Preference manipulation

 3.58 A mechanism φ is strategy-proof if for each i ∈ S ∪ C, for each ≿i , ≿′i ∈ Pi , for each ≿−i ∈ P−i ,

φ[≿−i , ≿i , q](i) ≿i φ[≿−i , ≿′i , q](i).

 3.59 Theorem (Theorem 3 in Roth (1982b)): There exists no mechanism that is stable and strategy-proof.

Proof. It follows immediately from Theorem 2.69.

3.60 Theorem (Proposition 1 in Alcalde and Barberà (1994)): There exists no mechanism that is Pareto efficient, indi-
vidually rational, and strategy-proof.

Proof. It follows immediately from Theorem 2.75.

 3.61 Theorem (Theorem 5 in Roth (1982b)): Truth-telling is a weakly dominant strategy for all students under the
student-optimal stable mechanism.

Proof. It follows immediately from Theorem 2.76.

3.62 Remark: Deferred acceptance algorithm is the unique stable and one-sided strategy-proof mechanism; see Theo-
rem 9.34.

 3.63 Theorem (Proposition 2 in Roth (1985a)): There exists no stable mechanism where truth-telling is a weakly domi-
nant strategy for all colleges.

Proof. (1) Consider the problem consisting of two colleges {c1 , c2 } with qc1 = 2, qc2 = 1, and two students
{s1 , s2 }. The preferences are given by

s1 s2 c1 c2
c1 c2 {s1 , s2 } s1
c2 c1 s2 s2
s1

Table 3.7

(2) It is straightforward to see that the college-optimal stable matching is


[ ]
c1 c2
µC [≻c1 , ≻c2 ] = .
s1 s2
3.6. Incentive compatibility 54

(3) Now suppose that college c1 reports the manipulated preferences ≻′c1 where only s2 is acceptable. For this
new college admissions problem, the only stable matching is
[ ]
c1 c2
µ C
[≻′c1 , ≻c2 ] = .
s2 s1

(4) Hence college c1 benefits by manipulating its preferences under any stable mechanism (including the college-
optimal stable mechanism).

3.64 Remark: A college is like a coalition of players in terms of strategies.

3.65 Corollary: In the college admissions model, a coalition of agents (in fact, even a single agent) may be able to mis-
report its preferences so that it does better than at any stable matching.

3.66 Roth (1984) showed that the algorithm independently discovered by the National Residency Matching Program
(NRMP) in the United States was equivalent to the college-optimal stable mechanism. Roth (1991) observed that
several matching mechanisms that have been used in Britain for hospital-intern matching were unstable and as a
result were abandoned, while stable mechanisms survived. This key observation helped to pin down stability as a
key property of matching mechanisms in the college admissions framework. Roth and Peranson (1999) introduced
a new design for the NRMP matching mechanism based on the student-optimal stable mechanism. Interestingly,
the replacement of the older stable mechanism with the newer mechanism was partially attributed to the positive
and negative results in Theorems 3.61 and 3.63, respectively.

3.6.2 Capacity manipulation

 3.67 I a college admission problem ⟨S, C, q, ≻⟩, a college c manipulates a mechanism φ via capacities if

φ[≻, q−c , qc′ ](c) ≻c φ[≻, q](c) for some qc′ < qc .

A mechanism is immune to capacity manipulation if it can never be manipulated via capacities.

3.68 Example: The college-optimal stable mechanism is not immune to capacity manipulation:

Proof. (1) Consider the problem consisting of two colleges {c1 , c2 } with qc1 = 2, qc2 = 1, and two students
{s1 , s2 }. The preferences are as follows:

s1 s2 c1 c2
c1 c2 {s1 , s2 } s1
c2 c1 s2 s2
s1

Table 3.8

(2) It is straightforward to see that the college-optimal stable matching is


[ ]
C c1 c2
µ [≻, q] = .
s1 s2
3.6. Incentive compatibility 55

(3) Let qc′ 1 = 1 be a potential capacity manipulation by college c1 . For this new college admissions problem, the
only stable matching is [ ]
c1 c2
µ C
[≻, qc′ 1 , qc2 ] = .
s2 s1

(4) Hence college c1 benefits by reducing the number of its positions under the college-optimal stable mechanism.

 3.69 Theorem (Theorem 1 in Sönmez (1997)): Suppose that there are at least two colleges and three students. Then there
exists no stable mechanism that is immune to capacity manipulation.

Proof. (1) We first prove the theorem for two colleges and three students.
(2) Let ϕ be a stable mechanism, C = {c1 , c2 } and S = {s1 , s2 , s3 },

s1 s2 s3 c1 c2
c2 c1 c1 {s1 , s2 , s3 } {s1 , s2 , s3 }
c1 c2 c2 {s1 , s2 } {s2 , s3 }
{s1 , s3 } {s1 , s3 }
s1 s3
{s2 , s3 } {s1 , s2 }
s2 s2
s3 s1

Table 3.9

qc1 = qc2 = 2 and qc′ 1 = qc′ 2 = 1.


(3) The only stable matching for ⟨≻, qc1 , qc2 ⟩ is
[ ]
c1 c2
µ1 = .
s2 , s3 s1

(4) The only two stable matchings for ⟨≻, qc1 , qc′ 2 ⟩ are µ1 and
[ ]
c1 c2
µ2 = .
s1 , s2 s3

(5) The only stable matching for ⟨≻, qc′ 1 , qc′ 2 ⟩ is


[ ]
c1 c2
µ3 = .
s1 s3

(6) Therefore ϕ[≻, qc1 , qc2 ] = µ1 , ϕ[≻, qc′ 1 , qc′ 2 ] = µ3 , and ϕ[≻, qc1 , qc′ 2 ] ∈ {µ1 , µ2 }.
(7) If ϕ[≻, qc1 , qc′ 2 ] = µ1 , then ϕ[≻, qc′ 1 , qc′ 2 ](c1 ) = µ3 (c1 ) = {s1 } and ϕ[≻, qc1 , qc′ 2 ](c1 ) = µ1 (c1 ) = {s2 , s3 }
and hence
ϕ[≻, qc′ 1 , qc′ 2 ](c1 ) ≻c1 ϕ[≻, qc1 , qc′ 2 ](c1 ),

which implies college c1 can manipulate ϕ via capacities when its capacity is qc1 = 2 and college c2 ’s capacity
is qc′ 2 = 1 by underreporting its capacity as qc′ 1 = 1.
3.7. Comparison of marriage problems and college admissions 56

(8) Otherwise ϕ[≻, qc1 , qc′ 2 ] = µ2 and therefore ϕ[≻, qc1 , qc′ 2 ](c2 ) = µ2 (c2 ) = {s3 }, ϕ[≻, qc1 , qc2 ](c2 ) =
µ1 (c2 ) = {s1 }. Hence
ϕ[≻, qc1 , qc′ 2 ](c2 ) ≻c2 ϕ[≻, qc1 , qc2 ](c2 )

which implies college c2 can manipulate ϕ via capacities when its capacity is qc2 = 2 and college c1 ’s capacity
is qc1 = 2 by underreporting its capacity as qc′ 2 = 1.
(9) Hence, ϕ is manipulable via capacities completing the proof for the case of two colleges and three students.
(10) Finally we can include colleges whose top choice is keeping all its positions vacant and students whose top
choice is staying unmatched to generalize this proof to situations with more than three students and two
colleges.

3.70 Exercise: Is there a stable mechanism that is immune to capacity manipulation for college admissions problems
with two colleges and two students?

3.71 Remark: In one-to-one matching, DA cannot be manipulated by an agent if and only if there is a unique stable
partner. The statement is false in many-to-one matching.

3.72 Definition: College preferences are strongly monotonic if for every c ∈ C, for every T, T ′ ⊂ S,

|T ′ | < |T | ≤ qc ⇒ T ≻c T ′ .

3.73 Theorem (Theorem 5 in Konishi and Ünver (2006)): Suppose that college preferences are strongly monotonic. Then
the student-optimal stable mechanism is immune to capacity manipulation.

Proof. Omitted.

3.74 Remark: Example 3.68 shows that the college-optimal stable mechanism is capacity manipulable even under strongly
monotonic preferences.

3.75 Definition: For each s ∈ S, let q s denote the minimum capacity imposed on school s.

3.76 Theorem (Theorem 1 in Kesten (2012)): DA is immune to capacity manipulation for all school preferences if and
only if the priority structure (≻, q) is acyclic. See Chapter 10 for the definition of acyclicity.

Proof. Omitted.

3.7 Comparison of marriage problems and college admissions

3.77 Comparison of marriage problems and college admissions problems:


3.8. National intern matching program 57

Marriage problems College admissions (with responsive preferences)


√ √
Existence of stable matchings √ √
One-sided individual optimality √ √
One-sided weakly Pareto optimality √ (s) and
√ × (c)
Rural hospital theorem
Two-sided strategy-proofness ×
√ √ ×
One-sided strategy-proofness (s) and × (c)

3.8 National intern matching program


3.78 Students who graduate from medical schools in US are typically employed as residents (interns) at hospitals, where
they comprise a significant part of the labor force.
In the early twentieth century, the market for new doctors was largely decentralized. During the 1940s, competition
for medical students forced hospitals to offer residencies/internships increasingly early, sometimes several years
before a student would graduate. This so-called unraveling had many negative consequences. Matches were made
before students could produce evidence of how qualified they might become, and even before they knew what kind
of medicine they would like to practice.
The market also suffered from congestion: when an offer was rejected, it was often too late to make other offers.

3.79 In response to the failure of the US market for new doctors, a centralized clearinghouse was introduced in the early
1950s. This institution is now called the National Resident Matching Program (NRMP).

3.80 NIMP algorithm.

Initial editing of ranking lists: Each hospital ranks the students who have applied to it and each student ranks the
hospital to which he has applied.
These ranking lists are mailed to the central clearinghouse, where they are edited by removing from each
hospital’s ranking list any student who has marked that hospital as unacceptable, and by removing from each
student’s ranking list any hospital which has indicated he is unacceptable.
The edited lists are thus ranking lists of acceptable alternatives.
Matching phase: 1 : 1 step: Check to see if there are any students and hospitals which are top-ranked in one an-
other’s ranking. (If a hospital has a quota of q then the q highest students in its ranking are top-ranked.)
If no such matches are found, the matching phase proceeds to the 2 : 1 step; otherwise the algorithm
proceeds to the tentative assignment and update phase.
k : 1 step: Seek to find student-hospital pairs such that the student is top-ranked on the hospital’s ranking and
the hospital is k-th ranked by the student. If no such matches are found, the matching phase proceeds to
the (k + 1) : 1 step; otherwise the algorithm proceeds to the tentative assignment and update phase.
Tentative assignment and update phase: • When the algorithm enters the tentative assignment and update phase
from the k : 1 step of the matching phase, the k : 1 matches are tentatively made; i.e., each student who
is a top-ranked choice of his k-th choice hospital.
• The rankings of students and hospitals are then updated in the following way:
– Any hospital which a student sj ranks lower than his tentative assignment is deleted from his ranking.
(So the updated ranking of a student sj tentatively assigned to his k-th choice now lists only his first
k choices.)
– Any student sj is deleted from the ranking of any hospital which was deleted from sj ’s ranking.
(So the updated ranking of each hospital now include only those applicants who have not yet been
tentatively assigned to a hospital they prefer.)
3.8. National intern matching program 58

• When the rankings have been updated in this way, the algorithm returns to the start of the matching
phase. Any new tentative matches found in the matching phase replace prior tentative matches involving
the same student.
End: The algorithm terminates when no new tentative matches are found, at which point tentative matches become
final.

3.81 Example: Consider the problem consisting of two hospitals {h1 , h2 }, each with a quota of one, and three students
{s1 , s2 , s3 }. The preferences are given by

h1 h2 s1 s2 s3
s1 s1 h1 h1 h1
s2 s2 h2 h2
s3 s3

Table 3.10

The edited lists are:

h1 h2 s1 s2 s3
s1 s1 h1 h1 h1
s2 Z
s
Z2 h2 h2
s3 s3

Table 3.11

In 1 : 1 step, one tentative match (h1 , s1 ) is found. Then the algorithm proceeds to tentative assignment and update
phase. The updated lists are

h1 h2 s1 s2 s3
s1 Z
sZ
1 h1 h1 h1
s2 Z
sZ
2 @
h@
2 h2
s3 s3

Table 3.12

The algorithm returns to the matching phase. In 1 : 1 step, no new tentative match. In 2 : 1 step, one tentative
match (h2 , s3 ) is found. Then the algorithm proceeds to tentative assignment and update phase, but there is no
new update for rankings.
The outcome is [ ]
h1 h2
.
s1 s3 s2

3.82 Roth (1984) showed that the NRMP algorithm is equivalent to a (hospital-proposing) DA algorithm, so NIMP
produces a stable matching. Roth (1984) argued that the success of NRMP was due to the fact that it produced
stable matchings.

3.83 Several issues led to the redesign NRMP algorithm:

• The NRMP algorithm favors hospitals at the expense of students.


• Both students and hospitals may have incentives to manipulate the NRMP algorithm.
• NRMP has special features, called “match variations”. An example is couples.
3.9. New York City high school match 59

3.84 Theorem (Theorem 10 in Roth (1984)): In a market in which some agents are couples, the set of stable outcomes
may be empty.

Proof. Consider the problem consisting of two hospitals {h1 , h2 }, each with a quota of one, one single student s
and one couple (m, w). The preferences are given by

h1 h2 s (m, w)
m s h1 (h1 , h2 )
s w h2

Table 3.13

In this market, no stable matching exists.

3.85 Remark: The rural hospital theorem also fails in the market above.

3.86 In 1995, Roth was hired by the board of directors of NRMP to direct the design of a new algorithm. The new algo-
rithm (which is called Roth-Peranson algorithm), designed by Roth and Peranson (1999), is a student-proposing
algorithm modified to accommodate couples: potential instabilities caused by the presence of couples are resolved
sequentially, following the instability-chaining algorithm of Roth and Vate (1990).
For details of the new NRMP algorithm, see Roth and Peranson (1999).

3.9 New York City high school match

3.87 Main reference: Abdulkadiroğlu et al. (2005a) and Abdulkadiroğlu et al. (2009).

3.88 Background: Over 90,000 students enter high schools each year.
The old NYC system was decentralized:

• Each student can submit a list of at most 5 schools.


• Each school obtains the list of students who listed it, and independently make offers.
• There were waiting lists (run by mail), and 3 rounds of move waiting lists.

3.89 Problems with the old system:

• The system left 30,000 children unassigned to any of their choices and they are administratively assigned.
• Strategic behavior by schools: school principals were concealing capacities.

3.90 In New York City, schools behave strategically.


Deputy Chancellor of Schools (NYT 19 November 2004):

Before you might have had a situation where a school was going to take 100 new children for 9th grade,
they might have declared only 40 seats and then placed the other 60 children outside the process.

Unlike Boston, the market seems to be really two-sided, i.e., we should treat both students and schools are strategic
players.

3.91 Since NYC is a two-sided matching market, the student-proposing DA is the big winner:
3.9. New York City high school match 60

• DA implements a stable matching (probably more important for NYC than for Boston.)
• DA is strategy-proof for students: it is a dominant strategy for every student to report true preferences.
• There is no stable mechanism that is strategy-proof for schools.
• When the market is large, it is almost strategy-proof for schools to report true preferences; Kojima and Pathak
(2009): Recall there are 90000 students and over 500 public high schools in New York City.

3.92 Abdulkadiroğlu et al. (2009) and NYC Department of Education changed the mechanism to the student-proposing
DA, except for some details:

• Students can rank only 12 schools.


• Seats in a few schools, called specialized high schools (such as Stuyvesant and Bronx High School of Science),
is assigned in an earlier round, separately from the rest.
• Some top students are granted to get into a school when they rank the school as their first choices.
• All unmatched students in the main round will be assigned in the supplementary round, where the random
serial dictatorship is used.

These features come from historical constraints and could not be changed.
This make it technically incorrect to use standard results in two-sided matching, but they seem to be small enough
a problem (it may be interesting to study if this is true and why or why not.)

3.93 Effect of changes in the mechanism:

• Over 70,000 students were matched to one of their choice schools: an increase of more than 20,000 students
compared to the previous year match.
• An additional 7,600 students matched to a school of their choice in the third round.
• 3,000 students did not receive any school they chose, a decrease from 30,000 who did not receive a choice
school in the previous year.
Part II

One-sided matching

61
62
Chapter 4
Housing market

Contents
4.1 The former model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.2 Top trading cycles algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.3 Incentive compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.4 Axiomatic characterization of top trading cycles algorithm . . . . . . . . . . . . . . . . . . . . . . . 77

4.1 The former model

4.1 Housing market model was introduced by Shapley and Scarf (1974). Each agent owns a house, and a housing market
is an exchange (with indivisible objects) where agents have the opinion to trade their houses in order to get a better
one.

 4.2 Definition: Formally, a housing market is a quadruple ⟨A, H, ≻, e⟩ such that

• A = {a1 , a2 , . . . , an } is a set of agents,


• H is a set of houses such that |A| = |H|,
• ≻= (≻a )a∈A is a strict preference profile such that for each agent a ∈ A, ≻a is a strict preference over houses.
Let Pa be the set of preferences of agent a. The induced weak preference of agent a is denoted by ≿a and for
any h, g ∈ H, h ≿a g if and only if h ≻a g or h = g.
• e : A → H is an initial endowment matching, that is, hi ≜ hai ≜ e(ai ) is the initial endowment of agent i.

4.3 Like a pure exchange economy, in a housing market, agents can trade the houses among themselves according to
certain rules and attempt to make themselves better off.
Example: Let A = {a1 , a2 , a3 , a4 } and let hi be the occupied house of agent i. Let the preference profile ≻ be
given as:

63
4.1. The former model 64

a1 a2 a3 a4
h4 h3 h2 h3
h3 h4 h4 h2
h2 h2 h1 h1
h1 h1 h3 h4

Table 4.1

These four agents can trade the houses and get the following (Pareto) improved reallocation
[ ]
a1 a2 a3 a4
µ1 = .
h4 h3 h1 h2

They also have the following (Pareto) improved reallocation


[ ]
a1 a2 a3 a4
µ2 = .
h4 h3 h2 h1

What are desirable outcome of such a reallocation process? What allocative mechanisms are appropriate for achiev-
ing desirable outcomes?

 4.4 Definition: In a housing market ⟨A, H, ≻, e⟩, a matching (allocation) is a bijection µ : A → H. Here µ(a) is the
assigned house of agent a under matching µ. Let M be the set of matchings.

 4.5 Definition: A (deterministic direct) mechanism is a procedure that assigns a matching for each housing market
⟨A, H, ≻, e⟩.
For the fixed sets of agents A and houses H, a mechanism becomes a function

φ : ×a∈A Pa → M.

 4.6 Definition: A matching µ is individually rational if for each agent a ∈ A,

µ(a) ≿a ha = e(a),

that is, each agent is assigned a house at least as good as her own occupied house.
A mechanism is individually rational if it always selects an individually rational matching for each housing market.
In Example 4.3, the matchings µ1 and µ2 are individually rational.

 4.7 Definition: A matching µ is Pareto efficient if there is no other matching ν such that

• ν(a) ≿a µ(a) for all a ∈ A, and


• ν(a0 ) ≻a0 µ(a0 ) for some a0 ∈ A.

A mechanism is Pareto efficient if it always selects a Pareto efficient matching for each housing market.
In Example 4.3, the matchings µ1 and µ2 are Pareto efficient.

4.8 In Example 4.3, if houses are assigned according to µ1 , then agents 2 and 3 will not attend this reallocation process.
Instead, they will trade with each other; that is, agent 2 gets house 3 and agent 3 gets house 2. Clearly, this trade
benefits agent 3 and does not hurt agent 2, compared with µ1 .
4.1. The former model 65

In other words, matching µ1 is blocked by the coalition {2, 3} and the trade between them. Such a matching is not
good enough, and a core matching, defined in the following paragraphs, is required to exclude such blocks.

4.9 Definition: Given a market ⟨A, H, ≻, e⟩ and a coalition B ⊆ A, a matching µ is a B-matching if for all a ∈ B,
µ(a) = hb for some b ∈ B. That is, {µ(a) | a ∈ B} = {hb | b ∈ B}.

 4.10 Definition: A matching µ is in the core1 if there exists no coalition of agents B ⊆ A such that some B-matching
ν ∈ M weakly dominates µ, that is,

• ν(a) ≿a µ(a) for all a ∈ B, and


• ν(a0 ) ≻a0 µ(a0 ) for some a0 ∈ B.

That is, the core is the collection of matchings such that no coalition could improve their assigned houses even if
they traded their initially occupied houses only among each other.
We shall use C(≻) or C to denote the core.
A matching in the core is called a core matching.
A mechanism is called a core mechanism if it always selects a core matching for each housing market, denoted by
φcore .

4.11 Remark: It is clear that a core matching is Pareto efficient (take B = A) and individually rational (take B = {a}
for some a ∈ A).

 4.12 Definition: Define a vector price as a positive real vector assigning a price for each house, i.e.,

p = (ph )h∈H ∈ Rn++

such that ph is the price of house h.


A matching-price vector pair (µ, p) ∈ M × Rn++ is a competitive equilibrium (or a Walrasian equilibrium) if for
each agent a ∈ A,

• pµ(a) ≤ pha (budget constraint), and


• µ(a) ≿a h for all h ∈ H such that ph ≤ pha (utility maximization).

A matching is called a competitive equilibrium matching if there exists a price vector which supports the matching
to be a competitive equilibrium.
A mechanism is called a competitive equilibrium mechanism if it always selects a competitive equilibrium matching
for each housing market, denoted by φeq .

4.13 Remark: The market clear condition trivially holds since each matching is required to be a bijection. Furthermore,
in a competitive equilibrium (µ, p), for each agent a, the price of her final house pµ(a) equals the price of her initial
house pha . (Exercise)

4.14 Proposition: If each agent’s preference is strict, then any competitive equilibrium allocation is in the core.

Proof. (1) Let (µ, p) be a competitive equilibrium. Suppose that µ is not in the core.
1 It was also called strong core in the literature. In game theory, the core is the set of feasible allocations that cannot be improved upon by a subset

(a coalition) of the economy’s consumers. A coalition is said to improve upon or block a feasible allocation if the members of that coalition are better
off under another feasible allocation that is identical to the first except that every member of the coalition has a different consumption bundle that is
part of an aggregate consumption bundle that can be constructed from publicly available technology and the initial endowments of each consumer
in the coalition.
4.2. Top trading cycles algorithm 66

(2) Then there is a coalition B ⊆ A and a B-matching ν such that ν(a) ≿a µ(a) for all a ∈ B and ν(a0 ) ≻a0
µ(a0 ) for some a0 ∈ B.
(3) Since µ is a competitive equilibrium matching, pν(a) ≥ pha = pµ(a) for all a ∈ B and pν(a0 ) > pha0 = pµ(a0 )
(Here we need to assume each agent’s preference to be strict).
∑ ∑
(4) Since ν is a B-matching, a∈B pν(a) = a∈B pha .
(5) Thus,
∑ ∑ ∑ ∑
pµ(a) < pν(a) = pha = pµ(a) ,
a∈B a∈B a∈B a∈B

which leads to a contradiction.

It is well known that any competitive equilibrium allocation is in the core for exchange economies with divisibilities.

4.15 Definition: A matching µ is in the core defined via strong domination if there exists no coalition of agents B ⊆ A
such that some B-matching ν ∈ M strongly dominates µ, that is,

• ν(a) ≻a µ(a) for all a ∈ B.

It is clear that the core is a subset of the core defined via strong domination.

4.2 Top trading cycles algorithm

 4.16 Theorem (Theorem in Shapley and Scarf (1974)): The core of a housing market is non-empty and there exists a core
matching that can be sustained as part of a competitive equilibrium.
Actually, this theorem is originally stated as follows: The core defined via strong domination is always non-empty,
where agents’ preferences are allowed to be not strict. Its initial proof makes use of Bondareva-Shapley Theorem.
As an alternative proof, Shapley and Scarf (1974) introduced an iterative algorithm that is a core and competitive
equilibrium matching. They attributed this algorithm to David Gale.

4.17 Top trading cycles algorithm.

Step 1: Each agent points to the owner of his favorite house.


Due to the finiteness of agents, there exists at least one cycle (including self-cycles). Moreover, cycles do not
intersect.
Each agent in a cycle is assigned the house of the agent he points to and removed from the market.
If there is at least one remaining agent, proceed with the next step.
Step k: Each remaining agent points to the owner of his favorite house among the remaining houses.
Each agent in a cycle is assigned the house of the agent he points to and removed from the market.
If there is at least one remaining agent, proceed with the next step.
End: No agents remain. It is clear that the algorithm will terminate within finite steps. Let Step t denote the last
step.

The mechanism determined by top trading cycles algorithm is denoted by TTC.

4.18 Notation: In the top trading cycles algorithm, given ≻ and e:


4.2. Top trading cycles algorithm 67

• Ak or Ak [≻] or Ak [e] or Ak [≻, e]: the agents removed at Step k in ⟨A, H, ≻, e⟩. If Step t is the last step, then

A = A1 ∪ A2 ∪ · · · ∪ At .

We refer to à = {A1 , A2 , . . . , At } as the cycle structure.


• B k or B k [≻] or B k [e] or B k [≻, e]: the remaining agents after Step (k − 1) in ⟨A, H, ≻, e⟩. So

B k = A \ (A1 ∪ A2 ∪ · · · ∪ Ak−1 ) = Ak ∪ Ak+1 ∪ · · · ∪ At .

• H k or H k [≻] or H k [e] or H k [≻, e]: the set of houses that are owned by agents in Ak :

H k = {h ∈ H | h = e(a) for some a ∈ Ak }.

Let H 0 = ∅.
If Step t is the last step, then
H = H 0 ∪ H 1 ∪ H 2 ∪ · · · ∪ H t.

• G′ = ⟨B, ≻⟩: the directed sub-graph determined by agents B ⊆ A and preference profile ≻.
• Gk or Gk [≻] or Gk [e] or Gk [≻, e]: the directed sub-graph after Step (k − 1) in ⟨A, H, ≻, e⟩.
• Bra (H ′ ) where a ∈ A and H ′ ⊆ H: agent a’s favorite house among H ′ . Then for each a ∈ Ak , we have
( )
Bra H \ ∪k−1
ℓ=1 H ℓ
= TTC(a).

G′
• a −→ b where G′ = ⟨B, ≻⟩ and B ⊆ A: the house of agent b is agent a’s favorite house in {ha | a ∈ B}
under the preference ≻a .
• C = (an1 , an2 , . . . , anm ) is a chain in the directed sub-graph G′ = ⟨B, ≻⟩ where B ⊆ A: anj ∈ B for
j = 1, 2, . . . , m, and
G′ G′ G′ G′
an1 −→ an2 −→ · · · −→ anm−1 −→ anm .

Note that a cycle is a special chain.

4.19 Proof of “core is non-empty”.

(1) Let B be any coalition. Consider the first j such that B ∩ Aj ̸= ∅.


(2) Then we have
B ⊆ Aj ∪ Aj+1 ∪ · · · ∪ At = A \ (A1 ∪ A2 ∪ · · · ∪ Aj−1 ).

(3) Let a ∈ B ∩ Aj . Then a is already getting the favorite possible house available to her in B.
(4) No improvement is possible for her, unless she deals outside of B.
(5) By induction, no agent in B can not strictly improve, and it follows that the outcome produced by top trading
cycles algorithm is in the core.

4.20 Proof of “being a competitive equilibrium matching”.

(1) Price vector p is defined as follows:


4.2. Top trading cycles algorithm 68

• for any a and b in Ak for some k, set pha = phb ;


• if a ∈ Ak and b ∈ Aℓ with k < ℓ, then set pha > phb .
(2) That is,
• the prices of the occupied houses whose owners are removed at the same step are set equal to each other;
• the prices of those whose owners are removed at different steps are set such that the price of a house that
leaves earlier is higher than the price of a house that leaves later.
(3) It is easy to check that this price vector p supports the outcome produced by top trading cycles algorithm as
a competitive equilibrium.

4.21 Example of the top trading cycles algorithm:


Let A = {a1 , a2 , . . . , a16 }. Here hi is the occupied house of agent ai . Let the preference profile ≻ be given as:

a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16


h15 h3 h1 h2 h9 h6 h7 h6 h11 h7 h2 h4 h6 h8 h1 h5
h4 h3 h12 h3 h4 h14 h13
h12 h16
h10

Table 4.2

Step 1:

a1 a2 a3 a4 a5

a16 a6

a15 a7

a14 a8

a13 a12 a11 a10 a9

Figure 4.1: Step 1

A1 = {a1 , a6 , a7 , a15 }.
Step 2: The reduced preferences are as follows:
4.2. Top trading cycles algorithm 69

a2 a3 a4 a5 a8 a9 a10 a11 a12 a13 a14 a16


h3 h3 h2 h9 h12 h11 h3 h2 h4 h13 h8 h5
h4 h12 h4 h14
h10 h16

Table 4.3

a1 a2 a3 a4 a5

a16 a6

a15 a7

a14 a8

a13 a12 a11 a10 a9

Figure 4.2: Step 2

A2 = {a3 , a13 }.
Step 3: The reduced preferences are as follows:

a2 a4 a5 a8 a9 a10 a11 a12 a14 a16


h4 h2 h9 h12 h11 h12 h2 h4 h8 h5
h10 h4 h14
h16

Table 4.4
4.2. Top trading cycles algorithm 70

a1 a2 a3 a4 a5

a16 a6

a15 a7

a14 a8

a13 a12 a11 a10 a9

Figure 4.3: Step 3

A3 = {a2 , a4 }.
Step 4: The reduced preferences are as follows:

a5 a8 a9 a10 a11 a12 a14 a16


h9 h12 h11 h12 h16 h14 h8 h5
h10

Table 4.5

a1 a2 a3 a4 a5

a16 a6

a15 a7

a14 a8

a13 a12 a11 a10 a9

Figure 4.4: Step 4

A4 = {a5 , a8 , a9 , a12 , a14 , a16 }.


Step 5: The reduced preferences are as follows:
4.2. Top trading cycles algorithm 71

a10
h10

Table 4.6

a1 a2 a3 a4 a5

a16 a6

a15 a7

a14 a8

a13 a12 a11 a10 a9

Figure 4.5: Step 5

A5 = {a10 }.
The outcome is
[ ]
a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16
µ= .
h15 h4 h3 h2 h9 h6 h7 h12 h11 h10 h16 h14 h13 h8 h1 h5

4.22 Lemma (Lemma 1 in Roth and Postlewaite (1977)): If the preference of each agent is strict, then a competitive
equilibrium matching (or core matching) weakly dominates any other matching.

Proof. (1) If µ is any competitive equilibrium matching, we can think of µ as being arrived at via trading among
top trading cycles A1 , A2 , . . . , At .
(2) Let ν be any matching.
(3) If µ(a) ̸= ν(a) for some a ∈ A1 , µ weakly dominates ν via the coalition A1 since µ gives each agent of A1
her most preferred house.
(4) If µ(a) = ν(a) for all a ∈ A1 and µ(a) ̸= ν(a) for some a ∈ A2 , µ weakly dominates ν via the coalition
A1 ∪ A2 since µ gives each agent of A1 her most preferred house, and each agent of A2 her most preferred of
what was left.
(5) Proceeding in this manner we see that µ weakly dominates all other matchings.

 4.23 Theorem (Theorem 2 in Roth and Postlewaite (1977)): If the preference of each agent is strict, the core of a hous-
ing market has exactly one matching which is also the unique matching that can be sustained at a competitive
equilibrium.

Proof. Theorem 4.16 implies that no matching weakly dominates a competitive equilibrium matching (or core
matching). Then apply Lemma 4.22.
4.3. Incentive compatibility 72

4.24 Remark: In a housing market ⟨A, H, ≻, e⟩ (with strict preference profile), we have

TTC = φcore = φeq .

4.25 Remark: Chain structure of top trading cycles algorithm.

(1) Consider any agent in Ak at Step (k − 1). This agent will take part in a cycle only in the next step. Therefore
her favorite house among those left at Step (k − 1) is either in H k−1 or in H k .
(2) Note that these should be at least one agent in Ak whose favorite house among those left at Step (k − 1) is in
H k−1 ; otherwise agents in Ak would form one or several cycles and trade at Step (k − 1). Therefore we have

Bra (H) ∈ H 1 for all a ∈ A1 , and Bra (H \ ∪k−2


ℓ=1 H ) ∈ H
ℓ k−1
∪ H k for all a ∈ A \ A1 .

(3) Based on this observation, for all k ≥ 2, we partition the set Ak into the sets of satisfied agents S k and
unsatisfied agents U k where
{ }
S k = S k [≻, e] = a ∈ Ak | Bra (H \ ∪k−2
ℓ=1 H ℓ
) ∈ H k
,
{ }
U k = U k [≻, e] = a ∈ Ak | Bra (H \ ∪k−2
ℓ=1 H ) ∈ H
ℓ k−1
.

Note that U k ̸= ∅, k ≥ 2.
(4) At Step (k − 1), agents in S k point to an agent in Ak whereas agents in U k point to an agent in Ak−1 . The
agents in the latter group only in the next step point to an agent in Ak and this follows that agents in Ak form
one or several cycles.
(5) At Step (k − 1), agents in Ak form one or several chains each of which is headed by an agent in U k who
possibly follows agents in S k . Formally the chain structure of Ak is a partition {C1k , C2k , . . . , Crkk } where
each chain Cik = (aki1 , aki2 , . . . , akini ) is such that

Gk−1 Gk−1 Gk−1 Gk−1


aki1 −−−→ aki2 −−−→ · · · −−−→ aki(ni −1) −−−→ akini and Brakin (H \ ∪k−2
ℓ=1 H ) ∈ H
ℓ k−1
.
| {z } |{z} i

Sk Uk

(6) We refer to agent aki1 as the tail and agent akini as the head of the chain Cik . Let T k [µ] = {aki1 | i =
1, 2, . . . , rk }.
(7) At Step k (agents in Ak−1 with the set of houses H k−1 have already been removed), each agent in U k points
to one of these tails (and each of them points to a different one), which in turn converts these chains into one
or several cycles.

4.3 Incentive compatibility


 4.26 Definition: A mechanism φ is strategy-proof if for each housing market ⟨A, H, ≻, e⟩, for each a ∈ A, and for each
≻′a , we have
φ[≻](a) ≿a φ[≻−a , ≻′a ](a).

 4.27 Theorem (Theorem in Roth (1982a)): The core mechanism TTC is strategy-proof.
Intuition: Once being pointed by others, an agent never loses the chain pointing to her, so she can get the house
any later time if she wants.
4.3. Incentive compatibility 73

For the proof, we need the following three lemmas.

4.28 Lemma (Lemma 1 in Roth (1982a)): In the top trading cycles algorithm, given ≻, if

C = (an1 , an2 , . . . , anm )

is a chain in Gk [≻] and r > k, then C is a chain in Gr [≻] if and only if anm ∈ B r [≻] (e.g., anm has not been
removed before Step r).

Gk [≻] Gr [≻]
Proof. (1) If anm−1 −−−−→ anm , then anm−1 −−−−→ anm if and only if anm ∈ B r [≻], due to the top trading
cycles algorithm.
Gr [≻]
(2) By induction, anm−2 −−−−→ anm−1 if and only if anm−1 ∈ B r [≻], and so on.

4.29 Lemma (Lemma 2 in Roth (1982a)): Let ≻ be a strict preference profile, and ≻′ be another strict preference profile
which differs from ≻ only in the preference of agent ai . Let k and k ′ be the steps at which agent ai is removed
from the housing market in ⟨A, H, ≻, e⟩ and ⟨A, H, ≻′ , e⟩, respectively. Then B ℓ [≻] and B ℓ [≻′ ] are same for
1 ≤ ℓ ≤ min{k, k ′ }, and have the same cycles for 1 ≤ ℓ ≤ min{k, k ′ } − 1.

Proof. Since the graphs in B 1 [≻] and B 1 [≻′ ] differs only in the edge emanating from agent ai , they have the same
cycles if min{k, k ′ } > 1, and hence the agents removed at Step 1 from ≻ and ≻′ are same. This lemma follows by
induction.

4.30 Simple misreport manipulation lemma (Lemma 3 in Roth (1982a)): Let ≻′′ be a preference profile which differs
from ≻′ only in the preference of agent ai , where TTC[≻′ ](ai ) is ai ’s favorite house under ≻′′i . Then we have

TTC[≻′′ ](ai ) = TTC[≻′ ](ai ).

TTC[≻′ ](ai )
≻′ai

≻′′ai
TTC[≻′ ](ai )

Proof. (1) Let k ′ be the step at which agent ai with house hj ≜ TTC[≻′ ](ai ) is removed from the market

⟨A, H, ≻′ , e⟩. That is, ai , aj ∈ B k [≻′ ].
(2) Let TTC[≻′ ](ai ) be the initial house of agent aj .
(3) Let k ′′ be the step at which agent ai with house TTC[≻′′ ](ai ) is removed from the market ⟨A, H, ≻′′ , e⟩.
(4) Case 1: k ′′ ≥ k ′ .
4.3. Incentive compatibility 74

k′
≻′ time
(i) ai → aj → · · · → ai

(ii)–(iii) ai → aj → · · · → ai
≻′′ time
k′ k ′′

(i) That is, agent ai is still in the market ⟨A, H, ≻′ , e⟩ at Step k ′ .


′ ′ ′ ′
(ii) Then Lemma 4.29 implies that B k [≻′ ] = B k [≻′′ ]. Hence, ai , aj ∈ B k [≻′ ] = B k [≻′′ ].

Gk [≻′′ ]
(iii) Since hj is top-ranked for agent ai under ≻a′′i , we have ai −−−−−→ aj and hence

′ ′
Gk [≻′ ] = Gk [≻′′ ].

(iv) By the top trading cycles algorithm, ai with hj is also removed at Step k ′ in the market ⟨A, H, ≻′′ , e⟩,
that is TTC[≻′′ ](ai ) = hj = TTC[≻′ ](ai ) and k ′′ = k ′ .
(5) Case 2: k ′′ < k ′ .

k ′′ k′
≻′ ′′ ′
time
ai , a j ∈ B k ai , a j ∈ B k

(ii)–(iv) ai → aj
≻′′ time
k ′′

(i) That is, agent ai is removed at Step k ′′ in the market ⟨A, H, ≻′′ , e⟩.
′′ ′′
(ii) Lemma 4.29 implies that at Step k ′′ = min{k ′ , k ′′ }, B k [≻′ ] = B k [≻′′ ].
′′ ′′
(iii) Since aj ∈ B k [≻′ ], we have aj ∈ B k [≻′′ ].
′′
Gk [≻′′ ]
(iv) Therefore, ai −−−−−→ aj , since hj is top-ranked for agent aj in ⟨A, H, ≻′′ , e⟩.
(v) Hence hj is exactly the house which is removed with agent ai at Step k ′′ in the market ⟨A, H, ≻′′ , e⟩, that
is, TTC[≻′′ ](ai ) = hj = TTC[≻′ ](ai ).

4.31 Proof of Theorem 4.27. Let k and k ′ be the steps of ⟨A, H, ≻, e⟩ and ⟨A, H, ≻′ , e⟩, respectively, at which agent ai
is removed from the market. Let hj = TTC[≻](ai ) and hj ′ = TTC[≻′ ](ai ). We will see that hj ′ ≻ai hj is
impossible.
Lemma 4.30 implies that it is sufficient to consider a preference ≻′ai that ranks hj ′ first.
Case 1: k ′ ≥ k.
4.3. Incentive compatibility 75

k
≻ time
(iii) aj ′ ∈ B k [≻]


(iii) aj ′ ∈ B k [≻′ ] (ii) aj ′ ∈ B k [≻′ ]

≻ ′
time
k k

(1) Lemma 4.29 implies that B ℓ [≻] = B ℓ [≻′ ] for 1 ≤ ℓ ≤ k.



(2) It is clear aj ′ ∈ B k [≻′ ], since agent ai with house hj ′ is removed at Step k ′ .
(3) So aj ′ ∈ B k [≻′ ] = B k [≻].
Gk [≻] Gk [≻]
(4) If hj ′ ≻ai hj , then at Step k, we have ai −−−−→ aj ′ not ai −−−−→ aj in the market ⟨A, H, ≻, e⟩, which
contradicts the fact that ai is removed with hj .

Case 2: k ′ ≤ k.

k′ k
≻ time
(iii) aj ′ → · · · → ai (iv) aj ′ → · · · → ai

(ii) aj ′ → · · · → ai
≻′ time
k′

(1) Lemma 4.29 implies that B ℓ [≻] = B ℓ [≻′ ] for 1 ≤ ℓ ≤ k ′ .


(2) Let the chain C = (aj ′ ≜ an1 , an2 , . . . , anm ≜ ai ) be the cycle that forms at Step k ′ in the market ⟨A, H, ≻′
, e⟩.
(3) Since ≻ and ≻′ differ only in the ai ’s preference, we have
′ ′ ′
Gk [≻] Gk [≻] Gk [≻]
aj ′ = an1 −−−−→ an2 −−−−→ · · · −−−−→ anm = ai ,


and hence C forms a chain in Gk [≻].
(4) Since anm = ai is not removed st Step k in the market ⟨A, H, ≻, e⟩, Lemma 4.28 implies that C is a chain in
Gk [≻].
Gk [≻] Gk [≻]
(5) If hj ′ ≻ai hj , then at Step k, we have ai −−−−→ aj ′ not ai −−−−→ aj in the market ⟨A, H, ≻, e⟩, which
contradicts the fact that ai is removed with hj .

4.32 Definition: A mechanism φ is group strategy-proof, if for each housing market ⟨A, H, ≻, e⟩, there is no group of
agents B ⊆ A and preferences ≻′B such that

• φ[≻′B , ≻−B ](a) ≿a φ[≻B , ≻−B ](a) for all a ∈ B and


• φ[≻′B , ≻−B ](a0 ) ≻a0 φ[≻B , ≻−B ](a0 ) for some a0 ∈ B.

In words, a mechanism is group strategy-proof if no group of agents can jointly misreport preferences in such a way
to make some member strictly better off while no one in the group is made worse off.
4.3. Incentive compatibility 76

4.33 Lemma (Lemma 1 in Bird (1984)): Consider two preference profiles ≻ and ≻′ . If there is an agent ai ∈ Ak [≻]
such that TTC[≻′ ](ai ) ≻ai TTC[≻](ai ), then there exist agents aj ∈ A1 [≻] ∪ A2 [≻] ∪ · · · ∪ Ak−1 [≻] and agent
aℓ ∈ Ak [≻] ∪ Ak+1 [≻] ∪ · · · ∪ At [≻] such that

hℓ ≻′aj TTC[≻](aj ).

Proof. (1) Assume the contrary. Then


TTC[≻](aj ) ≿′aj hℓ ,

for all aj ∈ A1 [≻] ∪ A2 [≻] ∪ · · · ∪ Ak−1 [≻] and aℓ ∈ Ak [≻] ∪ Ak+1 [≻] ∪ · · · ∪ At [≻].
(2) It is clear that the equalities above can not hold; otherwise TTC[≻](aj ) = hℓ due to the strictness of prefer-
ences.
(3) Since each TTC[≻](aj ) = hm for some am ∈ A1 [≻] ∪ A2 [≻] ∪ · · · ∪ Ak−1 [≻], it follows from the top trading
cycle algorithm that


A1 [≻′ ] ∪ A2 [≻′ ] ∪ · · · ∪ Ak −1 [≻′ ] = A1 [≻] ∪ A2 [≻] ∪ · · · ∪ Ak−1 [≻]

for some k ′ .
(4) Since TTC[≻′ ](ai ) ≻ai TTC[≻](ai ), TTC[≻′ ](ai ) must have been taken in an earlier trading cycle under ≻.
(5) Thus, TTC[≻′ ](ai ) = hj for some aj ∈ A1 [≻] ∪ A2 [≻] ∪ · · · ∪ Ak−1 [≻].

(6) For preference profile ≻′ , ai and aj are in the same cycle , thus ai is in A1 [≻′ ] ∪ A2 [≻′ ] ∪ · · · ∪ Ak −1 [≻′ ].

(7) But A1 [≻] ∪ A2 [≻] ∪ · · · ∪ Ak−1 [≻] = A1 [≻′ ] ∪ A2 [≻′ ] ∪ · · · ∪ Ak −1 [≻′ ] and ai is not in A1 [≻] ∪ A2 [≻
] ∪ · · · ∪ Ak−1 [≻]. A contradiction.

4.34 Remark: This lemma shows that if any agent wants to get a more preferred house, she needs to get an agent in an
earlier cycle to change her preference to a house that went in a later trading cycle.

4.35 Theorem (Theorem in Bird (1984)): TTC is group strategy-proof.

Proof. (1) Assume that each agent a in a subset B ⊆ A reports a preference ≻′a instead of her true preference ≻.
(2) Let ai be the first agent in B to enter a trading cycle under ≻. We will show that ai can not improve.
(3) Let ai be in Ak [≻].
(4) If TTC[≻′ ](ai ) ≻ai TTC[≻](ai ), from the lemma there is an agent aj ∈ A1 [≻] ∪ · · · ∪ Ak−1 [≻] reporting a
preference for a house that was assigned in a cycle q ≥ k under ≻.
(5) Thus, aj ’s reported preference ≻′ is not same as her true preference ≻.
(6) Thus, aj ∈ B and ai can not be the first agent in B.
(7) By induction, every agent in B can not improve her assignment.

4.36 Remark: We have shown a stronger result: for each housing market ⟨A, H, ≻, e⟩, for each non-empty coalition
B ⊆ A, for each (≻′a )a∈B , we have for each a ∈ B,

φ[≻−B , ≻B ](a) ≿a φ[≻−B , ≻′B ](a).


4.4. Axiomatic characterization of top trading cycles algorithm 77

4.4 Axiomatic characterization of top trading cycles algorithm


 4.37 Theorem (Theorem 1 in Ma (1994)): The core mechanism TTC is the only mechanism that is individually rational,
Pareto efficient, and strategy-proof.

4.38 Proof of Theorem 4.37. (1) Suppose that there is another mechanism φ satisfying the three conditions.
(2) Fix a housing market ⟨A, H, ≻, e⟩.
(3) Let A1 be the set of agents matched in Step 1 of TTC for ⟨A, H, ≻, e⟩. We first show that for any agent a ∈ A1 ,
φ[≻](a) = TTC[≻](a).
(4) Suppose not, then φ[≻](a) is worse. That is, TTC[≻](a) ≻a φ[≻](a).
(5) Since TTC is individually rational, TTC[≻](a) ≿a ha .
(6) If TTC[≻](a) = ha , we have a contradiction with individual rationality of φ; that is, ha ≻a φ[≻](a).
(7) Thus, a trades with others under TTC at ≻. Assume that the trading cycle is a → k → · · · → 1 → a.
(8) Consider a new preference ≻′a : hk , ha .

TTC[≻](a) = hk ha
≻a

≻′a
hk ha

(9) Then TTC[≻] = TTC[≻′a , ≻−a ] and TTC[≻′a , ≻−a ](a) = TTC[≻](a) = hk .
(10) Since φ is individual rational, a must be assigned hk or ha under φ[≻′a , ≻−a ].
(11) If she is assigned hk , then under φ, when her preference is ≻a , she will profitably misreport ≻′a , violating the
strategy-proofness of φ:
φ[≻′a , ≻−a ](a) = hk = TTC[≻](a) ≻a φ[≻](a).

(12) Thus, φ[≻′a , ≻−a ](a) = ha , which is not hk = TTC[≻′a , ≻−a ](a).
(13) Summary:

TTC[≻′a , ≻−a ] = TTC[≻],


φ[≻′a , ≻−a ](a) = ha .

(14) Since φ[≻′a , ≻−a ](a) = ha , we have φ[≻′a , ≻−a ](1) ̸= ha = TTC[≻′a , ≻−a ](1). Thus, TTC[≻′a , ≻−a ](1) =
ha ≻1 φ[≻′a , ≻−a ](1).
(15) Consider a new preference ≻′1 : ha , h1 .

TTC[≻′a , ≻−a ](1) = ha h1


≻1

≻′1
ha h1

(16) Similarly, at [≻′a , ≻1′ , ≻−a−1 ], agent 1 is assigned ha under TTC (a → k → · · · → 1 → a is still a cycle), but
is assigned h1 under φ (φ[≻′a , ≻′1 , ≻−a−1 ](1) = ha = TTC[≻′a , ≻−a ](1) ≻1 φ[≻′a , ≻−a ](1)).
4.4. Axiomatic characterization of top trading cycles algorithm 78

(17) Summary:

TTC[≻′a , ≻′1 , ≻−a−1 ] = TTC[≻′a , ≻−a ] = TTC[≻],


φ[≻′a , ≻′1 , ≻−a−1 ](a) = h1 .

(18) By induction, at ≻′ = [≻′a , ≻′1 , . . . , ≻′k ], TTC[≻′ ] = TTC[≻], but φ[≻′ ](i) = hi for each i ∈ {a, 1, . . . , k},
violating the Pareto efficiency of φ.
(19) By induction on the steps of cycles, we complete the proof.

4.39 Theorem 4.37 is “robust” via the following three examples.

4.40 Example 1: A mechanism is individually rational and Pareto efficient, but not strategy-proof.
A = {a1 , a2 , a3 }, the preference profile ≻ is as follows:

a1 a2 a3
h2 h1 h1
h3 h3 h3
h1 h2

Table 4.7

Then both [ ] [ ]
a1 a2 a3 a1 a2 a3
TTC[≻] = and µ =
h2 h1 h3 h2 h3 h1

are individually rational, and Pareto efficient under ≻.


Define a mechanism for this market

µ, if ≻′ =≻;
φ[≻′ ] =
TTC[≻′ ], otherwise.

Now φ is not strategy-proof.

4.41 Example 2: The mechanism in which each agent is assigned her initial house. Clearly this mechanism is individually
rational and strategy-proof, but not Pareto efficient.

4.42 Example 3: A mechanism is Pareto efficient and strategy-proof, but not individually rational.
A = {a1 , a2 }, the mechanism φ in which agent 1 is always assigned the house she likes most. This mechanism is
Pareto efficient and strategy-proof.
But under the following preference profile ≻

a1 a2
h2 h2
h1

Table 4.8

[ ] [ ]
a1 a2 a1 a2
φ[≻] = ̸= = TTC[≻],
h2 h1 h1 h2
4.4. Axiomatic characterization of top trading cycles algorithm 79

and is not individually rational.


4.4. Axiomatic characterization of top trading cycles algorithm 80
Chapter 5
House allocation

Contents
5.1 The former model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.2 Simple serial dictatorship and core from assigned endowments . . . . . . . . . . . . . . . . . . . . . 82
5.3 Incentive compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.4 Neutrality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.5 Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.6 Random house allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

5.1 The former model


5.1 The house allocation problem was introduced by Hylland and Zeckhauser (1979). In this problem, there is a group
of agents and houses. Each agent shall be allocated a house by a central planner using preferences over the houses.

 5.2 Definition: A house allocation problem is a triple ⟨A, H, ≻⟩ such that

• A = {a1 , a2 , . . . , an } is a set of agents,


• H = {h1 , h2 , . . . , hn } is a set of houses,
• ≻= (≻a )a∈A is a strict preference profile such that for each agent a ∈ A, ≻a is a strict preference over houses.
Let Pa be the set of preferences of agent a. The induced weak preference of agent a is denoted by ≿a and for
any h, g ∈ H, h ≿a g if and only if h ≻a g or h = g.

 5.3 Definition: In a house allocation problem ⟨A, H, ≻⟩, a matching (allocation) is a bijection µ : A → H. Here µ(a)
is the assigned house of agent a under matching µ. Let M be the set of matchings.

 5.4 Definition: A (deterministic direct) mechanism is a procedure that assigns a matching for each house allocation
problem ⟨A, H, ≻⟩.
For the fixed sets of agents A and houses H, a mechanism becomes a function

φ : ×a∈A Pa → M.

 5.5 Definition: A matching µ is Pareto efficient if there is no other matching ν such that

81
5.2. Simple serial dictatorship and core from assigned endowments 82

• ν(a) ≿a µ(a) for all a ∈ A, and


• ν(a0 ) ≻a0 µ(a0 ) for some a0 ∈ A.

Let E denote the set of all Pareto efficient matchings.


A mechanism is Pareto efficient if it always selects a Pareto efficient matching for each house allocation.

5.2 Simple serial dictatorship and core from assigned endowments

5.6 An ordering f : {1, 2, . . . , n} → A is a one-to-one and onto function. Each ordering induces the following simple
mechanism, which is especially plausible if there is a natural hierarchy of agents. Let F be the set of all orderings.

Simple serial dictatorship induced by an ordering f , denoted by SDf .

Step 1: The highest priority agent f (1) is assigned her top choice house under ≻f (1) .
Step k: The k-th highest priority agent f (k) is assigned her top choice house under ≻f (k) among the remaining
houses.

5.7 Proposition: Simple serial dictatorship induced by an ordering f , SDf , is Pareto efficient.

Proof. (1) Suppose that there is a matching ν that Pareto dominates SDf [≻].
(2) Consider the agent a = f (i) with the highest priority who obtains a strictly better house in ν than in SDf [≻].
(3) Then ν(a) = SDf [≻](b) for some agent b = f (j) with j < i.
(4) By assumption, a is the agent with highest priority such that ν(a) ≻a SDf [≻](a), so ν(b) ≻b SDf [≻](b) is
impossible.
(5) Since ν Pareto dominates SDf [≻], ν(b) ≿b SDf [≻](b).
(6) Therefore, ν(b) = SDf [≻](b), which leads to a contradiction.


5.8 Core from assigned endowments µ, denoted by TTCµ : For any house allocation problem ⟨A, H, ≻⟩, select the
unique element of the core of the housing market ⟨A, H, ≻, µ⟩ where each agent a’s initial house is µ(a). That is,

TTCµ [≻] = TTC[≻, µ].

 5.9 Theorem (Lemma 1 in Abdulkadiroğlu and Sönmez (1998)): For any house allocation problem ⟨A, H, ≻⟩, for
any ordering f , and for any matching µ, the simple serial dictatorship induced by f and the core from assigned
endowments µ both yield Pareto efficient matchings. Moreover, for any Pareto efficient matching ν, there is a
simple serial dictatorship and a core from assigned endowments that yield it.
Given a house allocation problem ⟨A, H, ≻⟩, let SDF = {ν ∈ M | SDf [≻] = ν for some f ∈ F }, and TTCM =
{ν ∈ M | TTCµ [≻] = ν for some µ ∈ M}. Then it suffices to show

TTCM = SDF = E .

5.10 Proof of Theorem 5.9, Step 1: “TTCM ⊆ SDF ”.

(1) Let ν ∈ TTCM . Then there exists µ ∈ M with ν = TTCµ [≻].


5.2. Simple serial dictatorship and core from assigned endowments 83

(2) Let Step t be the last step of top trading cycles algorithm and let {A1 , A2 , . . . , At } be the cycle structure.
(3) For each k = 1, 2, . . . , t and each a ∈ Ak , we have

Bra (H \ ∪k−1 ℓ µ
ℓ=0 H ) = TTC [≻](a) = ν(a).

(4) Let f : {1, 2, . . . , n} → A be the ordering such that for each k, k ′ ∈ {1, 2, . . . , t}, for each a ∈ Ak , for each

a′ ∈ Ak , we have
k < k ′ ⇒ f −1 (a) < f −1 (a′ ).

That is, f orders agents in A1 before agents in A2 ; agents in A2 before agents in A3 and so on.
(5) We will show by induction on i that for all i ∈ {1, 2, . . . , n} we have SDf [≻](f (i)) = ν(f (i)).
(6) By top trading cycles algorithm and the construction of f , we have

SDf [≻](f (1)) = Brf (1) (H) = TTCµ [≻](f (1)) = ν(f (1)).

(7) Suppose that SDf [≻](f (j)) = ν(f (j)) for all j = 1, 2, . . . , i − 1 where 2 ≤ i ≤ n.
(8) Let f (i) ∈ Ak . We have the following:
• By top trading cycles algorithm, we have

Brf (i) (H \ ∪k−1 ℓ µ


ℓ=0 H ) = TTC [≻](f (i)) = ν(f (i)).

• By the construction of f , we have


∪k−1
ℓ=0 H ⊆ ∪j=1 ν(f (j)),
ℓ i−1

and hence
H \ ∪i−1
j=1 ν(f (j)) ⊆ H \ ∪ℓ=0 H .
k−1 ℓ

• ν(f (i)) ∈ H \ ∪i−1


j=1 ν(f (j)).

(9) Therefore,
( )
ν(f (i)) = Brf (i) (H \ ∪k−1
ℓ=0 H ℓ
) ≿ f (i) Brf (i) H \ ∪ i−1
j=1 ν(f (j)) ≿f (i) ν(f (i)),

and hence ( )
ν(f (i)) = Brf (i) H \ ∪i−1
j=1 ν(f (j)) .

(10) It follows that


( ) ( )
ν(f (i)) = Brf (i) H \ ∪i−1
j=1 ν(f (j)) = Brf (i) H \ ∪j=1 SD [≻](f (j)) = SD [≻](f (i)).
i−1 f f

5.11 Proof of Theorem 5.9, Step 2: “φF ⊆ E ”. See Proposition 5.7.

5.12 Proof of Theorem 5.9, Step 3: “E ⊆ TTCM ”.

(1) Let µ ∈ E . Consider the mechanism TTCµ .


(2) Since TTCµ [≻] = TTC[≻, µ], TTCµ is individually rational. That is, for all a ∈ A, TTCµ [≻](a) ≿a µ(a).
5.2. Simple serial dictatorship and core from assigned endowments 84

(3) Since µ is Pareto efficient and the preference profile is strict, we have TTCµ [≻] = µ, which in turn implies
µ ∈ TTCM , completing the proof of “E ⊆ TTCM .”

 5.13 Theorem (Theorem 1 in Abdulkadiroğlu and Sönmez (1998)): For any house allocation problem ⟨A, H, ≻⟩, the
number of simple serial dictatorships selecting a Pareto efficient matching µ is the same as the number of cores
from assigned endowments selecting µ. That is, for all ν ∈ E , we have |Mν | = |F ν |, where Mν = {µ ∈ M |
TTCµ [≻] = ν} and F ν = {f ∈ F | SDf [≻] = ν}.

5.14 Proof of Theorem 5.13, Step 1: Define “f on Mν ”.


Let ν ∈ E . For any µ ∈ M, define f (µ) as follows:
{ }
(1) Apply top trading cycles algorithm to find the cycle structure Ã[µ] = A1 [µ], A2 [µ], . . . , Atµ [µ] for the
housing market ⟨A, H, ≻, µ⟩.
(2) For all k = 2, 3, . . . , tµ , partition Ak [µ] into its chains as in Remark 4.25.
(3) Order the agents in A1 [µ] based on the index of their endowments, starting with the agent whose house has
the smallest index. (Recall that the endowment of agent a is µ(a).)
(4) Order the agents in Ak [µ], k = 2, 3, . . . , tµ as follows:
(i) Order the agents in the same chain subsequently, based on their order in the chain, starting with the head.
(ii) Order the chains based on the index of the endowments of the tails of the chains (starting the chain whose
tail has the house with the smallest index).
(5) Order the agents in Ak [µ] before the agents in Ak+1 [µ], k = 1, 2, . . . , tµ − 1.

5.15 Proof of Theorem 5.13, Step 2: “f ’s range is F ν ”.

(1) Let µ ∈ Mν . We have TTCµ [≻] = ν.


(2) By top trading cycles algorithm, for each k = 1, 2, . . . , tµ , for each a ∈ At [µ], we have
( )
Bra H \ ∪k−1
ℓ=0 H

= TTCµ [≻](a) = ν(a).

(3) By construction, f (µ) orders agents in A1 [µ] before the agents in A2 [µ], agents in A2 [µ] before the agents in
A3 [µ], and so on.
(4) By the similar method applied in the proof of 5.11, we have the simple serial dictatorship induced by f (µ),
namely SDf (µ) , assigns each agent a ∈ A the house ν(a).

5.16 Proof of Theorem 5.13, Step 3: “f is one-to-one”.


Claim 1: For any µ, µ′ ∈ Mν ,
f (µ) = f (µ′ ) ⇒ Ã[µ] = Ã[µ′ ].

(1) Without loss of generality assume that f = f (µ) = f (µ′ ) orders the agents as a1 , a2 , . . . , an .
5.2. Simple serial dictatorship and core from assigned endowments 85

(2) Let
{ }
Ã[µ] = {a1 , . . . , am1 }, {am1 +1 , . . . , am2 }, . . . , {amk−1 +1 , . . . , amk }, . . . , {amt −1 , . . . , an } ,
| {z } | {z } | {z } | {z }
A1 [µ] A2 [µ] Ak [µ] At [µ]
{ }
Ã[µ′ ] = {a1 , . . . , am′1 }, {am′1 +1 , . . . , am′2 }, . . . , {am′k−1 +1 , . . . , am′k }, . . . , {am′t′ −1 , . . . , an } .
| {z } | {z } | {z } | {z }
A1 [µ′ ] A2 [µ′ ] Ak [µ′ ] At′ [µ′ ]

We want to show that t = t′ and Ak [µ] = Ak [µ′ ] for all k = 1, 2, . . . , t. We proceed by induction.
(3) Suppose that A1 [µ] ̸= A1 [µ′ ]. Without loss of generality suppose that m′1 < m1 .
(4) We have agent am′1 +1 ∈ A1 [µ], and µ ∈ Mν , so

Bram′ +1 (H) = TTCµ [≻](am′1 +1 ) = ν(am′1 +1 ).


1

(5) Since am′1 +1 is ordered first in A2 [µ′ ], she is also ordered first among the agents in her chain.
(6) Then agent am′1 +1 is the head of her chain, and hence am′1 +1 ∈ U 2 [µ′ ].
(7) Therefore

Bram′ +1 (H) ̸= Bram′ +1 (H \ H 1 [µ′ ]) = TTCµ [≻](am′1 +1 ) = ν(am′1 +1 ),
1 1

which leads to a contradiction.


(8) Therefore A1 [µ] = A1 [µ′ ].
(9) Suppose that Aℓ [µ] = Aℓ [µ′ ] for all ℓ = 1, 2, . . . , k − 1 where 2 ≤ k ≤ min{t, t′ }.
(10) Then we have m′k−1 = mk−1 . We want to show Ak [µ] = Ak [µ′ ].
(11) Suppose, without loss of generality, m′k < mk .
(12) Then we have am′k +1 ∈ Ak [µ].
(13) Since µ ∈ Mν , we have

Bram′ +1 (H \ ∪k−1 ℓ µ
ℓ=0 H [µ]) = TTC [≻](amk +1 ) = ν(amk +1 ).
′ ′
k

(14) Since am′k +1 is ordered first in Ak+1 [µ′ ], she is also ordered first among those agents in her chain.
(15) Then am′k +1 is the head of her chain, and hence am′k +1 ∈ U k+1 [µ′ ].
(16) Therefore,
k−1 ℓ ′ k ′
Bram′ +1 (H \ ∪k−1
ℓ=0 H [µ]) = Bram′ +1 (H \ ∪ℓ=0 H [µ ]) ∈ H [µ ].

k k

′ ′
(17) Since am′k +1 ∈ A k+1
[µ ] and µ = M , we have ν


ν(am′k +1 ) = TTCµ [≻](am′k +1 ) ∈ H k+1 [µ′ ],

and hence Bram′ +1 (H \ ∪k−1


ℓ=0 H [µ]) ̸= ν(amk +1 ), which leads to a contradiction.
ℓ ′
k

(18) Therefore A [µ] = Ak [µ′ ]. This also proves that t = t′ and hence Ã[µ] = Ã[µ′ ] by induction.
k

Claim 2: Suppose µ, µ′ ∈ Mν are such that Ã[µ] = Ã[µ′ ]. Then

f (µ) = f (µ′ ) ⇒ µ = µ′ .
5.2. Simple serial dictatorship and core from assigned endowments 86

(19) Let µ, µ′ ∈ Mν be such that Ã[µ] = Ã[µ′ ] = {A1 , A2 , . . . , At }.


(20) Then we have H k [µ] = H k [µ′ ] for all k = 1, 2, . . . , t.
(21) Suppose f (µ) = f (µ′ ) = f . For each k = 1, 2, . . . , t, for each a ∈ Ak , we will show µ(a) = µ′ (a).
(22) Consider agents in A1 . We have H 1 [µ] = H 1 [µ′ ].
(23) By construction, f orders agents in A1 based on the index of their endowments. Therefore f (µ) = f (µ′ )
implies that µ′ (a) = µ(a) for all a ∈ A1 .
(24) Consider agents in Ak where k = 2, 3, . . . , t.
(25) Since H k [µ] = H k [µ′ ] for all k = 1, 2, . . . , t, we have
{ }
U k [µ′ ] = a ∈ Ak | Bra (H \ ∪k−2
ℓ=0 H ℓ ′
[µ ]) ∈ H k−1 ′
[µ ]
{ }
= a ∈ A | Bra (H \ ∪ℓ=0 H [µ]) ∈ H k−1 [µ] = U k [µ],
k k−2 ℓ

S k [µ′ ] = Ak \ U k [µ′ ] = Ak \ U k [µ] = S t [µ].

(26) These relations together with f (µ) = f (µ′ ) and the construction of f imply that we have the same chain
structure for µ and µ′ . (Recall that f orders agents in a chain subsequently based on their order in the chain,
starting with the head of the chain who is the only member of chain that is an element of U k . Therefore for a
given ordering f , the set of agents in U t uniquely determines the chain structure for Ak .)
(27) Let this common chain structure be {C1k , C2k , . . . , Crkk }, where for all i = 1, 2, . . . , rk , we have Cik =
(aki1 , aki2 , . . . , akini ) with akini ∈ U k and akij ∈ S k for all j = 1, 2, . . . , ni − 1.
(28) By the definition of a chain, for all i ∈ 1, 2, . . . , rk and all j = 1, 2, . . . , ni − 1, we have
( ) ℓ ′
(
′ k
)
µ aki(j+1) = Brakij (H \ ∪k−2 ℓ
ℓ=0 H [µ]) = Brak
ij
(H \ ∪k−2
ℓ=0 H [µ ]) = µ ai(j+1) .

(29) Since the chain structure is the same for endowments µ and µ′ , the set of tails is also the same for both
endowments. That is, T k [µ] = T k [µ′ ] ≜ T .
(30) Therefore we have µ(a) = µ′ (a) for all a ∈ Ak \ T k .
(31) We also have

{h ∈ H | µ′ (a) = h for some a ∈ T k } = H k \ {h ∈ H | µ′ (a) = h for some a ∈ Ak \ T k }


= H k \ {h ∈ H | µ(a) = h for some a ∈ Ak \ T k }
= {h ∈ H | µ(a) = h for some a ∈ T k }.

That is, the set of agents T k collectively own the same set of houses under endowments µ and µ′ .
(32) By the construction of f , tails of chains are ordered based on their endowments, f (µ) = f (µ′ ) implies
µ(a) = µ′ (a) for all a ∈ T k , and hence µ(a) = µ′ (a) for all a ∈ Ak .

5.17 Proof of Theorem 5.13, Step 4: “f is onto”.

(1) By Step 2 and Step 3 we have


|F ν | ≥ |Mν | for all ν ∈ E .
5.3. Incentive compatibility 87

(2) Therefore
∑ ∑
|F ν | ≥ |Mν |.
ν∈E ν∈E

(3) By Theorem 5.9,


∑ ∑
|F ν | ≥ |Mν |.
ν∈SDF ν∈TTCM

(4) Both the left-hand side and the right-hand side of the inequality are equal to the number of orderings, n!.
(5) Hence, |Mν | = |F ν | for all ν ∈ E .

5.3 Incentive compatibility

 5.18 Definition: A mechanism φ is strategy-proof if for each house allocation problem ⟨A, H, ≻⟩, for each a ∈ A, and
for each ≻′a , we have
φ[≻](a) ≿a φ[≻−a , ≻′a ](a).

 5.19 Theorem: The simple serial dictatorship induced by an ordering f is strategy-proof.

Proof. (1) Let f be an ordering.


(2) The first agent f (1) of the ordering obtains the favorite house for her when she tells the truth, so she has no
incentives to lie.
(3) The second agent f (2) of the ordering gets her favorite house among the remaining houses, so she has no
incentives to lie.
(4) And so on.

5.20 Definition: A mechanism φ is group strategy-proof if for each house allocation problem ⟨A, H, ≻⟩, there is no
group of agents B ⊆ A and preferences ≻′B such that

• φ[≻′B , ≻−B ](a) ≿a φ[≻B , ≻−B ](a) for all a ∈ B and


• φ[≻′B , ≻−B ](a0 ) ≻a0 φ[≻B , ≻−B ](a0 ) for some a0 ∈ B.

In words, a mechanism is group strategy-proof if no group of agents can jointly misreport preferences in such a way
to make some member strictly better off while no one in the group is made worse off.

5.21 Theorem: The simple serial dictatorship induced by an ordering f is group strategy-proof.

Proof. An intuition is that the mechanism only uses preference information of an agent when it is her turn to choose,
so the best she can do is to report her true favorite remaining good as her favorite choice. Whenever she does so,
the subsequent part of the mechanism proceeds exactly as when she reports true preferences.
5.4. Neutrality 88

5.4 Neutrality

5.22 Let σ be a permutation (relabeling) of houses. Let ≻σ be the preference profile where each house h is renamed to
σ(h). That is, g ≻σa h if and only if σ −1 (g) ≻a σ −1 (h).
 Definition: A mechanism φ is neutral if, for any house allocation problem and permutation σ,
( )
φ[≻σ ](a) = σ φ[≻](a) for all a ∈ A.

σ
P P

φ φ

M σ M

Figure 5.1

This means that the “real” outcome of a neutral mechanism is independent of the names of the indivisible goods.

5.23 Example (Example in Svensson (1999)): Let A = {1, 2, 3} and H = {a, b, c}. Let φ be a mechanism defined
so that if a is the best element in H according to ≻2 , then φ[≻](1) is the best element in {b, c} according to ≻1 ,
φ[≻](2) = a and φ[≻](3) is the remaining element. If all other cases, φ[≻](1) is the best element in H according
to ≻1 , φ[≻](2) is the best element in H \ {φ[≻](1)} according to ≻2 and φ[≻](3) is the remaining element.
Hence, the mechanism φ is serially dictatorial for all preference profiles except for those where individual 2 has a
as the best element.
This mechanism is obviously not neutral—the element a has a special position.
Consider the following preference profile ≻:

1 2 3
a a a
b b b
c c c

Table 5.1

Then the matching produced by φ is [ ]


1 2 3
µ= .
b a c
( )
Now consider the permutation σ: σ(a) = b, σ(b) = c and σ(c) = a. Then σ φ[≻](2) = b. On the other hand,
the new preference profile ≻σ is as follows:

1 2 3
b b b
c c c
a a a

Table 5.2
5.4. Neutrality 89

Then the matching produced by φ is [ ]


′ 1 2 3
µ = .
b c a
( )
Thus, φ[≻σ ](2) = c ̸= b = σ φ[≻](2) .

5.24 Example: One-sided DA is not neutral.

i j k a b
b a a i k
a b j i
k

Table 5.3

The matching produced by DA is [ ]


i j k
µ= .
a ∅ b

If we exchange the labels of a and b, the problem becomes

i j k a b
a b b i k
b a j i
k

Table 5.4

The matching produced by DA is [ ]


i j k
µ= .
a ∅ b

Thus, one-sided DA is not neutral.

 5.25 Definition: A mechanism φ is non-bossy if for any ≻, a ∈ A and ≻′a ,

φ[≻](a) = φ[≻′a , ≻−a ](a) implies φ[≻] = φ[≻′a , ≻−a ].

5.26 Lemma (Lemma 1 in Svensson (1999)): Let φ be a strategy-proof and non-bossy mechanism, ≻ and ≻′ two pref-
erence profiles such that for h ∈ H and a ∈ A, φ[≻](a) ≻′a h if φ[≻](a) ≻a h. Then φ[≻] = φ[≻′ ].

Proof. Step 1: To prove φ[≻] = φ[≻′a , ≻−a ].

(1) From strategy-proofness, it follows that

φ[≻](a) ≿a φ[≻′a , ≻−a ](a).

(2) By the assumption of the lemma,


φ[≻](a) ≿′a φ[≻′a , ≻−a ](a).

(3) Strategy-proofness also implies that

φ[≻′a , ≻−a ](a) ≿′a φ[≻](a).


5.4. Neutrality 90

(4) Hence
φ[≻](a) = φ[≻′a , ≻−a ](a).

(5) Finally non-bossiness implies


φ[≻] = φ[≻′a , ≻−a ].

Step 2:

(6) For ≻ and ≻′ , let ≻r = (≻′1 , ≻′2 , . . . , ≻′r−1 , ≻r , . . . , ≻n ) a preference profile for each r = 1, 2, . . . , n + 1.
(7) Then it follows that
φ[≻r ] = φ[≻r , ≻r−r ] = φ[≻′r , ≻r−r ] = φ[≻r+1 ].

(8) Since φ[≻] = φ[≻1 ] and φ[≻′ ] = φ[≻n+1 ], they are same.

5.27 Theorem (Theorem 1 in Svensson (1999)): A mechanism φ is strategy-proof, non-bossy and neutral mechanism if
and only if it is a simple serial dictatorship.

Proof. It suffices to prove the “only if ” direction.


Step 1: Consider the preference profile ≻ where all agents share the common preference and h1 ≻a h2 ≻a · · · ≻a
hn for all a ∈ A.

(1) Let f : {1, 2, . . . , n} → A be an ordering given by

f (j) = (φ[≻])−1 (hj ).

(2) Clearly, φ[≻](f (j)) is the best element in


{ }
H \ φ[≻](f (1)), φ[≻](f (2)), . . . , φ[≻](f (j − 1)) ,

according to the common preference.


(3) Then it is obvious that φ and φf coincide on the set of such preference profiles.

Step 2: Consider the preference profile ≻′ where all agents share the common preference and hi1 ≻′a hi2 ≻′a · · · ≻′a
hin for all a ∈ A.

(4) Define a permutation σ on H as follows: σ(hj ) = hij for all hj .


(5) Then ≻′ =≻σ .
( )
(6) Neutrality implies φ[≻′ ](a) = φ[≻σ ](a) = σ φ[≻](a) for all a ∈ A.
(7) Therefore,
( )
φ[≻′ ](a) = hij ⇐⇒ σ φ[≻](a) = hij ⇐⇒ φ[≻](a) = σ −1 (hij ) = hj ⇐⇒ a = f (j),

that is, agent a gets the j-th favorite house under φ[≻′ ] if and only if she is the j-th turn to choose in the
procedure φf .
(8) Thus, φ[≻′ ](a) = hij ⇐⇒ φf [≻′ ] = hij .
(9) Hence, φ = φf coincide on the set of such preference profiles.
5.5. Consistency 91

Step 3: Consider a general preference profile ≻′ .

(10) Define {hij }nj=1 according to:

hij is the best element in H \ {hi1 , hi2 , . . . , hij−1 } according to ≻′f (j) .

(11) Let ≻′′ be a preference profile where all agents share the common preference, and satisfy:

hi1 ≻′′a hi2 ≻′′a · · · ≻′′a hin .

(12) From Step 2, φ[≻′′ ] = φf [≻′′ ].


(13) Clearly, φf [≻′′ ](f (j)) = hij = φf [≻′ ](f (j)) for each j = 1, 2, . . . , n. Thus, φf [≻′′ ] = φf [≻′ ].
(14) It remains to show that φ[≻′′ ] = φ[≻′ ].
(15) Let h ∈ H and hij = φf [≻′′ ](f (j)) = φ[≻′′ ](f (j)) ≿′′f (j) h.
(16) Then h ∈ H \ {hi1 , hi2 , . . . , hij−1 }.
(17) By the definition of {hij }, we have
φ[≻′′ ](f (j)) = hij ≿′f (j) h.

(18) By Lemma 5.26, we have φ[≻′′ ] = φ[≻′ ].

5.28 Corollary: A mechanism φ is group strategy-proof and neutral mechanism if and only if it is a simple serial dicta-
torship.

Proof. It follows immediately from Theorem 9.18 and Theorem 5.27.

5.5 Consistency
5.29 For any problem Γ = ⟨A, H, ≻⟩, any non-empty subset A′ of A, and any allocation µ, the reduced problem of Γ
with respect to A′ under µ is
µ ′ ′
rA ′ (Γ) = ⟨A , µ(A ), (≻i |µ(A′ ) )i∈A′ ⟩,

where µ(A′ ) is the remaining houses after the agents in A \ A′ have left with their assigned houses, and ≻i |µ(A′ )
is the restriction of agent i’s preference to the remaining houses.

 5.30 Definition: A mechanism φ is consistent1 if for each problem Γ = ⟨A, H, ≻⟩ and for each non-empty subset A′ of
A, one has
φ[Γ](a) = φ[rA′ (Γ)](a) for each a ∈ A′ .
φ[Γ]

A mechanism φ is pairwise consistent if for any problem Γ = ⟨A, H, ≻⟩, any non-empty subset A′ of A with even
cardinality, and any allocation µ, one has

φ[Γ](a) = φ[rA′ (Γ)](a) for each a ∈ A′ .


φ[Γ]

5.31 Example: DA is not consistent.


1 A mechanism is consistent if the assignment is unchanged if the mechanism is implemented on a sub-problem after one removes some agents

and their assignment.


5.6. Random house allocation 92

i j k a b
b a a i k
a b j i
k

Table 5.5

 5.32 Definition: In the problem Γ = ⟨A, H, ≻⟩, the allocation µ′ strongly Pareto dominates µ if every agent in A is
strictly better off under µ′ than under µ.
A mechanism is weakly Pareto optimal if it never chooses allocations that are strongly Pareto dominated.

 5.33 Theorem (Corollary 1 in Ergin (2000)): If a mechanism is weakly Pareto optimal, pairwise consistent, and pairwise
neutral, then it is a simple serial dictatorship.

Proof. Omitted.

5.6 Random house allocation

5.34 Question: How about the fairness of simple serial dictatorship and core from assigned endowments?

5.35 A lottery p is a probability distribution over matchings,

p = (p1 , p2 , . . . , pn! ),

with k pk = 1 and pk ≥ 0 for all k.
We denote the lottery that assigns probability 1 to matching µ by pµ . Let ∆(M) be the set of all lotteries.

5.36 Random priority (or random serial dictatorship):

Phase 1: Draw each orderings of the agents with equal probability.


Phase 2: Run simple serial dictatorship according to the selected ordering.

Mathematically, random priority is defined as

1 ∑ SDf [≻]
RP[≻] = p for each ≻,
n!
f ∈F

f
where pSD [≻]
is the lottery that assigns probability 1 to matching SDf [≻].

5.37 Core from random endowments:

Phase 1: Draw each initial assignment with equal probability.


Phase 2: Run TTC according to the selected initial assignment.

Mathematically, core from random endowments is defined as

1 ∑ TTCµ [≻]
φcre [≻] = p for each ≻,
n!
µ∈M

µ
where pTTC [≻]
is the lottery that assigns probability 1 to matching TTCµ [≻].
5.6. Random house allocation 93

5.38 Theorem (Theorem 2 in Abdulkadiroğlu and Sönmez (1998)): Random priority and core from random endowments
coincide.

Proof. We have n! simple serial dictatorships and n! cores from assigned endowments. By Theorem 5.9 the mem-
bers of both classes select Pareto efficient matchings and by Theorem 5.13 the number of simple serial dictatorships
selecting a particular Pareto efficient matching ν is the same as the number of cores from assigned endowments
selecting ν. Therefore random serial dictatorship which randomly selects a simple serial dictatorship with uniform
distribution leads to the same lottery as the core from random endowments which randomly selects a core from
assigned endowment with uniform distribution.
5.6. Random house allocation 94
Chapter 6
House allocation with existing tenants

Contents
6.1 The former model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.2 Real-lief mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.2.1 Random serial dictatorship with squatting rights . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.2.2 Random serial dictatorship with waiting list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.2.3 MIT-NH4 mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.3 Top trading cycles algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.4 You request my house—I get your turn algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.5 Axiomatic characterization of YRMH-IGYT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.6 Random house allocation with existing tenants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

6.1 The former model

6.1 Motivated by real-life on-campus housing practices, Abdulkadiroğlu and Sönmez (1999) introduced a house allo-
cation problem with existing tenants: A set of houses shall be allocated to a set of agents by a centralized clearing
house. Some of the agents are existing tenants, each of whom already occupies a house, referred to as an occupied
house, and the rest of the agents are newcomers. Each agent has strict preferences over houses. In addition to
occupied houses, there are vacant houses. Existing tenants are entitled not only to keep their current houses but
also to apply for other houses.
The model is a generalization of both the housing market and the house allocation problem.

 6.2 Definition: A house allocation problem with existing tenants, denoted by ⟨AE , AN , HO , HV , ≻⟩, consists of

• a finite set of existing tenants AE ,


• a finite set of new applicants AN ,
• a finite set of occupied houses HO = {hi : ai ∈ AE },
• a finite set of vacant houses HV , and
• a strict preference profile ≻= (≻i )i∈AE ∪AN .

95
6.2. Real-lief mechanisms 96

Let A = AE ∪ AN denote the set of all agents and H = HO ∪ HV ∪ {h0 } denote the set of all houses plus the null
house.
Agent i’s strict preference ≻i is on H. Let P be the set of all strict preferences on H. Let ≿i be agent i’s induced
weak preference. We assume that the null house h0 is the last choice for each agent.

 6.3 Definition: A matching µ : A → H is an assignment of houses to agents such that

• every agent is assigned one house, and


• only the null house h0 can be assigned to more than one agent.

For any agent a ∈ A, we refer to µ(a) as the assignment of agent i under µ. Let M be the set of all matchings.

 6.4 Definition: A direct mechanism is a procedure that assigns a matching for each house allocation problem with
existing tenants ⟨AE , AN , HO , HV , ≻⟩.

 6.5 Definition: A matching is Pareto efficient if there is no other matching that makes all agents weakly better off and
at least one agent strictly better off.
A mechanism is Pareto efficient if it always selects a Pareto efficient matching for each house allocation problem
with existing tenants.

 6.6 Definition: A matching is individually rational if no existing tenant strictly prefers his endowment to his assignment.
A mechanism is individually rational if it always selects an individually rational matching for each house allocation
problem with existing tenants.

 6.7 Definition: A mechanism φ is strategy-proof if for each house allocation problem with existing tenants ⟨AE , AN , HO , HV , ≻
⟩, for each a ∈ A, for each ≻′a , we have

φ[≻](a) ≿a φ[≻′a , ≻−a ](a).

6.2 Real-lief mechanisms

6.8 Given a group B ⊆ A of agents, an ordering of these agents is a one-to-one function f : {1, 2, . . . , |B|} → B.
Given a group B ⊆ A of agents and a set G ⊆ H of houses, the serial dictatorship induced by ordering f is defined
as follows: The agent who is ordered first under f gets her top choice from G, the next agent gets her top choice
among remaining houses, and so on.

6.2.1 Random serial dictatorship with squatting rights



6.9 Random serial dictatorship with squatting rights:

Phase 1: Every existing tenant a ∈ AE reports whether she is “In” or “Out” and a strict preference ≻a .
Every new applicant a ∈ AN reports a strict preference ≻a .
Phase 2: Every existing tenant a ∈ AE who reports “Out” is assigned her current house.
Phase 3: Let B = AN ∪ {a ∈ AE | a chooses “In”} and G = HV ∪ {hi ∈ HO | ai chooses “In”}.
(1) An ordering f of agents in B is decided. The ordering may be randomly chosen from a given distribution
of orderings or may favor some subgroup of agents (for example, seniors over juniors).
6.2. Real-lief mechanisms 97

(2) Houses in G are assigned to these agents based on the simple serial dictatorship induced by f under the
reported preference profile.

6.10 Problems of random serial dictatorship with squatting rights:

• Since this algorithm does not guarantee each existing tenant a house that is at least as good as her own, it may
be not individual rational.
• Some of agents may choose to stay “Out” (i.e., use their squatting rights), and this may result in the loss of
potentially large gains from trade. Thus, the resulting matching may not be Pareto efficient.

6.11 Exercise: How about the strategy-proofness of the random serial dictatorship with squatting rights?

6.2.2 Random serial dictatorship with waiting list



6.12 Random serial dictatorship with waiting list, induced by a given ordering f of agents:

Start: Define the set of available houses for Step 1 to be the set of vacant houses.
Define the set of acceptable houses for agent a to be
• the set of all houses in case agent a is a new applicant, and
• the set of all houses better than her current house ha in case she is an existing tenant.
Step 1: The agent with the highest priority among those who have at least one acceptable available house is assigned
her top available house and removed from the process.
Her assignment is deleted from the set of available houses for Step 2. In case she is an existing tenant, her
current house becomes available for Step 2.
Step k: The set of available houses for Step k is defined at the end of Step (k − 1).
The agent with the highest priority among all remaining agents who has at least one acceptable available house
is assigned her top available house and removed from the process.
Her assignment is deleted from the set of available houses for Step (k + 1). In case she is an existing tenant,
her current house becomes available for Step (k + 1).
End: If there is at least one remaining agent and one available house that is acceptable to at least one of them, then
the process continues.
When the process terminates, those existing tenants who are not re-assigned keep their current houses.

6.13 Example: Let AE = {a1 , a2 , a3 }, AN = ∅, HO = {h1 , h2 , h3 }, and HV = {h4 }. Here the existing tenant ai
occupies the house hi for i = 1, 2, 3.
Let the agents be ordered as a1 -a2 -a3 and let the preferences be as follows:

a1 a2 a3
h2 h3 h1
h3 h1 h4
h1 h2 h3
h4 h4 h2
h0 h0 h0

Table 6.1

Start: The set of available houses is {h4 }. The sets of acceptable available houses for agents a1 and a2 both are ∅.
The set of acceptable available houses for agent a3 is {h4 }.
6.2. Real-lief mechanisms 98

Step 1: h4 is acceptable to only a3 . So, a3 is assigned h4 . The set of available houses becomes {h3 }.
Step 2: h3 is acceptable to both a1 and a2 . Since a1 has the higher priority, a1 is assigned h3 . The set of available
houses becomes {h1 }.
Step 3: h1 is acceptable to a2 , then a2 is assigned h1 .
End: Since there are no remaining agents at the end of Step 3, the process terminates and the final matching is
[ ]
a1 a2 a3
.
h3 h1 h4

6.14 Random serial dictatorship with waiting list is inefficient.


Consider the example in the previous item. The outcome is Pareto dominated by
[ ]
a1 a2 a3
.
h2 h3 h1

6.15 Exercise: Is random serial dictatorship with waiting list individually rational and strategy-proof?

6.16 Question: How about the algorithm when agents are not removed?

6.2.3 MIT-NH4 mechanism

6.17 The following mechanism is used at the residence NH4 of MIT.



6.18 MIT-NH4 mechanism, given an ordering f , works as follows:

Phase 1: The first agent is tentatively assigned his or her top choice among all houses, the next agent is tentatively
assigned his top choice among the remaining houses, and so on, until a squatting conflict occurs.
Phase 2: A squatting conflict occurs if it is the turn of an existing tenant but every remaining house is worse than
his or her current house. That means someone else, the conflicting agent, is tentatively assigned the existing
tenant’s current house.
When this happens
(1) the existing tenant is assigned his or her current house and removed from the process, and
(2) all tentative assignments starting with the conflicting agent and up to the existing tenant are erased.
At this point the squatting conflict is resolved and the process starts over again with the conflicting agent.
Every squatting conflict that occurs afterwards is resolved in a similar way.
End: The process is over when there are no houses or agents left. At this point all tentative assignments are finalized.

6.19 Example: Let AE = {a1 , a2 , a3 , a4 }, AN = {a5 }, HO = {h1 , h2 , h3 , h4 } and HV = {h5 }. Here the existing
tenant ak occupies the house hk for k = 1, 2, 3, 4. Let the ordering f order the agents as a1 -a2 -a3 -a4 -a5 and let
the preferences be as follows:
6.3. Top trading cycles algorithm 99

a1 a2 a3 a4 a5
h3 h4 h5 h3 h4
h4 h5 h3 h5 h5
h5 h2 h4 h4 h3
h1 h3 h2 h2 h1
h2 h1 h1 h1 h2
h0 h0 h0 h0 h0

Table 6.2

Step 1: First agent a1 is tentatively assigned h3 , next agent a2 is tentatively assigned h4 , next agent a3 is tentatively
assigned h5 , and next its agent a4 ’s turn and a squatting conflict occurs. The conflicting agent is agent a2 who was
tentatively assigned h4 . Agent a2 ’s tentative assignment, as well as that of agent a3 , is erased. Agent a4 is assigned
his or her current house h4 and removed from the process. This resolves the squatting conflict.
Step 2: The process starts over with the conflicting agent a2 . Agent a2 is tentatively assigned h5 and next it is agent
a3 ’s turn and another squatting conflict occurs. The conflicting agent is agent a1 who was tentatively assigned h3 .
His tentative assignment, as well as that of agent a2 are erased. Agent a3 is assigned his current house h3 and
removed from the process. This resolves the second squatting conflict.
Step 3: The process starts over with the conflicting agent a1 . He is tentatively assigned h5 , next agent a2 is tentatively
assigned h2 and finally agent a5 is tentatively assigned h1 . At this point all tentative assignments are finalized.
Therefore the final matching is [ ]
a1 a2 a3 a4 a5
.
h5 h2 h3 h4 h1

6.20 While it is innovative, the MIT-NH4 mechanism does not resolve the inefficiency problem.
Consider the example in the previous item, the outcome is Pareto dominated by both
[ ] [ ]
a1 a2 a3 a4 a5 a1 a2 a3 a4 a5
and .
h3 h2 h5 h4 h1 h4 h2 h5 h3 h1

6.21 Exercise: Is the MIT-NH4 mechanism individually rational and strategy-proof?

6.22 Question: Is there any other way to resolve the squatting conflict? In particular, how about the way that a4 is
assigned h5 ? Hint: Compare with TTCf in 6.23.

6.3 Top trading cycles algorithm



6.23 Top trading cycles algorithm, induced by a given ordering f of agents.

Step 1: Define the set of available houses for this step to be the set of vacant houses.
• Each agent a points to her favorite house under her reported preference.
• Each occupied house points to its occupant.
• Each available house points to the agent with highest priority (i.e., f (1)).
Since the numbers of agents and houses are finite, there is at least one cycle, here a cycle is an ordered list of
agents and houses (j1 , j2 , . . . , jk ) where j1 points to j2 , j2 points to j3 , …, jk points to j1 .
6.3. Top trading cycles algorithm 100

Every agent who participates in a cycle is assigned the house that she points to, and removed with her assign-
ment.
Whenever there is an available house in a cycle, the agent with the highest priority, f (1), is also in the same
cycle. If this agent is an existing tenant, then her house hf (1) can not be in any cycle and it becomes available
for Step 2.
All available houses that are not removed remain available.
Step k: The set of available houses for Step k is defined at the end of Step (k − 1).
• Each remaining agent a points to her favorite house among the remaining houses under her reported
preference.
• Each remaining occupied house points to its occupant.
• Each available house points to the agent with highest priority among the remaining agents.
There is at least one cycle. Every agent in a cycle is assigned the house that she points to and removed with
her assignment.
If there is an available house in a cycle then the agent with the highest priority in this step is also in the same
cycle. If this agent is an existing tenant, then her house can not be in any cycle and it becomes available for
Step (k + 1).
All available houses that are not removed remain available.
End: If there is at least one remaining agent and one remaining house, then the process continues.

We use TTCf to denote the top trading cycles mechanism induced by the ordering f .

6.24 Example: Let AE = {a1 , a2 , a3 , a4 }, AN = {a5 }, HO = {h1 , h2 , h3 , h4 } and HV = {h5 , h6 , h7 }. Here the
existing tenant ai occupies the house hi for i = 1, 2, 3, 4. Let the ordering f order the agents as a1 -a2 -a3 -a4 -a5
and let the preferences be as follows:

a1 a2 a3 a4 a5
h2 h7 h2 h2 h4
h6 h1 h1 h4 h3
h5 h6 h4 h3 h7
h1 h5 h7 h6 h1
h4 h4 h3 h1 h2
h3 h3 h6 h7 h5
h7 h2 h5 h5 h6
h0 h0 h0 h0 h0

Table 6.3

Step 1:
6.3. Top trading cycles algorithm 101

a1 h1 a2 h2

h7 a3

h6 h3

h5 a5 h4 a4

Figure 6.1: Step 1

The set of available houses in Step 1 in HV = {h5 , h6 , h7 }. The only cycle that is formed at this step is

(a1 , h2 , a2 , h7 ).

Therefore a1 is assigned h2 and a2 is assigned h7 .


Step 2: The reduced preferences are as follows:

a3 a4 a5
h1 h4 h4
h4 h3 h3
h3 h6 h1
h6 h1 h5
h5 h5 h6
h0 h0 h0

Table 6.4

a1 h1 a2 h2

h7 a3

h6 h3

h5 a5 h4 a4

Figure 6.2: Step 2

Since a1 leaves in Step 1, house h1 becomes available in Step 2. Therefore the set of available houses for Step 2 is
{h1 , h5 , h6 }. The available houses h1 , h5 and h6 all point to agent a3 , now the highest ranking agent. There are
two cycles (a3 , h1 ) and (a4 , h4 ). Therefore a3 is assigned h1 and a4 is assigned her own house h4 .
6.3. Top trading cycles algorithm 102

Step 3: The reduced preferences are as follows:

a5
h3
h5
h6
h0

Table 6.5

a1 h1 a2 h2

h7 a3

h6 h3

h5 a5 h4 a4

Figure 6.3: Step 3

Since a3 leaves in Step 2, house h3 becomes available for Step 3. Therefore the set of available houses for Step 3
is {h3 , h5 , h6 }. The available houses h3 , h5 , and h6 all point to the only remaining agent a5 . The only cycle is
(a5 , h3 ). Therefore a5 is assigned h3 .
There are no remaining agents so the algorithm terminates and the matching it induces is:
[ ]
a1 a2 a3 a4 a5
h2 h7 h1 h4 h3

 6.25 Theorem (Proposition 1 in Abdulkadiroğlu and Sönmez (1999)): For any ordering f , the induced top trading cycles
mechanism TTCf is Pareto efficient.

Proof. (1) Consider the top trading cycles algorithm. Any agent who leaves at Step 1 is assigned his or her top
choice and cannot be made better off.
(2) Any agent who leaves at Step 2 is assigned his or her top choice among those houses remaining at Step 2 and
since the preferences are strict he or she cannot be made better off without hurting someone who left at Step 1.
(3) Proceeding in a similar way, no agent can be made better off without hurting someone who left at an earlier
step. Therefore the mechanism TTCf is Pareto efficient.

 6.26 Theorem (Proposition 2 in Abdulkadiroğlu and Sönmez (1999)): For any ordering f , the induced top trading cycles
mechanism TTCf is individually rational.

Proof. (1) Consider the top trading cycles algorithm. For any existing tenant a ∈ AE , his or her house ha points
to him or her until he or she leaves.
6.3. Top trading cycles algorithm 103

(2) Therefore the assignment of a cannot be worse than his endowment ha .

 6.27 Theorem (Theorem 1 in Abdulkadiroğlu and Sönmez (1999)): For any ordering f , the induced top trading cycles
mechanism TTCf is strategy-proof.

Proof. The proof is analogous to the proof of Theorem 4.27.

6.28 There is another version of TTC.



Top trading cycles algorithm, induced by a given initial endowment µ.

Phase 1: Construct an initial allocation µ by


• assigning each existing tenant her own house,
• randomly assigning the vacant houses to newcomers with uniform distribution.
Phase 2: Run TTC for the induced housing market to determine the final outcome.

We use TTCµ to denote the top trading cycles mechanism induced by the initial endowment µ.

6.29 Unless otherwise mentioned, TTC always refers to TTC with an ordering rather than TTC with an initial endow-
ment.

6.30 It is clear that TTCµ is Pareto efficient, individual rational, and strategy-proof.

6.31 Exercise: What is the difference between TTCf and TTCµ .


Hint: There is a hidden bias in TTCµ . In TTCµ , an initial allocation is constructed by assigning each existing tenant
her current house and randomly assigning vacant houses to newcomers. This might be interpreted as granting
property rights of vacant houses to newcomers. Therefore existing tenants who also have claims on vacant houses
give up these claims under TTCµ .
Consider the following house allocation with existing tenants: AE = {a1 , a2 }, AN = {a3 }, HO = {h1 , h2 }, and
HV = {h3 }. Here the existing tenant ai occupies the house hi for i = 1, 2. Let the agents be ordered as a1 −a2 −a3
and let the preferences be as follows:

a1 a2 a3
h3 h3 h3
h2 h2 h2
h1 h1 h1

Table 6.6
[ ]
f a1 a2 a3
Then TTC [≻] = .
h3 h2 h1
[ ]
a1 a2 a3
On the other hand, the unique possible initial endowment µ is , and the resulting matching TTCµ [≻]
h1 h2 h3
[ ]
a1 a2 a3
is . For agent a1 , the outcome under TTCf [≻] is better than the outcome under TTCµ [≻].
h1 h2 h3
6.32 Theorem (Theorem 2 in Abdulkadiroğlu and Sönmez (1999)): Let f be an ordering, and φ a mechanism that is
Pareto efficient, individually rational, and strategy-proof. If φ[≻](f (i)) ≻f (i) TTCf [≻](f (i)) for some ≻ and i,
then there exists ≻′ and j < i such that TTCf [≻′ ](f (j)) ≻′f (j) φ[≻′ ](f (j)).
6.4. You request my house—I get your turn algorithm 104

6.33 Interpretation:

• As far as agent f (1) is concerned, TTCf assigns him a house that is at least as good as the assignment of any
Pareto efficient, individual rational, and strategy-proof mechanism at all preference profiles.
• Next consider all Pareto efficient, individual rational, and strategy-proof mechanisms that perform equally
well for agent f (1). TTCf assigns agent f (2) a house that is at least as good as the assignment of any such
mechanism at all preference profiles.
• In general, consider all Pareto efficient, individual rational, and strategy-proof mechanisms that perform
equally well for agents f (1), f (2), …, f (k) where k < |A|. TTCf assigns agent f (k + 1) a house that is
at least as good as the assignment of any such mechanism at all preference profiles.

6.34 Remark: There are many applications where agents are naturally ordered based on their seniority. Let f denote
this ordering. Then Theorem 6.32 shows that there is no Pareto efficient, individually rational and strategy-proof
mechanism which always better respects the seniority of the agents than TTCf .

6.4 You request my house—I get your turn algorithm



6.35 You request my house—I get your turn (YRMH-IGYT) algorithm, induced by a given ordering f :

Phase 1: Assign the first agent her top choice, the second agent her top choice among the remaining houses, and
so on, until someone demands the house of an existing tenant.
Phase 2: If at that point the existing tenant whose house is requested is already assigned another house, then do
not disturb the procedure.
Otherwise, modify the remainder of the ordering by inserting this existing tenant before the requestor at the
priority order and proceed with the Phase 1 through this existing tenant.
Similarly, insert any existing tenant who is not already served just before the requestor in the priority order
once her house is requested by an agent.
Phase 3: If at any point a cycle forms, it is formed by exclusively existing tenants and each of them requests the
house of the tenant who is next in the cycle. A cycle is an ordered list (h1 , a1 , . . . , hk , ak ) of occupied houses
and existing tenants where agent a1 demands the house a2 , h2 , agent a2 demands the house of agent a3 , h3 , .
. . , agent ak demands the house of a1 , h1 .
In such case, remove all agents in the cycle by assigning them the house they demand and proceed similarly.

6.36 The YRMH-IGYT algorithm generalizes simple serial dictatorship and TTC:

• The YRMH-IGYT algorithm coincides with simple serial dictatorship when there are no existing tenants:
Without existing tenants, the “you request my house …” contingency simply does not happen, so the mecha-
nism coincides with simple serial dictatorship.
• The YRMH-IGYT algorithm coincides with TTC when all agents are existing tenants and there is no vacant
house: In this case, an agent’s request always points to a house owned by someone, and the assignment of a
house happens if and only if there is a cycle made of existing tenants.

6.37 Example.

• AE = {a1 , a2 , . . . , a9 } is the set of existing tenants,


• AN = {a10 , a11 , . . . , a16 } is the set of new applicants, and
6.4. You request my house—I get your turn algorithm 105

• HV = {h10 , h11 , . . . , h16 } is the set of vacant houses.

Suppose that each existing tenant ak occupies hk for each k = 1, 2, . . . , 9. Let the preference profile ≻ be given as:

a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16


h15 h3 h1 h2 h9 h6 h7 h6 h11 h7 h2 h4 h6 h8 h1 h5
h4 h3 h12 h3 h4 h14 h13
h12 h16
h10

Table 6.7

Let f = (a13 , a15 , a11 , a14 , a12 , a16 , a10 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 ) be the ordering of the agents.

h1 h2 h3 h4 h5 h6 h7 h8 h9 h10 h11 h12 h13 h14 h15 h16

a13 a15 a11 a14 a12 a16 a10 a1 a2 a3 a4 a5 a6 a7 a8 a9

Figure 6.4: Step 1

h6 h1 h2 h3 h4 h5 h7 h8 h9 h10 h11 h12 h13 h14 h15 h16

a6 a13 a15 a11 a14 a12 a16 a10 a1 a2 a3 a4 a5 a7 a8 a9

Figure 6.5: Step 2

@
h@
6 h1 h2 h3 h4 h5 h7 h8 h9 h10 h11 h12 h13 h14 h15 h16

Z6 a13 a15 a11 a14 a12 a16 a10 a1 a2 a3 a4 a5 a7 a8 a9


a
Z

Figure 6.6: Step 3

@
h@ H
h
6 H
13 h1 h2 h3 h4 h5 h7 h8 h9 h10 h11 h12 h14 h15 h16

Z H
a
6 
aZ
 H
13 a15 a11 a14 a12 a16 a10 a1 a2 a3 a4 a5 a7 a8 a9

Figure 6.7: Step 4


6.4. You request my house—I get your turn algorithm 106

@
h@ H
h
6 H
13 h1 h2 h3 h4 h5 h7 h8 h9 h10 h11 h12 h14 h15 h16

Z
a
 H
a
6 
Z 13 a1 a15 a11 a14 a12 a16 a10 a2 a3 a4 a5 a7 a8 a9
H

Figure 6.8: Step 5

@
h@ H
h
6 H H
h
13 15 @
H h@
1 h2 h3 h4 h5 h7 h8 h9 h10 h11 h12 h14 h16

Z
a
 H
6 
Z 
aH Z
a
13  H
a
1 
Z H
15 a11 a14 a12 a16 a10 a2 a3 a4 a5 a7 a8 a9

Figure 6.9: Step 6

@
h@ H
h
6 H H
h
13 15 @
H h@
1 h2 h3 h4 h5 h7 h8 h9 h10 h11 h12 h14 h16

Z H
a
6 
aZ
 H Z H
a
1 
aZ
13  H
15 a2 a11 a14 a12 a16 a10 a3 a4 a5 a7 a8 a9

Figure 6.10: Step 7

@
h@ H
h
6 H H
h
13 15 @
H h@
1 h3 h2 h4 h5 h7 h8 h9 h10 h11 h12 h14 h16

Z
a
 H
6 
Z 
aH Z
a
13  H
a
1 
Z 15 a3 a2 a11 a14 a12 a16 a10 a4 a5 a7 a8 a9
H

Figure 6.11: Step 8

@
h@ H
6 
hH H
13 
15 @
hH 1 @
h@ h@
3 h2 h4 h5 h7 h8 h9 h10 h11 h12 h14 h16

Z
a
 H
6 
Z 
aH Z
a
13  H
a
1 
Z H Z
a
15 Z
3 a2 a11 a14 a12 a16 a10 a4 a5 a7 a8 a9

Figure 6.12: Step 9


6.4. You request my house—I get your turn algorithm 107

@
h@ H
h
6 H H
h
13 15 @
H 1 @
h@ h@
3 h4 h2 h5 h7 h8 h9 h10 h11 h12 h14 h16

Z
a
 H
6 
Z 
aH Z
a
13  H
a
1 
Z H Z3 a4 a2 a11 a14 a12 a16 a10 a5 a7 a8 a9
a
15 Z

Figure 6.13: Step 10

@
h@ H
h
6 H H
h
13 15 @
H 1 @
h@ 3 @
h@ 2 @
h@ h@
4 h5 h7 h8 h9 h10 h11 h12 h14 h16

Z
a
 H
6 
Z 
aH Z
a
13  H
a
1 
Z H Z
a
15 Z Z
a
3 Z Z2 a11 a14 a12 a16 a10 a5 a7 a8 a9
a
4 Z

Figure 6.14: Step 11

@
h@ H
6 
hH H
13 
15 @
hH 1 @
h@ 3 @
h@ 2 @
h@ H
4 
h@ 
hH
16 h5 h7 h8 h9 h10 h11 h12 h14

Z
a
 H
a
6 
Z H Z
13  H
1 
aZ 
aH Z
aZ
15  Z
aZ
3  Z H
2 
aZ
4  
aH
11 a14 a12 a16 a10 a5 a7 a8 a9

Figure 6.15: Step 12

@
h@ H
h
6 H H
h
13 15 @
H 1 @
h@ 3 @
h@ 2 @
h@ H
h
4 
h@ H
16 h8 h5 h7 h9 h10 h11 h12 h14

Z
a
 H
a
6 
Z H Z
a
13  H
a
1 
Z H Z
a
15 Z Z
a
3 Z Z
a
4  H
a
2 
Z 11 a8 a14 a12 a16 a10 a5 a7 a9
H

Figure 6.16: Step 13

@
h@ H
h
6 H H
h
13 15 @
H 1 @
h@ 3 @
h@ 2 @
h@ H
h
4 
h@ H H
h
16 12 @
H h@
8 h5 h7 h9 h10 h11 h14

Z
a
 H
6 
Z 
aH Z
a
13  H
a
1 
Z H Z
a
15 Z Z
a
3 Z Z
a
4  H
2 
Z 
aH Z
a
11  H
8 
Z 
14 a12 a16 a10 a5 a7 a9
aH

Figure 6.17: Step 14


6.4. You request my house—I get your turn algorithm 108

@
h@ H
h
6 H H
h
13 15 @
H 1 @
h@ 3 @
h@ 2 @
h@ H
h
4 
h@ H H
h
16 12 @
H H
h
8 
h@ H
14 h5 h7 h9 h10 h11

Z
a
 H
a
6 
Z H Z
a
13  H
a
1 
Z H Z
a
15 Z Z
a
3 Z Z
a
4  H
a
2 
Z H Z
a
11  H
a
8 
Z H H
a
14 H
12 a16 a10 a5 a7 a9

Figure 6.18: Step 15

@
h@ H
h
6 H H
h
13 15 @
H 1 @
h@ 3 @
h@ 2 @
h@ H
h
4 
h@ H H
h
16 12 @
H H
h
8 
h@ H
14 h5 h7 h9 h10 h11

Z
 H
a
6 
aZ H Z H
a
1 
aZ
13  H Z
aZ
15  Z
aZ
3  Z H
a
2 
aZ
4  H Z H
a
8 
aZ
11  H H
a
14 H
12 a5 a16 a10 a7 a9

Figure 6.19: Step 16

@
h@ H
6 
hH H
13 
15 @
hH 1 @
h@ 3 @
h@ 2 @
h@ H
4 
h@ 
hH H
16 
12 @
hH H
8 
h@ 
hH
14 h9 h5 h7 h10 h11

Z
a
 H
a
6 
Z H Z H
1 
aZ
13  
aH Z
aZ
15  Z
aZ
3  Z H
2 
aZ
4  
aH Z H
8 
aZ
11  
aH H
14 
12 a9 a5 a16 a10 a7
aH

Figure 6.20: Step 17

@
h@ H
h
6 H H
h
13 15 @
H 1 @
h@ 3 @
h@ 2 @
h@ H
h
4 
h@ H H
h
16 12 @
H H
h
8 
h@ H H
h
14 11 @
H 9 @
h@ h@
5 h7 h10

Z
a
 H
6 
Z 
aH Z
a
13  H
a
1 
Z H Z
a
15 Z Z
a
3 Z Z
a
4  H
2 
Z 
aH Z
a
11  H
8 
Z 
aH H
14 
aH Z
a
12 Z Z
a
9  H
5 
Z 
aH
16 a10 a7

Figure 6.21: Step 18

@ H
h
6 
h@ H H
h
13 15 @
H 1 @
h@ 3 @
h@ 2 @
h@ H
h
4 
h@ H H
h
16 12 @
H H
h
8 
h@ H H
h
14 11 @
H 9 @
h@ h@
5 h7 h10

Z
a
 H
a
6 
Z H Z
13  H
a
1 
aZ H Z
aZ
15  Z
aZ
3  Z H
a
2 
aZ
4  H Z H
a
8 
aZ
11  H H
a
14 H Z
aZ
12  Z H
a
5 
aZ
9  16 a7 a10
H

Figure 6.22: Step 19


6.5. Axiomatic characterization of YRMH-IGYT 109

@ H
h
6 
h@ H H
h
13 15 @
H 1 @
h@ 3 @
h@ 2 @
h@ H
h
4 
h@ H H
h
16 12 @
H H
h
8 
h@ H H
h
14 11 @
H 9 @
h@ 5 @
h@ h@
7 h10

Z
 H
a
6 
aZ H Z
13  H
a
1 
aZ H Z
aZ
15  Z
aZ
3  Z H
a
2 
aZ
4  H Z H
a
8 
aZ
11  H H
a
14 H Z
aZ
12  Z H
a
5 
aZ
9  H Z7 a10

aZ
16 

Figure 6.23: Step 20

The outcome of the algorithm is


[ ]
a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16
.
h15 h4 h3 h2 h9 h6 h7 h12 h11 h10 h16 h14 h13 h8 h1 h5

 6.38 Theorem (Theorem 3 in Abdulkadiroğlu and Sönmez (1999)): For a given ordering f , the YRMH-IGYT algorithm
yields the same outcome as the top trading cycles algorithm.

Proof. For any set B of agents and set G of houses remaining in the algorithm, YRMH-IGYT algorithm assigns the
next series of houses in one of two possible ways.

• Case 1: There is a sequence of agents a1 , a2 , . . . , ak (which may consist of a single agent) where agent a1 has
the highest priority in B and demands house of a2 , agent a2 demands house of a3 , …, agent ak−1 demands
house of ak , and ak demands an available house h. At this point agent ak is assigned house h, the next agent
ak−1 is assigned house hk (which just became available), …, and finally agent a1 is assigned house h2 . Note
that the ordered list (h, a1 , h2 , a2 , . . . , hk , ak ) is a (top trading) cycle for the pair (B, G).
• Case 2: There is a loop (a1 , a2 , . . . , ak ) of agents. When that happens agent a1 is assigned the house of a2 ,
agent a2 is assigned house of a3 , …, agent ak is assigned house of a1 . In this case (h1 , a1 , h2 , a2 , . . . , hk , ak )
is a (top trading) cycle for the pair (B, G).

Hence the YRMH-IGYT algorithm locates a cycle and implements the associated trades for any sets of remaining
agents and houses.

6.5 Axiomatic characterization of YRMH-IGYT

6.39 Let σ : H → H be a permutation for vacant houses. That is, σ is a bijection such that σ(h) = h for any h ∈
HO ∪ {h0 }.
Given a preference profile ≻, let ≻σ be a preference profile where σ is a permutation for vacant houses. That is,
g ≻σa h if and only if σ −1 (g) ≻a σ −1 (h).

 6.40 Definition: A mechanism is weakly neutral if labeling of vacant houses has no effect on the outcome of the mech-
anism.
Formally, a mechanism φ is weakly neutral if for any house allocation problem with existing tenants and any per-
mutation for vacant houses, we have
( )
φ[≻σ ](a) = σ φ[≻](a) for any a ∈ A.
6.6. Random house allocation with existing tenants 110

6.41 For any problem Γ = ⟨AE , AN , HO , HV , ≻⟩, any A′ ⊆ A, any H ′ ⊆ H, and any matching µ, the reduced problem
of Γ with respect to A′ and H ′ under µ is

µ ′ ′ ′ ′
rA ′ ,H ′ [Γ] = ⟨AE , AN , HO , HV , (≻a |H ′ )a∈A′ ⟩

( ) ( )
when µ(A\A′ )∪(H\H ′ ) ∩{ha }a∈A′E = ∅, where A′E = A′ ∩AE , A′N = A′ ∩AN , HO ′
= H ′ \µ(A\A′ ) ∩HO ,
( )
HV′ = H ′ \ µ(A \ A′ ) ∩ HV , and ≻a |H ′ is the restriction of agent i’s preference to the remaining houses.

 6.42 Definition: A mechanism φ is consistent if for any problem Γ = ⟨AE , AN , HO , HV , ≻⟩, any A′ ⊆ A, any H ′ ⊆ H,
and any matching µ, one has [ ]
φ[Γ](a) = φ rA′ ,H ′ (Γ) (a) for each a ∈ A′ .
φ[Γ]

 6.43 Theorem (Theorem 1 in Sönmez and Ünver (2010)): A mechanism is Pareto efficient, individually rational, strategy-
proof, weakly neutral, and consistent if and only if it is a YRMH-IGYT mechanism.

Proof. Omitted.

6.6 Random house allocation with existing tenants

6.44 Here we assume that |AE | = n and |AN | = |HV | = m.

6.45 Let M∗ = {µ ∈ M | µ(a) = ha for all a ∈ AE } be the set of matchings which assign each existing tenant her


current house.
Core from random endowments, φcre , is defined as

1 ∑
φcre = TTCµ .
m! ∗µ∈M

6.46 Let F ∗ = {f is an ordering of agents | f −1 (a) < f −1 (a′ ) for all a ∈ AN and a′ ∈ AE }.
Define a new mechanism as follows
1 ∑
ψ= TTCf .
n!m! ∗ f ∈F

6.47 Theorem (Theorem 1 in Sönmez and Ünver (2005)): φcre and ψ are equivalent.

Proof. Omitted.

6.48 The TTC induced by initial endowments is equivalent to an extreme case of TTC induced by orderings where
newcomers are randomly ordered first and existing tenants are randomly ordered next.
∑ ∑
6.49 Question: Let F be the set of all orderings. Are 1
(m+n)! f ∈F TTCf and 1
n!m! f ∈F ∗ TTCf equivalent?
Chapter 7
Hierarchical exchange rule

Pápai (2000), Pycia and Ünver (2015)

111
112
Chapter 8
Random assignment mechanism

Contents
8.1 Random assignment problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
8.2 Random priority mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
8.3 Simultaneous eating algorithm and probabilistic serial mechanism . . . . . . . . . . . . . . . . . . . 116
8.4 Efficiency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
8.4.1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
8.4.2 Ordinal efficiency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
8.4.3 Efficiency of RP and PS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
8.5 Fairness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
8.5.1 Anonymity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
8.5.2 Envy-freeness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
8.5.3 Equal treatment of equals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.6 Incentive compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.7 RP vs PS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
8.8 Impossibility results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.9 Large markets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.10 Implementing random assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

8.1 Random assignment problem

 8.1 A random assignment problem, denoted by Γ = ⟨N, O, ≻⟩, consists of

• N = {1, 2, . . . , n} is a finite set of agents,


• O = {o1 , o2 , . . . , on } is a finite set of indivisible objects, where |N | = |O| = n, and
• ≻= (≻i )i∈N , where ≻i is agent i’s strict preference. We write a ≿i b if and only if a ≻i b or a = b.

 8.2 A deterministic assignment (or simply assignment) is a one-to-one mapping from N to O; it will be uniquely
represented as a permutation matrix X = (Xio ) (an n × n matrix with entries 0 or 1 and exactly one non-zero
entry per row and one per column).

113
8.1. Random assignment problem 114

We identify rows with agents and columns with objects.



1, if agent i receives object o under the assignment X;
Xio =
0, if agent i does not receive object o under the assignment X.

Let D denote the set of deterministic assignments.


An example for deterministic assignment:
 
1 0 0 0
 
0 0 1 0
X=
0
.
 1 0 0
0 0 0 1

Here agent 1 gets object 1, agent 2 gets object 3, agent 3 gets object 2, and agent 4 gets object 4.

 8.3 A random assignment is a bistochastic matrix P = (Pio )i∈N,o∈O (a matrix with non-negative entries, with each
row and column summing to 1). The value Pio describes the probability that the agent i receives the object o.
Let R denote the set of random assignments.
An example for random assignment:  
5 1 5 1
 12 12 12 12

 12
5 1 5 1 
P =  12 12 12 
.
1 5 1 5 
 12 12 12 12 
1 5 1 5
12 12 12 12

5 1 5
Here agent 1 gets object 1 with probability 12 , object 2 with probability 12 , object 3 with probability 12 , and object
1
4 with probability 12 .

8.4 For each agent, a lottery of objects1 is a probability distribution over the set of objects.
Since there are n objects, a lottery can be written as a n-dimensional vector such that the j-th component is the
probability that agent receives the j-th object.
For each random assignment P , the i-th row Pi is clearly an agent i’s lottery of objects.

 8.5 A random assignment mechanism is a procedure the assigns a random assignment P for each random assignment
problem ⟨N, O, ≻⟩.

8.6 A von Neumann-Morgenstern utility function2 ui is a real-valued mapping from O to R.


We extend the domain of ui to the set of lotteries as follows. Agent i’s expected utility for the lottery Pi is

ui (Pi ) = Pio · ui (o) = Pi · ui ,
o∈O

( )
where ui = ui (o1 ), ui (o2 ), · · · , ui (on ) .
1 In expected utility theory, a lottery is a discrete distribution of probability on a set of states of nature. The elements of a lottery correspond to

the probabilities that each of the states of nature will occur.


2 In decision theory, the von Neumann-Morgenstern utility theorem shows that, under certain axioms of rational behavior (completeness, tran-

sitivity, continuity, and independence), a decision-maker faced with risky (probabilistic) outcomes of different choices will behave as if he is max-
imizing the expected value of some function defined over the potential outcomes at some specified point in the future. This function is known as
the von Neumann-Morgenstern utility function. The theorem is the basis for expected utility theory.
8.2. Random priority mechanism 115

We say that ui is consistent/compatible with ≻i when ui (a) > ui (b) if and only if a ≻i b.3
Example: There are three objects {a, b, c} and agent 1’s preference is a ≻ b ≻ c. Then (1, 31 , 0) and (1, 23 , 0) are
two consistent utility functions.

8.2 Random priority mechanism


8.7 An ordering f : {1, 2, . . . , n} → N is a one-to-one and onto function.
Let F be the set of orderings. Given an ordering f and a preference profile ≻, the corresponding simple serial
dictatorship assignment is denoted by SDf [≻], defined as usual.

8.8 Random priority (or random serial dictatorship):

Step 1: Draw each orderings of the agents with equal probability.


Step 2: Run simple serial dictatorship according to the selected ordering.

Mathematically, random priority is defined as

1 ∑ f
RP = SD .
n!
f ∈F

8.9 Core from random endowments:

Step 1: Draw each initial assignment with equal probability.


Step 2: Run TTC according to the selected initial assignment.

Mathematically, core from random endowments is defined as

1 ∑
φcre = TTCµ .
n!
µ∈M

8.10 Theorem (Theorem 2 in Abdulkadiroğlu and Sönmez (1998)): Random priority and core from random endowments
are equivalent.

8.11 Example: There are four agents {1, 2, 3, 4} and four objects {a, b, c, d}. The preferences are as follows:

1 and 2 3 and 4
a b
b a
c d
d c

Table 8.1

The matching produced by RP is  


5 1 5 1
 12 12 12 12

 12
5 1 5 1 
P =  12 12 12 
.
1 5 1 5 
 12 12 12 12 
1 5 1 5
12 12 12 12
3 In economics, an ordinal utility function is a function representing the preferences of an agent on an ordinal scale. The ordinal utility theory

claims that it is only meaningful to ask which option is better than the other, but it is meaningless to ask how much better it is or how good it is. All
of the theory of agent decision-making under conditions of certainty can be, and typically is, expressed in terms of ordinal utility.
8.3. Simultaneous eating algorithm and probabilistic serial mechanism 116

8.12 The summary of RP:

• Easy to implement and widely used in practice.


• Ex post efficient (but not ex ante efficient or ordinally efficient).
• Fair (equal treatment of equals).
• Strategy-proof.

8.13 Other related mechanisms: Pathak and Sethuraman (2011).

8.3 Simultaneous eating algorithm and probabilistic serial mechanism

8.14 Let ωi : [0, 1] → R+ be agent i’s eating speed function, that is, ωi (t) is the speed at which agent i is allowed to eat
at time t.
The speed ωi (t) is non-negative and the total amount that agent i will eat between t = 0 and t = 1 (the end time
of the algorithm) is one:
∫ 1
ωi (t) dt = 1.
0

Let W denote the set of eating speed functions:


{ ∫ }
1
W = ωi : [0, 1] → R+ ωi is measurable and ωi (t) dt = 1 .
0

8.15 Simultaneous eating algorithm. Given the profile of eating speeds ω = (ωi )i∈N and the preference profile ≻, the
algorithm lets each agent i eat her best available good at the pre-specified speeds.
For each o ∈ O′ ⊆ O, let N (o, O′ ) = {i ∈ N | o ≻i b for all b ∈ O′ , b ̸= o}—the set of agents who are eating o.


Given the profile of eating speeds ω = (ωi )i∈N and the preference profile ≻, the outcome of simultaneous eating
algorithm is defined by the following recursive procedure.

Step 0: Let t0 = 0, O0 = O, P 0 = 0 (the n × n matrix of zeros).


Step k: Suppose that t0 , O0 , P 0 , …, tk−1 , Ok−1 , P k−1 are already defined.
• For each o ∈ Ok−1 , define
  
  ∑ ∫ t ∑ 


min t ωi (s) ds + P k−1
= 1 , if N (o, Ok−1 ) ̸= ∅,
tk (o) =  tk−1
io



i∈N (o,O k−1 ) i∈N

+∞, if N (o, Ok−1 ) = ∅.

Each agent in N (o, Ok−1 ) will eat the object o immediately after time instant t = tk−1 , and tk (o) specifies
the time instant when the object o will be eaten away given that no new agent enters.
• Define
tk = min tk (o).
o∈O k−1

From tk−1 onwards, once an object is eaten away, then this time instant is denoted as tk . Note that, at
the time instant tk , there could be more than one objects which are eaten away.
8.3. Simultaneous eating algorithm and probabilistic serial mechanism 117

• Define
Ok = Ok−1 \ {o | tk (o) = tk }.

The set {o | tk (o) = tk } is exactly the set of objects which are eaten away at time instant tk , and the set
Ok denotes the set of objects which remain after tk .
• Define P k = (Pio
k
):

 ∫ tk


k
k−1
Pio + ωi (s) ds, if i ∈ N (o, Ok−1 ),
Pio = tk−1


Pio
k−1
, otherwise.

Between tk−1 and tk , if agent i eats object o (no matter whether o is eaten away at time instant tk ), then
∫ tk
she will obtain a quantity tk−1 ωi (s) ds of object o.
∫1
The relation 0 ωi (s) ds ≤ 1 guarantees that Pio k
≤ 1.

O0 = O O1 Ok−1 Ok Ok+1
O \O
0 1
O \O
k k−1
O k+1
\O k

t0 = 0 t1 tk−1 tk tk+1

Figure 8.1

8.16 By the construction, Ok ⫋ Ok−1 for each k, On = ∅, and P n = P n+1 = · · · .


The matrix P n is the random assignment corresponding to the profile of eating speed functions ω = (ωi )i∈N and
the preference profile ≻: Pω [≻] = P n .

8.17 The probabilistic serial mechanism PS: Simultaneous eating algorithm with uniform eating speeds ωi (t) = 1 for
all i ∈ N , all t ∈ [0, 1].

8.18 Example: There are four agents {1, 2, 3, 4} and four objects {a, b, c, d}. The preferences are as follows:

1 and 2 3 and 4
a b
b a
c d
d c

Table 8.2

The process of PS is illustrated below


8.3. Simultaneous eating algorithm and probabilistic serial mechanism 118

1 a c

2 a c

3 b d

4 b d

Time
t0 = 0 t1 = 1
2
t2 = 1

Thus, PS produces the matching  


1 1
0 0
 21 2

2 0 1
0
Q=  2 .
1 1
0 2 0 2
1 1
0 2 0 2

8.19 Example: There are four agents {1, 2, 3, 4} and four objects {a, b, c, d}. The preferences are as follows:

1 2 3 4
a a b a
c b a b
b c d c
d d c d

Table 8.3

The process of PS is illustrated below

1 a c d

2 a b c d

3 b d

4 a b c d

Time
t0 = 0 t1 = 1
3 t2 = 5
9 t3 = 22
27
t4 = 1

Thus, PS produces the matching  


1 13 5
0
 31 27 27

2 2 7 5 
Q=  9 27 27 
.
5 4 
0 9 0 9 
1 2 7 5
3 9 27 27

8.20 Summary of PS:


8.4. Efficiency 119

• Easy to implement.
• Ordinally efficient (not ex ante efficient).
• Fair (envy-free, equal treatment of equals).
• Not strategy-proof.

8.4 Efficiency

8.4.1 Basics

 8.21 Given a preference profile ≻, a deterministic assignment X Pareto dominates another deterministic assignment Y
at ≻ if
Xi ≿i Yi for all i ∈ N and Xi0 ≻i0 Yi0 for some i0 ∈ N ,

where Xi denotes the object agent i receives under X.


A deterministic assignment X is Pareto efficient at ≻ if there is no deterministic assignment that Pareto dominates
it at ≻.

 8.22 Given a preference profile ≻ and a profile of von Neumann-Morgenstern utilities u.

• A random assignment P is ex ante efficient at u, if P is Pareto optimal in R at u. That is, there is no random
assignment Q such that

Qi · ui ≥ Pi · ui for all i ∈ N and Qi0 · ui0 > Pi0 · ui0 for some i0 ∈ N .

• A random assignment P is ex post efficient at ≻, if it is a convex combination of Pareto efficient deterministic


assignments (at ≻). That is, it takes the form

P = αγ · Xγ ,
γ∈Γ

where {αγ }γ∈Γ is a convex system of weights and each Xγ is a Pareto efficient deterministic assignment at
≻.

By Theorem 5.9, P is ex post efficient at ≻ if and only if it takes the form



P = αf · SDf [≻] for some convex system of weights αf ,
f ∈F

where SDf is the simple serial dictatorship induced by the ordering f .

8.23 Example: There are four agents {1, 2, 3, 4} and four objects {a, b, c, d}. The preferences are as follows:

1 and 2 3 and 4
a b
b a
c d
d c

Table 8.4
8.4. Efficiency 120

     
1 1
0 0 1 0 0 0 0 0 1 0
 21 2
    
2 0 1
0 0 0 1  
0 1 1 0 0 0
The random assignment Q =   2  is ex post efficient since Q = 1  +2  ,
1 0 1
0
1
2 0 2
2
 0 0 0 0 0 1
1 1
0 0 0 0 0 1 0 1 0 0
   2 2
1 0 0 0 0 0 1 0
   
0 0 1 0 1 0 0 0
where  
0 1 0 0 and 0
  are Pareto efficient at ≻.
   0 0 1

0 0 0 1 0 1 0 0

8.24 Question: In the example above,



(i) is it possible that Q has a form γ∈Γ αγ · Xγ such that {αγ }γ∈Γ is a convex system of weights and some Xγ
is not a Pareto efficient deterministic assignment at ≻?
 
5 1 5 1
 12 12 12 12

 12
5 1 5 1 
(ii) is the random assignment P = 
1
12
5
12
1
12 
5 
ex post efficient?
 12 12 12 12 
1 5 1 5
12 12 12 12

8.4.2 Ordinal efficiency

 8.25 Given agent i’s preference ≻i , a lottery Pi first-order stochastically dominates another lottery Qi with respect to
≻i , denoted by Pi ≿sd
i Qi , if ∑ ∑
Pik ≥ Qik for all j.
k : ok ≿i oj k : ok ≿i oj

That is, Pi first-order stochastically dominates Qi if and only if

• the probability of receiving the favorite object is at least as much in Pi as in Qi , and in general,
• for any j, the probability of receiving one of top j favorite objects is at least as much in Pi as in Qi .

8.26 Proposition: Pi first-order stochastically dominates Qi with respect to ≻i if and only if ui · Pi ≥ ui · Qi for any
( )
von Neumann-Morgenstern utility function ui consistent with ≻i . Here ui = ui (o1 ), ui (o2 ), . . . , ui (on ) .
Moreover, Pi ̸= Qi implies that the corresponding inequality is strict.

Proof. “⇒”: Suppose that Pi first-order stochastically dominates Qi with respect to ≻i .

(1) Without loss of generality, we assume that o1 ≻i o2 ≻i · · · ≻i on .


(2) Then we have

j ∑
j
Pik ≥ Qik for all j = 1, 2, . . . , n.
k=1 k=1

(3) For any von Neumann-Morgenstern utility function ui which is consistent with ≻i , we have ui (oj )−ui (oj+1 ) ≥
0 for all j = 1, . . . , n − 1, and hence


n
ui · Pi = ui (ok )Pik
k=1

n ∑
n−1 ∑
n−2
= ui (on ) Pik + [ui (on−1 ) − ui (on )] Pik + [ui (on−2 ) − ui (on−1 )] Pik + · · ·
k=1 k=1 k=1
8.4. Efficiency 121


j ∑
1
+ [ui (oj ) − ui (oj+1 )] Pik + · · · + [ui (o1 ) − ui (o2 )] Pik
k=1 k=1

n ∑
n−1 ∑
1
≥ ui (on ) Qik + [ui (on−1 ) − ui (on )] Qik + · · · + [ui (o1 ) − ui (o2 )] Qik
k=1 k=1 k=1

= ui · Qi

“⇐”: Suppose that ui · Pi ≥ ui · Qi for any von Neumann-Morgenstern utility function ui consistent with ≻i .

(1) Without loss of generality, we assume o1 ≻i o2 ≻i · · · ≻i on . Then it suffices to show that


j ∑
j
Pik ≥ Qik for all j = 1, 2, . . . , n.
k=1 k=1

∑ℓ ∑ℓ
(2) Assume that 1 ≤ ℓ ≤ n is the first number such that k=1 Pik < k=1 Qik .
(3) Take ε > 0 and construct a von Neumann-Morgenstern utility function ui such that


< ε, if j ̸= ℓ
0 < ui (oj ) − ui (oj+1 ) .

> ∑ℓ n−1
ε if j = ℓ
k=1 (Qik −Pik )

(4) Therefore, we have


∑∑
j
ui · Pi − ui · Qi < ε · [Pik − Qik ] − (n − 1)ε < 0,
j̸=ℓ k=1

which contradicts the hypothesis.

 8.27 Given a preference profile ≻, a random assignment P ordinally dominates (or stochastically dominates) another
random assignment Q at ≻ if P ̸= Q and for each agent i, the lottery Pi first-order stochastically dominates the
lottery Qi with respect to ≻i , where Pi is the i-th row of the matrix P which represents the lottery allocation of
agent i.
The random assignment P is ordinally efficient at ≻ if it is not ordinally dominated at ≻ by any other random
assignment.
In environments where only ordinal preferences can be used, ordinal efficiency is a natural efficiency concept.

8.28 Given a preference profile ≻ and a random assignment P , we define a binary relation τ (P, ≻) on O as follows:

aτ (P, ≻)b ⇔ there exists i ∈ N such that a ≻i b and Pib > 0.

8.29 Proposition (Lemma 3 in Bogomolnaia and Moulin (2001)): The random assignment P is ordinally efficient at
profile ≻ if and only if the relation τ (P, ≻) is acyclic.

Proof. “⇒”: Suppose that P is ordinally efficient.

(1) Assume that the relation τ (P, ≻), denoted τ for simplicity, has a cycle:

oK τ oK−1 τ · · · τ o2 τ o1 = oK .
8.4. Efficiency 122

(2) Without loss of generality, we assume that the objects ok , k = 1, 2, . . . , K − 1 are all different.
(3) By definition of τ , we can construct a sequence i1 , i2 , . . . , iK−1 in N such that:

Pik ok > 0 and ok+1 ≻ik ok for all k = 1, 2, . . . , K − 1.

(4) Choose δ > 0 such that


δ ≤ Pik ok for all k = 1, 2, . . . , K − 1.

(5) Define a matrix ∆ = (δio ) as follows:




 = −δ, for k = 1, 2, . . . , K − 1,
 δ
 ik ok
δik ok+1 = δ, for k = 1, 2, . . . , K − 1,



0, otherwise.

(6) Define a matrix Q = P + ∆.


(7) By construction, Q is a bistochastic matrix and hence a random assignment.
(8) Moreover, Q stochastically dominates P , because one goes from Pik to Qik by shifting some probability from
object ok to the preferred object ok+1 .

“⇐”: Suppose that the relation τ (P, ≻) is acyclic.

(1) Assume that P is stochastically dominated at ≻ by Q.


(2) Let i1 be an agent such that Pi1 ̸= Qi1 .
(3) Since Qi1 first-order stochastically dominates Pi1 , there exist two objects o1 and o2 such that

o2 ≻i1 o1 , Pi1 o1 > Qi1 o1 ≥ 0, and Pi1 o2 < Qi1 o2 .

(4) In particular, o2 τ (P, ≻)o1 .


(5) By feasibility of Q, there exists an agent i2 such that Pi2 o2 > Qi2 o2 ≥ 0.
(6) Since P is stochastically dominated at ≻ by Q, there exists o3 , such that

o3 ≻i2 o2 and Pi2 o3 < Qi2 o3 .

(7) Hence, o3 τ o2 , and so on, until by finiteness of N and O we find a cycle of the relation τ .

 8.30 Proposition (Lemma 2 in Bogomolnaia and Moulin (2001)): Given a random assignment P , a preference profile
≻, and a profile u of von Neumann-Morgenstern utilities consistent with ≻.

(i) If P is ex ante efficient at u, then it is ordinally efficient at ≻; the converse statement holds for n = 2 but fail
for n ≥ 3.
(ii) If P is ordinally efficient at ≻, then it is ex post efficient at ≻; the converse statement holds for n ≤ 3 but fail
for n ≥ 4.

8.31 Proof of Proposition 8.30, Statement (i). Part 1: Suppose that P is ex ante efficient at u. We want to show that P is
ordinally efficient at ≻.
8.4. Efficiency 123

(1) Suppose that P is not ordinally efficient at ≻.


(2) Then there exists another random assignment Q which ordinally dominates P at ≻.
(3) Then by Proposition 8.26, we have ui · Qi ≥ ui · Pi for all i.
(4) Moreover, Pi ̸= Qi for some i, and hence the corresponding inequality is strict so that P is ex ante Pareto
inferior to Q.

Part 2: Suppose that n = 2 and P is ordinally efficient at ≻. We want to show that P is ex ante efficient at u.
( )
x 1−x
(1) Suppose that P = is not ex ante efficient at u.
1−x x
( )
y 1−y
(2) Then there exists Q = such that ui · Pi ≤ ui · Qi for all i and ui0 · Pi0 < ui0 · Qi0 for some
1−y y
i0 .
(3) By simple calculation, we have

(u11 − u12 )(x − y) ≤ 0, (u22 − u21 )(x − y) ≤ 0.

(4) Case 1: agent 1(prefers


) o1 to o2 . Then u11 > u12 , x < y, and u22 > u21 . In this case, P is stochastically
1 0
dominated by . It is a contradiction.
0 1
(5) Case 2: agent 1(prefers
) o2 to o1 . Then u11 < u12 , x > y, and u22 < u21 . In this case, P is stochastically
0 1
dominated by . It is a contradiction.
1 0

Part 3: Suppose that n ≥ 3. We want to show that in some particular case P is ordinally efficient at ≻, but is not ex
ante efficient at u.

(1) Consider the following example: there are three agents {1, 2, 3}, three objects {a, b, c}, unanimous ordinal
preferences a ≻i b ≻i c, and the consistent von Neumann-Morgenstern utilities:
 

 if x = a 
 if x = a


1, 

1,
u1 (x) = 0.8, if x = b , u2 (x) = u3 (x) = 0.2, if x = b .

 


0, 
0,
if x = c if x = c

(2) It is clear that the random assignment P = (Pik ) is not ex ante efficient, where Pik = 13 . P leads to a utility
profile (0.6, 0.4, 0.4), and the random assignment Q = (Qik ) yields to a utility profile (0.8, 0.5, 0.5), where
Q1b = 1, Q2a = Q2c = Q3a = Q3c = 12 .
(3) Claim: Every random assignment here is ordinally efficient.
(4) Suppose that a random assignment R is not ordinally efficient, and is stochastically dominated by R′ .
∑ ∑
(5) Then R ̸= R′ , and k : ok ≿i oj Rik

≥ k : ok ≿i oj Rik for all i and j.
(6) Then,
∑ ∑ ∑ ∑

Rik ≥ Rik for all j.
i k : ok ≿i oj i k : ok ≿i oj
8.4. Efficiency 124

(7) Since three agents have the same ordinal preference, we have
∑ ∑ ∑ ∑ ∑ ∑ ∑ ∑ ∑
′ ′
Rik = Rik = 1= Rik = Rik for all j,
i k : ok ≿i oj k : ok ≿i oj i k : ok ≿i oj k : ok ≿i oj i i k : ok ≿i oj

which leads to a contradiction.

8.32 Proof of Proposition 8.30, Statement (ii).


Part 1: If P is ordinally efficient at ≻, then it is ex post efficient at ≻.

(1) Suppose that P is not ex post efficient at ≻.


(2) Consider a decomposition of P as a convex combination of deterministic assignments:

P = p(X) · X.
X

(3) Then there is an element X that is Pareto inferior at ≻ and such that p(X) > 0.
(4) Let Y be a deterministic assignment Pareto superior to X.
(5) Upon replacing X by Y in the summation, we obtain a random assignment that stochastically dominates P
(note that the stochastic dominance is preserved by convex combinations).

Part 2: When n ≤ 3, if P is ex post efficient at ≻, then it is ordinally efficient at ≻. (Question. Hint: Consider
different preference profiles and check the corresponding ex post efficient assignments)
Part 3: When n ≥ 4, P may not be ordinally efficient at ≻, if it is ex post efficient at ≻.

(1) Consider the following example: there are four agents {1, 2, 3, 4}, four objects {a, b, c, d}. The preferences
are as follows:

1 and 2 3 and 4
a b
b a
c d
d c

Table 8.5

(2) Consider the following two random assignments


   
5 1 5 1 1 1
0 0
 12 12 12 12
  21 2

 12
5 1 5 1  2 0 1
0
P =  12 12 12 
and Q =   2 .
1 5 1 5  1 1
 12 12 12 12  0 2 0 2
1 5 1 5 1 1
12 12 12 12 0 2 0 2

1 5
(3) Every agent gets her first choice with probability 2 under Q, and first choice with 12 and second choice with
1
12 under P .
1 5
Every agent gets her third choice with probability 2 under Q, and third choice with 12 and fourth choice with
1
12 under P .
Therefore, P is stochastically dominated by Q, and hence not ordinally efficient.
8.4. Efficiency 125


(4) It is straightforward to check that P = 1
f ∈F n! SDf [≻], so P is ex post efficient.

8.33 Proposition (Theorem 1 in McLennan (2002)): If P is ordinally efficient at ≻, then there is a profile u of von
Neumann-Morgenstern utilities which is consistent with ≻, such that P is ex ante efficient at u.

8.4.3 Efficiency of RP and PS

8.34 Recall Theorem 5.9 (Lemma 1 in Abdulkadiroğlu and Sönmez (1998)): Simple serial dictatorship is Pareto efficient.
Thus, RP is ex post efficient.

8.35 RP is not ordinally efficient or ex ante efficient: See the example in the proof of Proposition 8.30, Statement (ii),
Part 3.

 8.36 Theorem (Theorem 1 in Bogomolnaia and Moulin (2001)): Fix a preference profile ≻.

(i) For every profile of eating speed functions ω = (ωi )i∈N , the random assignment Pω [≻] is ordinally efficient.
(ii) Conversely, for every ordinally efficient random assignment P at ≻, there exists a profile ω = (ωi )i∈N such
that P = Pω [≻].

8.37 Intuition: At each instant, everyone is eating her favorite available object. If agent i likes a better than b but eats b,
then a was already eaten away.

8.38 Proof of Theorem 8.36, Statement (i).

(1) Assume that for some ω, Pω [≻] is not ordinally efficient.


(2) By Proposition 8.29, we can find a cycle in the relation τ :

o0 τ o1 τ · · · τ ok−1 τ ok τ · · · τ oK τ o0 .

(3) For each k, let ik be an agent such that

ok−1 ≻ik ok and Pik ok > 0.

(4) Let tk be the first time instant in simultaneous eating algorithm when the agent ik starts to acquire good ok ,
i.e., the least t for which Pitk ok ̸= 0.
(5) For agent ik , since ok−1 ≻ik ok , at instant tk , the object ok−1 has already been fully distributed, i.e., ok−1 ∈
/
k
Ot .
(6) Thus tk−1 < tk for all k = 1, 2, . . . , K + 1, which is a contradiction since o0 = oK+1 .

8.39 Proof of Theorem 8.36, Statement (ii).

(1) Let P be an ordinally efficient assignment.


(2) Let
Ō0 = O and B 1 = {o ∈ Ō0 |̸ ∃b ∈ Ō0 such that bτ o},

that is, B 1 is the set of maximal elements of Ō0 under τ .


8.4. Efficiency 126

(3) For each k ≥ 1, let

Ōk = Ōk−1 \ B k and B k+1 = {o ∈ Ōk |̸ ∃b ∈ Ōk such that bτ o}.

It is clear that this sequence will stop in finite steps. Suppose that this sequence stops at Step K, for which
ŌK = ∅ and B K = ŌK−1 .
Note that {B 1 , B 2 , . . . , B K } forms a partition of O.
(4) For all k = 1, 2, . . . , K, when k−1
K ≤t≤ k
K,

K · P , if o ∈ B k and i ∈ N (o, Ōk−1 ),
io
ωi (t) ≜
0, otherwise.

We will check that P is the result of the simultaneous eating algorithm with eating speeds ω and that Ō0 , Ō1 , . . . , ŌK
coincide with O0 , O! , . . . , OK from this algorithm.
(5) Claim: For each k = 1, 2, . . . , K, and for any o and o′ in B k , if Pio > 0, then Pio′ = 0. Assume that Pio′ > 0.
Without loss of generality, assume that o ≻i o′ . Then oτ o′ , which contradicts the fact that o′ ∈ B k .
k−1 k
This claim guarantees that each agent eats at most one object between K and K.

(6) Claim: For each k = 1, 2, . . . , K, if o ∈ B k and Pio > 0, then i ∈ N (o, Ōk−1 ). Assume that i ∈
/
N (o, Ōk−1 ). Then there exists o′ ∈ Ōk−1 such that o′ ≻i o. Thus, o′ τ o and o ∈
/ B k , which leads to a
contradiction.
This claim guarantees that agent i with Pio > 0 will eat object o ∈ B k between k−1
K and k
K.
k−1 k
(7) Therefore, from K to K, only objects in the set B k will be eaten in the simultaneous eating algorithm.

Ō0 Ō1 Ō2 Ōk−2 Ōk−1 Ōk


B1 B2 B k−1 Bk
0 1 2 k−2 k−1 k

Figure 8.2

(8) From 0 to 1
K, for each object o ∈ B 1 ,
• every agent i with Pio > 0 will eat object o with the speed K · Pio , and
• every agent i with Pio = 0 will not eat object o.

At the instant 1
K, every object o in B 1 will be eaten away since i K · Pio · 1
K = 1.
1
(9) Hence, t1 = K, O1 = Ō1 , and P 1 is as follows:

P , if o ∈ B 1 ,
1 io
Pio =
0, if o ̸∈ B 1 .

(10) We proceed by induction. Suppose that



k−1 P , if o ∈ B 1 ∪ B 2 ∪ · · · ∪ B k−1 ,
k−1 io
tk−1 = , Ok−1 = Ōk−1 , and Pio =
K 0, otherwise.

(11) For any o ∈ Ōk−1 , we have o ̸∈ B 1 ∪ B 2 ∪ · · · ∪ B k−1 , and hence Pio


k−1
= 0.
8.5. Fairness 127

(12) Therefore, we have

∑ ∫ t ∑
k−1
ωi (s) ds + Pio
k−1
i∈N (o,Ō k−1 ) K i∈N
| {z }
=0
 ∫

 ∑ t ∑

 K · Pio ds = [Kt − (k − 1)] · Pio = Kt − (k − 1), if o ∈ B k ,

 k−1
i∈N (o,Ō k−1 ) K i∈N (o,Ō k−1 )
= | {z }




=1

0, if o ̸∈ B k .

(13) So, 
k, if o ∈ B k ,
K
tk (o) =
+∞, otherwise.

k
(14) Thus, tk = K, Ok = Ōk , and

P , if o ∈ B 1 ∪ B 2 ∪ · · · ∪ B k ,
k io
Pio =
0, otherwise.

8.5 Fairness

8.5.1 Anonymity

8.40 A mechanism φ is anonymous if the mapping ≻7→ φ[≻] is symmetric from the n preferences to the n assignments.

8.41 Remark: In view of Theorem 8.36, the PS assignment is the simplest fair (anonymous) selection from the set of
ordinally efficient assignments at a given preference profile.
The following result shows that whenever we use a simultaneous eating algorithm to construct an anonymous as-
signment rule, we must end up with the PS mechanism.

8.42 Proposition (Lemma 4 in Bogomolnaia and Moulin (2001)): Fix at profile of eating speeds ω. Let φ be the mecha-
nism derived from ω at all profiles. φ is anonymous if and only if it coincides with PS.

8.43 Proof. We only prove “only if ” direction.

(1) Let φ be mechanism derived from ω. Suppose that φ is anonymous.


(2) We fix a preference profile ≻, and let P = φ[≻].
(3) The partial assignment obtained under PS at any moment t ∈ [0, 1] is anonymous, so under ≻= (≻i ) or
its permutations, objects o1 , o2 , . . . , ok , . . . , on are eaten away in the same order and at the same instants
0 = x0 < x1 ≤ x2 ≤ · · · ≤ xk ≤ · · · ≤ xn = 1.
(4) Under PS, an agent can change the good she eats only at one of the instants xk , and the set of agents who eat
a given good can only expand with time.
(5) Let N (ok ) be the set of agents who eat good ok in [xk−1 , xk ]. If |N (ok )| = 1, then ok is entirely assigned to
one agent and xk = 1 = xn . Thus, |N (ok )| ≥ 2 whenever xk < xn .
8.5. Fairness 128

(6) Claim: Suppose there exists instants 0 = y0 < y1 ≤ y2 ≤ · · · ≤ yk ≤ · · · ≤ yn = 1 such that at yk all agents
∫y
get under φ exactly the xk fraction of their unit share of goods, i.e., 0 k ωi (t) dt = xk for all i and k. Then φ
coincides with PS.
(i) Suppose that assignments are the same at x1 , . . . , xk−1 under PS and at y1 , . . . , yk−1 under φ.
(ii) Under PS during [xk−1 , xk ] each agent eats her best among the objects still available ok , . . . , on , and the
fraction xk − xk−1 eaten by everyone will not exhaust any object before xk .
(iii) Since xk − xk−1 is exactly the fraction each agent eats during the interval [yk−1 , yk ] under φ, the set
of objects which are eat during [xk−1 , xk ] under PS is the same as that during [yk−1 , yk ] under φ, and
hence they will end up at yk with the same partial assignment as at xk under PS.
(7) In the following, we will check that such y1 , y2 , . . . , yn exist.
(8) Define
{ ∫ } { ∫ }
t t
t̄i (k) = max t ωi (s) ds ≥ xk , ti (k) = min t ωi (s) ds ≥ xk
0 0

t̄(k) = min t̄i (k), t(k) = max ti (k),


i

that is, [ti (k), t̄i (k)] is the largest interval during which the total fraction of objects eaten by an agent i stays
equal to xk .
(9) Proceed by induction on k. Suppose that under φ all agents are able to eat exactly the fractions x1 , . . . , xk−1
by the instants y1 , . . . , yk−1 respectively. If t(k) ≤ t̄(k) then choose any yk ∈ [t(k), t̄(k)].
(10) In the following, we will show that t(k) > t̄(k) is impossible by contradiction.
(11) Since |N (ok )| ≥ 2 whenever xk < xn , we focus on the case such that |N (ok )| ≥ 2.
(12) Consider the permutations ≻1 and ≻2 of ≻, such that agents 1 and 2 are in N (ok ),

t̄(k) = t̄1 (k) and t(k) = t2 (k) under ≻1 ,

and ≻2 is obtained from ≻1 by exchanging agents 1 and 2.

t1 (k) t̄1 (k) t2 (k) t̄2 (k)

t̄(k) t(k)

Figure 8.3

(13) We have

∑ ∫ t̄(k)
ωi (s) ds at t̄(k) < t(k) = t2 (k), agent 2 is still eating ok
i∈N (ok ) yk−1

< |N (ok )| · (xk − xk−1 ) amount of ok left after yk−1


∑ ∫ t(k)
< ωi (s) ds at t(k) > t1 (k), agent 1 starts to eat another object
i∈N (ok ) yk−1

(14) For any object oj with j > k, we have

∑ ∫ t̄(k)
ωi (s) ds ≤ |N (oj )| · (xk − xk−1 ) ≤ amount of oj left after yk−1 .
i∈N (oj ) yk−1
8.5. Fairness 129

Moreover, the equality is possible only if xj = xk .


(15) Thus under ≻1 and ≻2 , no object among ok , . . . , on is eaten away before t̄(k), and ok will be exhausted at
( )
some instants s1 and s2 respectively, where s1 , s2 ∈ t̄(k), t(k) .
( )
(16) For any s ∈ t̄(k), t(k) ,
• under ≻1 , the fraction of objects agent 1 gets by time s is larger than xk , while the fraction of objects
agent 2 gets by the time s is smaller than xk , and
• under ≻2 , the fraction of objects agent 2 gets by time s is larger than xk , while the fraction of objects
agent 1 gets by the time s is smaller than xk .
(17) By induction hypothesis, all agents get exactly the same partial assignment at xk−1 under PS and at yk−1
under φ.
(18) As a result,
• agent 1 will get more and agent 2 less than xk of objects under ≻1 , and
• agent 2 will get more and agent 1 less than xk of objects under ≻2 .
This contradicts the anonymity of φ.

8.5.2 Envy-freeness

8.44 A random assignment P is envy-free at a profile ≻ if Pi ≿sd


i Pj for all i, j ∈ N .

A random assignment P is weakly envy-free at a profile ≻ if for all i, j ∈ N ,

Pj ≿sd
i Pi ⇒ Pi = Pj .

8.45 Proposition (Proposition 1 in Bogomolnaia and Moulin (2001)): For any preference profile ≻,

(i) the assignment PS[≻] is envy-free;


(ii) the assignment RP[≻] is weakly envy-free;
(iii) the assignment RP[≻] is envy-free for n = 2;
(iv) the assignment RP[≻] may not be envy-free for n ≥ 3.

8.46 Intuition: At each instant, everyone is eating her favorite available object. So everyone has chance to eat a better
(from her viewpoint) object than anyone else, so at the end, no one envies assignment someone else.

8.47 Proof of 8.45, Statement (i). (1) Fix a preference profile ≻ and an agent i, and label the objects in such a way that

o1 ≻i o2 ≻i · · · ≻i on .

Let P = PS[≻].
(2) It suffices to show

t ∑
t
Piok ≥ Pjok for all j ∈ N and t = 1, 2, . . . , n.
k=1 k=1

(3) Keep in mind that ωi (t) = 1 for all i ∈ N and t ∈ [0, 1].
8.5. Fairness 130

(4) Let k1 be the step at which o1 is fully allocated, namely

a ∈ Ok1 −1 \ Ok1 .

(i) Because o1 is top-ranked in i’s preference list, we have i ∈ N (o1 , Ok ) for all k ≤ k1 − 1.
(ii) Since from t = 0 to t = tk1 , agent i eats object o1 , we have

k1
Pio1
= tk1 ≥ Pjo
k1
1
for all j ∈ N .

(iii) Since o1 is fully allocated at instant k1 , we have

k1
Pio1 = Pio1
≥ Pjo
k1
1
= Pjo1 for all j ∈ N .

(5) Let k2 be the step at which {a, b} is fully allocated, that is,

{a, b} ∩ Ok2 −1 =
̸ ∅, and {a, b} ∩ Ok2 = ∅.

(i) Note that k1 ≤ k2 , and that i ∈ N (o1 , Ok ) ∪ N (o2 , Ok ) for all k ≤ k2 − 1.


(ii) Hence we have

k2
Pio1 + Pio2 = Pio 1
k2
+ Pio 2
= tk2 ≥ Pjo
k2
1
k2
+ Pjo 2
= Pjo1 + Pjo2 for all j ∈ N.

(6) Repeating this argument we find that Pi first-order stochastically dominates Pj at ≻i , as desired.

8.48 Proof of 8.45, Statement (ii). (1) Let ≻ be a preference profile at which P2 ≻sd
1 P1 , we will show that P2 = P1 ,
where P = RP.
(2) Label the objects as follows
o 1 ≻1 o 2 ≻1 · · · ≻1 o n .

(3) For any ordering f where 1 precedes 2, let f¯ be the ordering obtained from f by permuting 1 and 2. Clearly
{ }
{f, f¯} | f ∈ F forms a partition of F.
(4) Since ≻ is fixed, we omit it in φ[≻].
(5) Consider o1 :
¯
(i) If 2 gets o1 in φf , so does 1 in φf .
In φf , 2 can not get o1 since 1 would get o1 before 2 anyway.

1 2
 
φf o1 Z
oZ

 1

 ↖ 
 
¯
φf o1 ? o1

¯
φf +φf
(ii) Therefore in the random assignment Q = (Qio ) ≜ 2 , we have Q2o1 ≤ Q1o1 .
(iii) Since P = RP is a convex combination of such assignments, P2o1 ≤ P1o1 .
(iv) From assumption P2 ≻sd P1 , we have Q2o = Q1o for all pairs f and f¯, and hence for such pair
1 1 1
8.5. Fairness 131

¯
• either 1 gets o1 in φf and 2 gets o1 in φf ,

1 2
( )
φf o1 Z
oZ1
¯ (8.1)
φf Z

o

Z 1 o 1

¯
• or none of 1, 2 gets o1 in any of φf or φf .

1 2
( )
f
φ Z
oZ
1 Z
oZ
1
¯ (8.2)
φf Z
o
Z
1 Z
o
Z
1

(6) Consider o2 :
¯
(i) If 2 gets o2 in φf , then by Equation (8.2), 1 can not get o1 in φf , and hence 1 gets o2 in φf .

1 2
 
f
φ o2
 
 ↖ 
 
¯
φf o2

(ii) If 2 gets o2 in φf , then 1 gets o1 in φf since in φf 1 precedes 2.


¯
By Equation (8.1), 2 gets o1 in φf .
¯
In φf , 2 gets o2 , so in φf , when 2 has already got o1 , 1 should get o2 .

1 2
 
φ f
o1 ← o2
 
 ↘ 
 
¯
φf o2 ← o1

(iii) Therefore Q2o2 ≤ Q1o2 in Q, and hence P2o2 ≤ P1o2 .


(iv) By the assumption P2o1 + P2o2 ≥ P1o1 + P1o2 and the fact P2o1 = P1o1 , we have P2o2 = P1o2 and
Q2o = Q1o for all pairs f and f¯.
2 2

(v) Therefore, for any pair f and f¯, the allocations of o1 , o2 , O \ {o1 , o2 } are “symmetric” between f and f¯,
¯
that is, if φf has 1 → x and 2 → y where x and y are o1 , o2 or O \ {o1 , o2 }, then φf has 1 → y and
2 → x. Here x is O \ {o1 , o2 } means that x is some element of O \ {o1 , o2 }.
(7) We proceed by induction. Let P1oi = P2oi for all i = 1, 2, . . . , k − 1. Suppose also that for any x, y ∈
{ }
o1 , o2 , . . . , ok−1 , O \ {o1 , o2 , . . . , ok−1 } , whenever 1 receives x and 2 receives y in φf , 1 receives y and 2
¯
receives x in φf .
¯
(8) If 2 gets ok in φf , then by induction hypothesis 1 gets an object from O \ {o1 , o2 , . . . , ok−1 } in φf . Since ok
is the best for her in this set and it is available, 1 gets ok in φf .

1 2
 
f
φ ok
 
 ↖ 
 
¯
φf ok
8.5. Fairness 132

¯
(9) If 2 gets ok in φf , then 1 gets oℓ with ℓ < k in φf . Then by induction hypothesis, 2 gets oℓ in φf . Hence ok
¯
is available for 1 in φf . But by induction hypothesis, 1 has to get some object from O \ {o1 , o2 , . . . , ok−1 } in
¯
φf , so she gets ok .
1 2
 
φf oℓ ← ok
 
 ↘ 
 
¯
φf ok ← oℓ

(10) It follows that Q2ok ≤ Q1ok , and hence P2ok ≤ P1ok .


∑k ∑k
(11) Since i=1 P2oi ≥ i=1 P1oi by assumption and P1oi = P2oi (i = 1, 2, . . . , k − 1) by the induction
hypothesis, we deduce as above P2ok = P1ok .

8.49 Proof of 8.45, Statement (iii). Consider the case where |N | = |O| = 2.

(1) If agents’ top choices are difference, then RP = PS.


(2) If agents’ top choices are same, then it is easy to show that RP = PS.
(3) Therefore, RP is envy-free in this case.

8.50 Proof of 8.45, Statement (iv). (1) Consider the example with three agents 1, 2, 3 and three objects a, b, c, and the
preferences are as follows:

1 2 3
a a b
b c a
c b c

Table 8.6

(2) It is clear that  


1 1 1
2 6 3
RP = RP[≻] = 1 0 1
2 2
5 1
0 6 6

(3) Consider the following consistent von Neumann-Morgenstern utility u1 (a) = 10, u1 (b) = 9 and u1 (c) = 0,
then we have

5 1 1 1 1
u1 · RP3 = u1 (b) + u1 (c) = 7.5 > 6.5 = u1 (a) + u1 (b) + u1 (c) = u1 · RP1 .
6 6 2 6 3

That is, in the RP assignment, agent 1 envy the allocation of agent 3.


(4) By Proposition 8.26, RP1 ≻sd
1 RP3 does not hold. Hence, RP is not envy-free.
8.6. Incentive compatibility 133

8.5.3 Equal treatment of equals

8.51 Definition: A mechanism φ : ≻7→ φ[≻] has the property “equal treatment of equals” if

≻i =≻j ⇒ φi [≻] = φj [≻].

8.52 Proposition: PS and RP have the property “equal treatment of equals.”

8.6 Incentive compatibility

8.53 Definition: A mechanism φ is strategy-proof if for each random assignment problem ⟨N, O ≻⟩, for each i ∈ N ,
and for each ≻′i , we have

φi [≻] ≻sd
i φi [≻−i , ≻i ].

8.54 Definition: A mechanism φ is weakly strategy-proof if for each random assignment problem ⟨N, O ≻⟩, for each
i ∈ N , and for each ≻′i , we have

φi [≻−i , ≻′i ] ≻sd ′


i φi [≻] ⇒ φi [≻−i , ≻i ] = φi [≻].

8.55 Proposition (Proposition 1 in Bogomolnaia and Moulin (2001)):

(i) RP is strategy-proof;
(ii) PS is weakly strategy-proof;
(iii) PS is strategy-proof for n = 2;
(iv) PS is not strategy-proof for n ≥ 3.

8.56 Proof of Proposition 8.55, Statement (i). For any ordering f , the priority mechanism ≻7→ φf [≻] is obviously strategy-
proof. This property is preserved by convex combinations.

8.57 Proof of Proposition 8.55, Statement (ii). (1) Let N (o, t) be the (possibly empty) set of agents who eat object o at
time t. Thus, if t is such that ts−1 ≤ t < ts for some k = 1, 2, . . . , n, then

O(o, Ok−1 ), if o ∈ Ok−1 ,
N (o, t) =
∅, if o ̸∈ Ok−1 .

(2) Let n(o, t) = |N (o, t)|, and


t(o) = sup{t | n(o, t) ≥ 1},

that is, t(o) is the time at which o is eaten away.


(3) Note that n(o, t) is non-decreasing in t on [0, t(o)), because once agent i joins N (o, t), she keeps eating object
o until its exhaustion.
(4) Moreover,
∫ t(o)
n(o, t) dt = 1,
0

because one unit of object o is allocated during the entire algorithm.


(5) Fix ≻, and agent denoted as agent 1, and a misreport ≻∗1 by this agent.
8.6. Incentive compatibility 134

(6) Let P = PS[≻] and P ∗ = PS[≻−1 , ≻∗1 ], and similarly N (o, t), N ∗ (o, t), and so on.
(7) Label the objects so that a ≻1 b ≻1 c ≻ · · · .
(8) Assume P1∗ ≻sd ∗
1 P1 and show P1 = P1 .

(9) If P1a = 1, it is trivial that P1∗ = P1 . So we assume P1a < 1 from now on.
(10) At profile ≻, agent 1 is eating o during the whole interval [0, t(a)), and hence t(a) = P1a .
(11) At profile ≻∗ , agent 1 eats o on a subset of [0, t∗ (a)), and hence t(a) = P1a ≤ P1a

≤ t∗ (a).
(12) Claim: for all t ∈ [0, t(a)) and all agents i ̸= 1, we have

i ∈ N (a, t) ⇒ i ∈ N ∗ (a, t).

(13) Thus we have N (a, t) \ {1} ⊆ N ∗ (a, t) \ {1}, and hence


∫ t(a) ∫ t(a)
|N (a, t) \ {1}| dt + P1a = n(a, t) dt = 1
0 0
∫ t∗ (a) ∫ t∗ (a)

= n (a, t) dt = |N ∗ (a, t) \ {1}| dt + P1a

.
0 0

(14) Therefore, t(a) = t∗ (a) and N (a, t) = N ∗ (a, t) for all t ∈ [0, t(a))

(15) Thus, P1a = P1a and the PS algorithms under ≻ and ≻∗ coincide on the interval [0, t(a)).
(16) It should be clear that the above argument can be repeated: the assumption P1∗ ≻sd ∗
1 P1 gives P1b ≥ P1b
and we show successively t(b) ≥ t∗ (b), then N (b, t) \ {1} ⊆ N ∗ b, t \ {1} on the interval [0, t(b)), implying
t(b) = t∗ (b) and so on.

8.58 Proof of Claim.

y→j a→i
14[≻] :
t(z) t(y) t(x) t(a)
z ≻j y x ≻i a

z→j x→i
14[≻∗ ] :
t∗ (z) t∗ (y) t∗ (x)
t′ t

Figure 8.4

(1) Suppose there is an agent i ̸= 1 and a time t ∈ [0, t(a)) such that

i ∈ N (a, t) and i ∈ N ∗ (x, t) for some object x ̸= a.

(2) Under ≻∗ , since t < t(a) ≤ t∗ (a), the object a is available, and hence x ≻∗i a.
(3) Since ≻∗i =≻i , we have x has been eaten away at t under ≻, and hence t(x) ≤ t < t∗ (x).
(4) Let B be the set of objects x such that x ̸= a and t(x) < t∗ (x). By the argument above, B ̸= ∅.
(5) Take y ∈ B, such that t(y) is minimal. Note that t(y) ≤ t(x) ≤ t < t(a).
8.6. Incentive compatibility 135

(6) Since t(y) < t∗ (y), we have at some time t′ < t(y), there is an agent j such that

j ∈ N (y, t) and j ̸∈ N ∗ (j, t).

Otherwise, N (y, t) ⊆ N ∗ (y, t) for some t ∈ [0, t(y)). Combined with


∫ t(y) ∫ t∗ (y)
n(y, t) dt = 1 = n∗ (y, t) dt,
0 0

and the fact that n∗ (y, t) is non-decreasing in t, we have t(y) = t∗ (y), which contradicts the definition of B:
t(y) < t∗ (y).
(7) Since t′ < t(y) < t(a) and agent 1 eats a over the whole interval [0, t(a)) under ≻, we have agent j can not
be agent 1.
(8) Let z be the object that agent j eats at t′ under ≻∗ : j ∈ N ∗ (z, t′ ).
(9) Since t′ < t(y) < t∗ (y), y is available at t′ under ≻∗ , and hence z ≻j y.
(10) Since j eats y at t′ under ≻ and ≻∗j =≻j , z is no longer available at t′ under ≻. Hence t(z) ≤ t′ < t∗ (z).
(11) Since t(z) ≤ t′ < t(y) ≤ t(x) < t(a), we have z = a, and hence z ∈ B, which contradicts the definition of
y.

8.59 Proof of Proposition 8.55, Statement (iv). There are three goods {a, b, c}, three agents {1, 2, 3}. The preference pro-
file is as follows:

1 2 3
a a b
b c a
c b c

The process of PS is illustrated below

1 a b c

2 a c

3 b c

Time
t0 = 0 t1 = 1
2 t2 = 3
4
t3 = 1

Thus, PS produces the matching  


1 1 1
2 4 4
P = 1 0 1 .
2 2
3 1
0 4 4

However, if agent 3 misreports her preference as a ≻′3 b ≻′3 c, then the process of PS is illustrated below
8.7. RP vs PS 136

1 a b c

2 a c

3 a b c

Time
t0 = 0 t1 = 1
3 t2 = 5
6
t3 = 1

Thus, PS produces the matching  


1 1 1
3 3 3
Q= 2 0 1 .
3 3
1 1 1
3 2 6

Agent 3 may be better off: Consider the following consistent von Neumann-Morgenstern utility u3 = (9, 10, 0).
Then P3 · u3 = 15
2 < 8 = Q3 · u3 .
By Proposition 8.26, P3 ≿sd
3 Q3 does not hold. Hence, PS is not strategy-proof.

8.60 Question: Is there a random assignment problem such that the assignment of some agent i0 under the true prefer-
ence profile is first-order stochastically dominated by the assignment under the misreported preference profile?

8.7 RP vs PS

8.61 Comparison of RP and PS:

RP PS
Ex ante efficiency × Question

Ordinal efficiency ×
√ √
Ex post efficiency

Envy-freeness ×
√ √
Weak envy-freeness √ √
Equal treatment of equals

Strategy-proofness √ ×

Weak strategy-proofness

Table 8.7

8.62 Proposition (Proposition 2 in Bogomolnaia and Moulin (2001)):

• Fix n = 3. RP is characterized by the combination of three axioms: ordinal efficiency, equal treatment of
equals, and strategy-proofness.
• PS is characterized by the combination of three axioms: ordinal efficiency, envy-freeness, and weak strategy-
proofness.

8.63 Theorem (Theorem 1 in Kesten (2009)):


8.8. Impossibility results 137

8.8 Impossibility results

8.64 Theorem (Zhou (1990)): Incompatibility of ex ante efficiency, equal treatment of equals, and strategy-proofness.

8.65 Theorem (Theorem 2 in Bogomolnaia and Moulin (2001)): Fix n ≥ 4. Then there is no mechanism meeting the
following three requirements: ordinal efficiency, equal treatment of equals, and strategy-proofness.

8.66 Theorem (Proposition 1 in Erdil (2014)): If a strategy-proof mechanism is non-wasteful, then it is not (FSD) dom-
inated by any other strategy-proof mechanism.

8.67 Theorem (Theorem 1 in Martini (2016)): Let there be n ≥ 4 agents and m ≥ 3 objects. Then there is no mechanism
that is strategy-proof, non-wasteful and satisfies equal treatment of equals.

8.9 Large markets

8.68 Kojima and Manea (2010) show that for any given utility functions of the agents, when there are sufficiently many
copies of each object, PS will be strategy-proof.

8.69 Che and Kojima (2010) show that PS and RP are asymptotically equivalent, as the size of the market increases.

8.70 Manipulations have two effects: (1) given the same set of available objects, reporting false preferences may prevent
the agent from eating his most preferred available object; (2) reporting false preferences can affect expiration dates
of each good. (1) always hurts the manipulating agent, while (2) can benefit the agent.
Intuitively, the effect (2) becomes small as the market becomes large.

8.10 Implementing random assignments

 8.71 A lottery assignment is a probability distribution p over the set of deterministic assignments, where p(X) denotes
the probability of the deterministic assignment X.
An example for lottery assignment:
       
1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
       

5 0 0 1 0 
1 0 0 0 1 1 0 0 0 
1 0 1 0 0
p = 12 ⊕ ⊕ 5  ⊕ 12 .
0 0 12 
0 12 0 0 1 0 0
 1 0  1 0 0   0   0 1 
0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0

8.72 Relationship between random assignments and lottery assignments.


We associate to each lottery assignment p a random assignment P is the following way:

P = p(X) · X.
X∈D

On the other hand, by the classical Birkhoff-von Neumann theorem (see Pulleyblank (1995), page 187–188), any
bistochastic matrix can be written (not necessarily uniquely) as a convex combination of permutation matrices.
Henceforth, we identify lottery assignments with the corresponding random assignments and use these terms in-
terchangeably.
8.10. Implementing random assignments 138

8.73 Lemma: Let P be a bistochastic matrix that is not a permutation matrix. Then it can be written as a convex com-
bination of two bistochastic matrices,
P = λP 1 + (1 − λ)P 2 ,

where P 1 and P 2 has the following properties:


1 2
(i) If Pio is an integer, then Pio and Pio are integers.
(ii) P 1 and P 2 has at least one more integer entry than P .

Proof. See Hylland and Zeckhauser (1979).

8.74 The equivalence implies that any random assignment is induced by a lottery assignment. Thus, any random assign-
ment can be implemented.
Part III

School choice

139
140
Chapter 9
Introduction to school choice

Contents
9.1 The former model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
9.2 Boston school choice mechanism (immediate acceptance mechanism) . . . . . . . . . . . . . . . . . 145
9.3 Deferred acceptance algorithm and student-optimal stable mechanism . . . . . . . . . . . . . . . . 147
9.4 Top trading cycles mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
9.5 Case study: Chinese college admissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

9.1 The former model

 9.1 A school choice problem is a five-tuple ⟨I, S, q, P, ≿⟩, where

• I = {i1 , i2 , . . . , in } is a finite set of students,


• S = {s1 , s2 , . . . , sm } is a finite set of schools,
• q ≜ (qs )s∈S is a quota profiles for schools where qs ∈ Z+ is the quota of school s,
• P ≜ (Pi )i∈I is a strong preference profile for students where Pi is a strict preference relation over S ∪ {∅},
denoting the strict preference relation of student i,
• ≿≜ (≿s )s∈S is a weak priority profile for schools where ≿s is a weak priority relation over I ∪ {∅}, denoting
the weak priority of school s.

Here ∅ represents remaining unmatched.


For each i ∈ I, let Ri be the symmetric extension of Pi , that is, sRi s′ if and only if sPi s′ or s = s′ .

9.2 In school choice problem, the priorities of schools are exogenous, that is, students are strategic agents but schools
are simply objects to be consumed. So a school choice problem can be regarded as a one-sided matching problem.
It is one difference between the school choice problem and the college admission problem.
If each school has a strong priority relation ≻s , then it is clear that a school choice problem naturally associates
with an isomorphic college admission problem by letting each school s’s preference relation be its priority relation
≻s .

141
9.1. The former model 142

It is an important issue that the priority of each school is weak. However, we will only consider the strict priorities
in this chapter unless otherwise mentioned.

 9.3 In a school choice problem ⟨I, S, q, P, ≿⟩, a matching is a function µ : I → S ∪ {∅} such that for each school
s ∈ S, |µ−1 (s)| ≤ qs .
Let M denote the set of all the matchings.

 9.4 A mechanism is a systematic procedure that determines a matching for each school choice problem.

9.5 In school choice problem, we allow only students to report preferences, and schools’ priorities are exogenously
given and publicly known.1
Thus, when I, S, q, and ≻ are given, a mechanism φ≻ , or simply φ, becomes a function

φ : P |I| → M,

where P is the set of all the possible preferences for students.

9.6 Typical goals of school authorities are:

• efficient placement,
• fairness of outcomes,
• strategy-proof,
• easy for participants to understand and use, etc.

 9.7 In a school choice problem ⟨I, S, q, P, ≻⟩, a matching µ′ Pareto dominates µ if for all i ∈ I, µ′ (i)Ri µ(i) and for
some i′ ∈ I, µ′ (i)Pi µ(i).
A matching is Pareto efficient if it is not dominated.
A mechanism φ is Pareto efficient if it always selects a Pareto efficient matching for each school choice problem.
Exercise: Compare this definition of Pareto efficient matchings with that in Definitions 2.7. Why is there a differ-
ence?

9.8 A mechanism (Pareto) dominates another mechanism if for every school choice problem, the outcome of the first
weakly dominates that of the latter, with strict dominance for at least one school choice problem.

 9.9 In a school choice problem ⟨I, S, q, P, ≻⟩, a matching µ is individually rational if no student prefers being un-
matched to her assignment.
A mechanism φ is individually rational if it always selects a individually rational matching for each school choice
problem.

 9.10 In a school choice problem ⟨I, S, q, P, ≻⟩, a matching µ is non-wasteful if no student prefers a school with one
or more empty seats to her assignment. That is, µ is non-wasteful if, whenever i prefers s to her assignment µ(i),
|µ−1 (s)| = qs .
A mechanism φ is non-wasteful if it always selects a non-wasteful matching for each school choice problem.

 9.11 We say that student i desires school s at µ if sPi µ(i).


In a school choice problem ⟨I, S, q, P, ≻⟩, a matching µ eliminates justified envy if no student i prefers the assign-
ment of another student j while at the same time having higher priority at school µ(j).
1 In many school districts, schools are not allowed to submit their own preferences; Instead, school priorities are set by law.
9.1. The former model 143

A mechanism φ eliminates justified envy if it always selects a matching that eliminates justified envy for each school
choice problem.

9.12 Lemma (Lemma 2 in Balinski and Sönmez (1999)): Assume that each school has a strict priority relation. A match-
ing is individually rational, non-wasteful, and eliminates justified envy if and only if it is stable for its associated
college admissions problem.

9.13 Remark: In school choice, stability can be understood as a fairness criterion.

9.14 In a school choice problem ⟨I, S, q, P, ≿⟩, a matching µ is constrained efficient if it is stable and is not Pareto
dominated by any other stable matching.

 9.15 A mechanism φ is strategy-proof if no student can benefit from misreporting for each school choice problem, i.e.,
truth-telling is a weakly dominant strategy for all students under the mechanism φ.
Formally, for each ⟨I, S, q, P, ≻⟩, for each i ∈ I, and for each Pi′ , we have

φ[Pi , P−i ](i)Ri φ[Pi′ , P−i ](i).

9.16 A mechanism φ is group strategy-proof if for any ⟨I, S, q, P, ≻⟩, there do not exist J ⊆ I and PJ′ = (Pi′ )i∈J such
that
φ[PJ′ , P−J ](i)Ri φ[P ](i) for all i ∈ J and φ[PJ′ , P−J ](j)Pj φ[P ](j) for some j ∈ J.

 9.17 A mechanism φ is non-bossy if for each ⟨I, S, q, P, ≻⟩, for each i ∈ I, and for each Pi′ ,

φ[P ](i) = φ[Pi′ , P−i ](i) implies φ[P ] = φ[Pi′ , P−i ].

Non-bossiness ensures that students can not be bossy, that is, change the matching for others, by reporting different
preferences, without changing their own.

 9.18 Theorem (Lemma 1 in Pápai (2000)): A mechanism φ is group strategy-proof if and only if it is strategy-proof and
non-bossy.

Proof. It is obvious that group strategy-proofness implies strategy-proofness and non-bossiness. So it suffices to
show the other direction.

(1) Suppose that the mechanism φ is strategy-proof and non-bossy.


(2) Let ⟨I, S, q, P, ≻⟩, J ⊆ I, and PJ′ be such that for all i ∈ J,

φ[PJ′ , P−J ](i)Ri φ[P ](i).

We will show that φ[PJ′ , P−J ] = φ[P ].


(3) Without loss of generality, let J = {1, 2, . . . , k}.
(4) For all i ∈ J, let Pi′′ preserve the order Pi , except, let top-ranked school be φ[PJ′ , P−J ](i).
9.1. The former model 144

φ[PJ′ , P−J ](i) ∅


Pi

Pi′′
φ[PJ′ , P−J ](i) ∅

(5) Strategy-proofness implies that φ[P ](1)R1 φ[P1′′ , P−1 ](1).


• If φ[PJ′ , P−J ](1)P1 φ[P ](1).
(i) Then φ[PJ′ , P−J ](1) ̸∈ o1 (P−1 ), where the student i’s option set at P−i is defined by
{ }
oi (P−i ) ≜ s ∈ S : there exists Pi′′′ such that φ[Pi′′′ , P−i ](i) = s .

Otherwise, φ[P1′′′ , P−1 ](1) = φ[PJ′ , P−J ](1)P1 φ[P ](1) for some P1′′′ , which violates the strategy-
proofness.
(ii) Hence, given P−1 , student 1 can not get φ[PJ′ , P−J ](1).
(iii) That is, the top-ranked object of P1′′ can not be obtained.
(iv) Therefore, by comparing P1 and P1′′ , we have φ[P1′′ , P−1 ](1) = φ[P ](1).
• If φ[PJ′ , P−J ](1) = φ[P ](1).
(i) By definition of P1′′ , φ[P ](1) is student 1’s top-ranked school.
(ii) Therefore φ[P1′′ , P−1 ](1) = φ[P ](1).
(6) By non-bossiness, we have φ[P1′′ , P−1 ] = φ[P ].
(7) Repeating the same argument for students 2, 3, . . . , k, we get φ[PJ′′ , P−J ] = φ[P ]:

φ[P1′′ , P2′′ , P−{1,2} ](2) = φ[P1′′ , P2 , P−{1,2} ](2).

(8) Under the preference Pi′′ , φ[PJ′ , P−J ](i) is student i’s top-ranked school, so no school is ranked above it.
(9) Therefore, for all i ∈ J and s ∈ S, sRi′′ φ[PJ′ , P−J ](i) implies sRi′ φ[PJ′ , P−J ](i).
(10) By strategy-proofness, we have φ[Pi′′ , PJ\{i}

, P−J ](i)Ri′′ φ[Pi′ , PJ\{i}

, P−J ](i), and hence

φ[Pi′′ , PJ\{i}

, P−J ](i)Ri′ φ[Pi′ , PJ\{i}

P−J ](i).

(11) By strategy-proofness again, we have φ[Pi′′ , PJ\{i}



, P−J ](i) = φ[PJ′ , P−J ](i).

(12) By non-bossiness, φ[Pi′′ , PJ\{i} , P−J ] = φ[PJ′ , P−J ].
(13) By the similar argument above, we have φ(PJ′′ , P−J ) = φ(PJ′ , P−J ).
(14) Therefore we have
φ[PJ′ , P−J ] = φ[P ],

which implies that φ is group strategy-proof.

9.19 Remark: Theorem 9.18 is a general result for one-sided matchings.


9.2. Boston school choice mechanism (immediate acceptance mechanism) 145

9.2 Boston school choice mechanism (immediate acceptance mechanism)

9.20 The most commonly used school choice mechanism is that used by the Boston Public School until 2005.
The Boston mechanism attempts to assign as many students as possible to their first choice school, and only after
all such assignments have been made does it consider assignments of students to their second choices, and so on.

9.21 The Boston mechanism.2

Round 1: For each school, a priority ordering is exogenously determined. (In case of Boston, priorities depend on
home address, whether the student has a sibling already attending a school, and a lottery number to break
ties.)
Round 2: Each student submits a preference ranking of the schools.
Round 3: The final round is the student assignment based on preferences and priorities:
Step 1: In Step 1 only the top choices of the students are considered. For each school, consider the students
who have listed it as their top choice and assign seats of the school to these students one at a time following
their priority order until either there are no seats left or there is no student left who has listed it as her top
choice.
Step k: Consider the remaining students. In Step k only the k-th choices of these students are considered.
For each school still with available seats, consider the students who have listed it as their k-th choice and
assign the remaining seats to these students one at a time following their priority order until either there
are no seats left or there is no student left who has listed it as her k-th choice.
End: The algorithm terminates when no more students are assigned. At each step, every assignment is final.

9.22 In Boston, students have priorities at schools set by the school system:

(i) Students who already attend the school,


(ii) Students who live in a walk zone and have their siblings already attending the school,
(iii) Students whose siblings are already attending the school,
(iv) Students who live in a walk zone,
(v) All other students.

Priorities are weak, i.e., there are many students in each priority class: This is going to be important but for now let
us ignore the issue.

9.23 Example: Consider the school choice problem ⟨I, S, q, P, ≻⟩, where I = {i, j, k}, S = {a, b}, qa = qb = 1, and
the preferences and priorities are as follows:

i j k a b
b a a i k
a b j i
k

Table 9.1

The procedure of the Boston mechanism is

2 This name came from the fact that it was in use for school choice in Boston Public Schools before it was replaced by the student-proposing DA.
9.2. Boston school choice mechanism (immediate acceptance mechanism) 146

Step 1 End
a j, kA j
b i i
∅ k k

Table 9.2

Student i is on the list of school b, and students j and k are on the list of schools a where j has higher priority. So i
is assigned to b, j is assigned to a, and k remains unmatched.
The resulting matching is [ ]
i j k
µ= .
b a ∅

9.24 The Boston mechanism is not necessarily stable.


Consider Example 9.23. The matching µ is blocked by the pair (k, b).

9.25 The Boston mechanism is not strategy-proofness.


Consider Example 9.23, if k misreports her preference as Pk′ : b, a, ∅ instead, the Boston mechanism produces the
following matching [ ]
′ i j k
µ = ,
∅ a b

and student k benefits from submitting a false preference.

9.26 As seen in Example 9.23, a student (for example, k) who ranks a school (b) as her second choice loses her priority
to students (i) who rank it as their first choice. Thus, it is risky for the student to use her first choice at a highly
sought-after school if she has relatively low priority there. If she does not receive her first choice, she might drop
far down list.
Besides, the Boston mechanism gives students incentive to misreport their preferences by improving the ranking
of schools in their choice lists for which they have high priority. Chen and Sönmez (2006) found the experimental
evidence on preference manipulation under Boston mechanism.

9.27 Worries in Boston mechanism is real.


St. Petersburg Times (14 September 2003):

Make a realistic, informed selection on the school you list as your first choice. It’s the cleanest shot you
will get at a school, but if you aim too high you might miss. Here’s why: If the random computer selection
rejects your first choice, your chances of getting your second choice school are greatly diminished. That’s
because you then fall in line behind everyone who wanted your second choice school as their first choice.
You can fall even farther back in line as you get bumped down to your third, fourth and fifth choices.

The 2004–2005 BPS School Guide:

For a better choice of your ‘first choice’ school …consider choosing less popular schools.

Advice from the West Zone Parents Group3 meeting (27 October 2003)
3 This group is a well-informed group of approximately 180 members who meet regularly prior to admissions time to discuss Boston school choice

for elementary school, recommends two types of strategies to its members.


9.3. Deferred acceptance algorithm and student-optimal stable mechanism 147

One school choice strategy is to find a school you like that is undersubscribed and put it as a top choice,
OR, find a school that you like that is popular and put it as a first choice and find a school that is less
popular for a “safe” second choice.

9.28 Abdulkadiroğlu et al. (2006) found that of the 15135 students, 19% (2910) listed two over-demanded schools as
their top two choices, and about 27% (782) of these ended up unassigned.

9.29 Since priorities are set by law for Boston schools, Abdulkadiroğlu et al. (2006) recommended not only DA but also
TTC: remember TTC is more efficient than DA.
However, the school system finally chose DA: the story says the idea of “trading priorities” in TTC did not appeal
to policy makers.
For Boston Public School system, the Boston mechanism was replaced by DA in 2006.

9.30 Question: How about the efficiency of the Boston mechanism?

9.3 Deferred acceptance algorithm and student-optimal stable mechanism

9.31 In a school choice problem ⟨I, S, q, P, ≻⟩ with given strict priorities ≻, let DA (or DA≻ in some environments)
denote the student-optimal stable mechanism, which is produced by Gale and Shapley’s student-proposing deferred
acceptance algorithm.

9.32 Theorem: For each school choice problem, DA produces a stable matching, which is also at least as good for every
student as any other stable matching.

Proof. Recall Theorem 3.23 and Corollary 3.26.

The welfare is maximized by student-proposing DA, subject to stability.

9.33 Theorem: DA is strategy-proof.

Proof. Recall Theorem 3.61.

 9.34 Theorem (Theorem 3 in Alcalde and Barberà (1994)): DA is the unique stable and strategy-proof mechanism in
school choice problems.

Proof. We will show that any stable mechanism φ which does not always choose the matching resulting from the
student-proposing DA will be manipulable.

(1) Suppose that φ(̸= DA) is another stable and strategy-proof mechanism in school choice problems.
(2) Thus, there exists a school choice problem ⟨I, S, q, P, ≻⟩ such that φ[P ] ̸= DA[P ].
(3) There will then be some student i ∈ I who is not assigned to her optimal school DA[P ](i).
(4) It is clear that DA[P ](i)Pi φ[P ](i), and hence DA[P ](i) ̸= ∅.
(5) Consider a new preference Pi′ of i: Pi′ keeps the same ranking among schools and sets the schools behind
DA[P ](i) unacceptable.
9.3. Deferred acceptance algorithm and student-optimal stable mechanism 148

DA[P ](i)

Pi

Pi′
DA[P ](i) ∅

(6) Clearly, DA[P ] is stable under [Pi′ , P−i ].


(7) By Theorem 3.30, we know that the set of students remaining unassigned is the same at all stable matchings
for the given preference profile [Pi′ , P−i ].
(8) Since φ[Pi′ , P−i ] is another stable matching under [Pi′ , P−i ], φ[Pi′ , P−i ](i) ̸= ∅.
(9) Thus, we have φ[Pi′ , P−i ](i)Pi′ ∅, and hence φ[Pi′ , P−i ](i)Ri′ DA[P ](i).
(10) Since Pi′ and Pi share the same ranking among schools from the top-ranked school to DA[P ](i), we have
φ[Pi′ , P−i ](i)Ri DA[P ](i).
(11) Since DA[P ](i)Pi φ[P ](i), we have

φ[Pi′ , P−i ](i)Ri DA[P ](i)Pi φ[P ](i),

that is, i can manipulate φ at P via Pi′ . It contradicts the fact that φ is strategy-proof.

9.35 The major drawback of DA is its lack of Pareto efficiency.


Consider the school choice problem ⟨I, S, q, P, ≻⟩, where I = {i, j, k}, S = {a, b}, qa = qb = 1, and the
preferences and priorities are as follows:

i j k a b
b a a i k
a b j i
k

Table 9.3

The procedure of DA is

Step 1 2 3 End
a j, kA j A i
j, i
b i iC , k k k
∅ k i j j

Table 9.4

and the resulting matching is [ ]


i j k
µ= .
a ∅ b

It is clear that µ is Pareto dominated by the matching


[ ]
′ i j k
µ = .
b ∅ a
9.3. Deferred acceptance algorithm and student-optimal stable mechanism 149

The efficiency of DA will be detailedly discussed in Chapter 10.

9.36 Remark: DA is strategy-proof and stable, but not Pareto efficient. Are there mechanisms that improve the efficiency
of students without sacrificing the other two properties?

• Stability will be lost for sure, since DA produces the student-optimal stable matching.
• Strategy-proofness will also be lost, due to the following impossibility result.

 9.37 Theorem (Proposition 1 in Kesten (2010), Theorem 1 in Abdulkadiroğlu et al. (2009), Proposition 1 in Erdil (2014)):
If φ is a strategy-proof and stable mechanism, then there is no strategy-proof mechanism that dominates φ.

Proof. (1) Suppose that there exists a strategy-proof mechanism ψ that dominates φ. Then there exists a school
choice problem ⟨I, S, q, P, ≻⟩ such that ψ[P ](i)Ri φ[P ](i) for all i ∈ I and ψ[P ](j)Pj φ[P ](j) for some
j ∈ I.
(2) Let s = ψ[P ](j). Consider a new preference Pj′ of j: Pj′ : s, ∅.

ψ[P ](j) = s ∅
Pj

Pj′
s ∅

(3) Since φ is strategy-proof, φ[Pj′ , P−j ](j) = ∅; otherwise φ[Pj′ , P−j ](j) = s will lead j to misreport Pj′ when
her true preference is Pj :
φ[Pj′ , P−j ](j) = s = ψ[P ](j)Pj φ[P ](j).

(4) Since φ[Pj′ , P−j ] is Pareto dominated by ψ[Pj′ , P−j ], the same set of students is matched; see Lemma 9.38.
(5) Thus, ψ[Pj′ , P−j ](j) = ∅.
(6) However, under the mechanism ψ, j will have incentive to report Pj when her true preference is Pj′ , when
others have preferences P−j :

ψ[Pj , P−j ](j) = sPj′ ∅ = ψ[Pj′ , P−j ](j).

This violates the strategy-proofness of ψ.

9.38 Lemma (Lemma 1 in Erdil and Ergin (2008) and Claim in Abdulkadiroğlu et al. (2009)): In a school choice problem
⟨I, S, q, P, ≻⟩, suppose that µ is a stable matching4 that is Pareto dominated by a (not necessarily stable) matching
ν. Let I ′ denote the set of students who are strictly better off under ν and let S ′ = µ(I ′ ) be the set of schools to
which students in I ′ are assigned under µ. Then we have:

(i) Students who are not in I ′ have the same match under µ and ν;
(ii) The number of students in I ′ who are assigned to a school s are the same in µ and ν; in particular, S ′ = ν(I ′ );
(iii) Each student in I ′ is assigned to a school in µ and in ν.

Proof. (i) For each i ∈ I \ I ′ , i is indifferent between µ(i) and ν(i). Thus, µ(i) = ν(i).
4 Indeed, we only require that µ is individually rational (for students) and non-wasteful.
9.4. Top trading cycles mechanism 150

(ii) We first show that |I ′ ∩ µ−1 (s)| ≥ |I ′ ∩ ν −1 (s)| for any school s.
(1) Suppose that |I ′ ∩ µ−1 (s)| < |I ′ ∩ ν −1 (s)| for some school s.
(2) Together with (i), this implies that the number of students in I who are assigned to s under µ is less than
the number of students who are assigned to s under ν.
(3) Hence, s must have empty seats under µ.
(4) For any i ∈ I ′ ∩ν −1 (s), s = ν(i)Pi µ(i), that is, i desires s which has empty seats under µ, a contradiction
to the non-wastefulness of µ.
Now suppose the inequality |I ′ ∩ µ−1 (s)| ≥ |I ′ ∩ ν −1 (s)| holds strictly for some school s∗ .
(5) Summing across all schools we have
∑ ∑
|I ′ ∩ µ−1 (s)| > |I ′ ∩ ν −1 (s)|.
s∈S s∈S

(6) Hence, the number of students in I ′ who are assigned to some school under µ is more than the number
of students in I ′ who are assigned to some school in ν.
(7) There exists a student i ∈ I ′ who is assigned to a school under µ, but not under ν.
(8) Since ∅ = ν(i)Pi µ(i), this contradicts the individual rationality of µ.
(iii) (1) From (ii), we have
∑ ∑
|I ′ | ≥ |I ′ ∩ µ−1 (s)| = |I ′ ∩ ν −1 (s)|.
s∈S s∈S

(2) It suffices to show that the inequality above cannot hold strictly.
(3) Suppose for a contradiction that
∑ ∑
|I ′ | > |I ′ ∩ µ−1 (s)| = |I ′ ∩ ν −1 (s)|.
s∈S s∈S

(4) Hence, there exists a student i ∈ I ′ who is unmatched under ν.


(5) Note that i has to be matched under µ; otherwise, she would be indifferent between µ and ν, a contra-
diction to her being in I ′ .
(6) But then ∅ = ν(i)Pi µ(i), a contradiction to the individual rationality of µ.

This result implies that any Pareto improvement upon a stable matching must be through trading cycles.

9.39 Corollary: Given strict school priorities, no Pareto efficient and strategy-proof mechanism dominates DA.

9.40 It has been empirically documented that the efficiency loss of DA can be significant in practice; see Abdulkadiroğlu
et al. (2009). This creates a trade-off between efficiency and strategy-proofness.

9.41 The efficiency improvement of DA will be detailedly discussed in Chapter 11.

9.42 DA was implemented in Boston in 2006 and is in use. Its variation is used in New York City.

9.4 Top trading cycles mechanism



9.43 Top trading cycles mechanism.
9.4. Top trading cycles mechanism 151

Assign a counter for each school which keeps track of how many seats are still available at the school. Initially set
the counters equal to the capacities of the schools.

Step 1: Each student points to her favorite school under her announced preferences. Each school points to the
student who has the highest priority for the school.
Since the number of students and schools are finite, there is at least one cycle. (A cycle is an ordered list of
distinct schools and distinct students (s1 , i1 , s2 , i2 , . . . , sk , ik ) where s1 points to i1 , i1 points to s2 , …, sk
points to ik , ik points to s1 .) Moreover, each school can be part of at most one cycle. Similarly, each student
can be part of at most one cycle. Every student in a cycle is assigned a seat at the school she points to and is
removed.
The counter of each school in a cycle is reduced by one and if it reduces to zero, the school is also removed.
Counters of all other schools stay put.
Step k: Each remaining student points to her favorite school among the remaining schools and each remaining
school points to the student with highest priority among the remaining students.
There is at least one cycle. Every student in a cycle is assigned a seat at the school that she points to and is
removed.
The counter of each school in a cycle is reduced by one and if it reduces to zero the school is also removed.
Counters of all other schools stay put.
End: The algorithm terminates when no more students are assigned. At each step, every assignment is final.

9.44 The intuition for this mechanism is that it starts with students who have the highest priorities, and allows them to
trade the schools for which they have the highest priorities in case a Pareto improvement is possible.

9.45 Theorem (Proposition 3 in Abdulkadiroğlu and Sönmez (2003)): TTC is Pareto efficient.

Proof. Recall Theorem 4.16.

9.46 Theorem (Proposition 4 in Abdulkadiroğlu and Sönmez (2003)): TTC is strategy-proof.

Proof. Recall Theorem 4.27.

9.47 TTC does not completely eliminate justified envy.


Consider the school choice problem ⟨I, S, q, P, ≻⟩, where I = {i, j, k}, S = {a, b}, qa = qb = 1, and

i j k a b
b a a i k
a b j i
k

Table 9.5

The matching produced by TTC is [ ]


i j k
µ= .
b ∅ a

It is clear that k violates j’s priority at school a, since j ≻a k and µ(k) = aPj ∅ = µ(j).

9.48 Remark: Although TTC is Pareto efficient and DA is not, the two are not Pareto ranked in general.
Consider the school choice problem ⟨I, S, q, P, ≻⟩, where I = {i, j, k}, S = {s1 , s2 , s3 }, qs1 = qs2 = qs3 = 1,
and
9.5. Case study: Chinese college admissions 152

i j k s1 s2 s3
s2 s1 s1 i j j
s1 s2 s2 k i i
s3 s3 s3 j k k

Table 9.6

The outcomes of DA and TTC are


[ ] [ ]
DA i j k TTC i j k
µ = and µ = ,
s2 s3 s1 s2 s1 s3

where neither matching Pareto dominates the other one.

9.49 For school choice problems, TTC and DA are two competing mechanisms. However, the school system finally
chose DA: the story says the idea of “trading priorities” in TTC did not appeal to policy makers.

9.50 Question: How to improve the fairness of TTC?


Hint (Hakimov and Kesten (2014)): Consider the school choice problem ⟨I, S, q, P, ≻⟩, where I = {i, j, k}, S =
{a, b}, qa = 1, qb = 2, and the priorities for the schools and the preferences of the students are given as follows

i j k a b
b a a i k
a b b j j
k i

Table 9.7

When we apply TTC to this problem, student i who has the highest a-priority, exchanges one slot at school a in
return for one slot at school b from student k who has the highest b-priority. This allocation is Pareto efficient.
However, the priority of student j for school a is violated by student k, i.e., j has justified envy over k.
TTC gives student k ownership over both slots of school b before student j enters the market. But then student i
has no choice but to trade with student k, which in turn leads to the violation of the priority of student j for school
a. However, had student i traded his right for one slot at school a with student j for his right for one slot at school
b, there would not be any priority violations. Indeed, such a trade would have led to the Pareto efficient and stable
allocation underlined in the above profile.

9.5 Case study: Chinese college admissions

9.51 Main reference: Chen and Kesten (2017).

9.52 To alleviate the problem of high-scoring students not being accepted by any universities, the parallel mechanism
was proposed by Zhenyi Wu ( ). A Chinese parallel mechanism was first implemented in Hunan tier 0 college
admissions in 2001. From 2001 to 2012, variants of the mechanism have been adopted by 28 provinces to replace
Boston mechanisms; Wu and Zhong (2014).

9.53 Chinese parallel mechanism with a parameter e ∈ {1, 2, . . . , ∞},5 denoted by φe :
5 For example, e = 2 for Heilingjiang, e = 3 for Jiangsu, e = 4 for Anhui, e = 5 for Hebei, e = 6 for Hainan, e = 10 for Tibet.
9.5. Case study: Chinese college admissions 153

Round 1: Step 1: Each student applies to his first choice. Each school s considers its applicants. Those students
with the highest s-priority are tentatively assigned to school s up to its quota. The rest are rejected.
Step k: Each rejected student, who is yet to apply to his e-th choice school, applies to his next choice. If a
student has been rejected from all his first e choices, then he remains unassigned in this round and does
not make any applications until the next round.
Each school s considers its applicants. Those students with highest s-priority are tentatively assigned to
school s up to its quota. The rest of the applicants are rejected.
End: The round terminates whenever each student is either assigned to a school or is unassigned in this round,
i.e., he has been rejected by all his first e choice schools. At this point, all tentative assignments become
final and the quota of each school is reduced by the number of students permanently assigned to it.
( )
Round t: Step 1: Each unassigned student from the previous round applies to his (t − 1)e + 1 -st choice school.
Each school s considers its applicants. Those students with the highest s-priority are tentatively assigned
to school s up to its quota. The rest of the applicants are rejected.
( )
Step k: Each rejected student, who is yet to apply to his (t − 1)e + e -th choice school, applies to his next
( )
choice. If a student has been rejected from all his first (t − 1)e + e choices, then he remains unassigned
in this round and does not make any applications until the next round.
Each school s considers its applicants. Those students with the highest s-priority are tentatively assigned
to school s up to its quota. The rest of the applicants are rejected.
End: The round terminates whenever each student is either assigned to a school or is unassigned in this round,
i.e., he has been rejected by all his first (t − 1)e + e choice schools. At this point, all tentative assignments
become final and the quota of each school is reduced by the number of students permanently assigned
to it.
End: The algorithm terminates when each student has been assigned to a school. At this point, all the tentative
assignments become final.

9.54 Remark: There are two limiting cases:

• The Chinese parallel mechanism with a parameter e = 1 is equivalent to the Boston mechanism.
• The Chinese parallel mechanism with a parameter e = ∞ is equivalent to DA.

9.55 Proposition (Proposition 1 in Chen and Kesten (2017)): Within the family Chinese parallel mechanisms, that is,
e ∈ {1, 2, . . . , ∞},

(i) there is exactly one member that is Pareto efficient; this is the Boston mechanism;
(ii) there is exactly one member that is strategy-proof; this is the DA mechanism;
(iii) there is exactly one member that is stable; this is the DA mechanism.

9.56 Theorem (Theorem 1 in Chen and Kesten (2017)): For any e, φe is more manipulable than φe , where e′ > e.
A mechanism ψ is said to be manipulable at a problem ⟨P, ≻⟩ if there exists some student j such that ψ is ma-
nipulable by student j at ⟨P, ≻⟩. We consider mechanism φ to be more manipulable than mechanism ψ if (i)
at any problem ψ is manipulable, then φ is also manipulable; and (ii) there is at least one problem at which φ is
manipulable but ψ is not.

9.57 Proposition (Proposition 2 in Chen and Kesten (2017)): Let e′ > e.



(i) If e′ = ke for some k ∈ N ∪ {∞}, then φe is more stable than φe .
9.5. Case study: Chinese college admissions 154


(ii) If e′ ̸= ke for any k ∈ N ∪ {∞}, then φe is not more stable than φe .

A mechanism φ to be more stable than mechanism ψ if (i) at any problem ψ is stable, φ is also stable; and (ii) there
is at least one problem at which φ is stable but ψ is not.
Chapter 10
Acyclicity

Contents
10.1 Cycles and efficiency of deferred acceptance algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 155
10.2 Robust stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

10.1 Cycles and efficiency of deferred acceptance algorithm

10.1 Consider the school choice problem ⟨I, S, q, P, ≻⟩ in Example 9.35, where I = {i, j, k}, S = {a, b}, qa = qb = 1,
and

i j k a b
b a a i k
a b j i
k

Table 10.1

The matching produced by DA is [ ]


i j k
µ= .
a ∅ b

A mutually beneficial agreement between i and k would be to get schools a and b respectively by exercising their
priority rights, and then to make an exchange so that finally i gets b and k gets a. However, the final matching would
violate the priority of j for a, contradicting the allocation on the basis of specified priorities.
Here the priority structure is cyclic, since j may block a potential matching between i and k without affecting his
own position, that is
i ≻a j ≻a k ≻b i.

Because of such a cycle, in DA,

(1) k applies to her favorite a but j displaces k,


(2) k is forced to apply to her second choice b, displacing i from his favorite b,

155
10.1. Cycles and efficiency of deferred acceptance algorithm 156

(3) i is forced to apply to his second choice a, displacing j.

In the end, j is displaced by school a anyway, with the result being just causing more rejections and making i and
k worse off.

 10.2 Definition (Definition 1 in Ergin (2002)): Given a priority structure ≻ and quota profile q, a cycle is a, b ∈ S,
i, j, k ∈ I such that the following are satisfied:

(C) Cycle condition: i ≻a j ≻a k ≻b i.


(S) Scarcity condition: There exist (possibly empty) disjoint sets of students Ia , Ib ⊆ I \ {i, j, k} such that |Ia | =
qa − 1, |Ib | = qb − 1, i′ ≻a j for every i′ ∈ Ia , and i′′ ≻b i for every i′′ ∈ Ib .

A priority structure ≻ (or (≻, q)) is acyclic if there exists no cycle.

10.3 Remark: The scarcity condition requires that there are enough people with higher priority for a and b such that
there may be instants when i, j, and k would compete for admission in either a or b.

10.4 For any problem Γ = ⟨I, S, q, P, ≻⟩, any I ′ ⊆ I, and any matching µ, the reduced problem of Γ with respect to I ′
and q ′ under µ is
rIµ′ (Γ) = ⟨I ′ , S, q ′ , PI ′ , ≻ |I ′ ⟩,

where qs′ = qs − |µ−1 (s) \ I ′ |.


It is the smaller problem consisting of students I ′ and remaining positions after students I \ I ′ have left with their
matchings under the matching µ.

 10.5 Definition: A mechanism φ is consistent is consistent if for any problem Γ = ⟨I, S, q, P, ≻⟩, for any nonempty
subset I ′ ⊆ I, and for any i ∈ I ′ , [ ]
φ[Γ]
φ[Γ](i) = φ rI ′ (Γ) (i).

10.6 Remark: Consistency requires that once a matching is determined and a group of students receive their colleges be-
fore the others, the rule should not change the matching of the remaining students in the reduced problem involving
the remaining students and colleges.

 10.7 Theorem (Theorem 1 in Ergin (2002)): For any ≻ and q, the following are equivalent:

(i) ≻ is acyclic.
(ii) DA≻ is Pareto efficient.
(iii) DA≻ is consistent.
(iv) DA≻ is group strategy-proof.

10.8 This theorem is bad news for school systems, because most priority structures are cyclic.

10.9 Definition: Given a priority structure ≻, a generalized cycle is constituted of distinct s0 , s1 , . . . , sn−1 ∈ S and
i′ , i0 , i1 , . . . , in−1 ∈ I with n ≥ 2 such that the following are satisfied:

(C’) i0 ≻s0 i′ ≻s0 in−1 ≻sn−1 in−2 ≻sn−2 · · · ≻s3 i2 ≻s2 i1 ≻s1 i0 .
(S’) There exist disjoint sets of agents Is0 , Is1 , . . . , Isn−1 ⊆ I \ {i′ , i0 , i1 , . . . , in−1 } such that

Is0 ⊆ Us0 (i′ ), Is1 ⊆ Us1 (i0 ), Is2 ⊆ Us2 (i1 ), . . . , Isn−2 ⊆ Usn−2 (in−3 ), Isn−1 ⊆ Usn−1 (in−2 ),

and |Isl | = qsl − 1 for all l = 0, 1, . . . , n − 1, where Us (i) ≜ {j ∈ I | j ≻s i}.


10.1. Cycles and efficiency of deferred acceptance algorithm 157

10.10 Lemma: If DA is not Pareto efficient, then ≻ has a generalized cycle.

Proof.
Part 1: Suppose that DA is not Pareto efficient, that is, there exist P and µ′ , such that µ′ Pareto dominates µ =
DA[P ]. We will show that there exist students

i0 , i1 , . . . , in−1 , in = i0 ∈ I

with n ≥ 2, such that each student envies the next under µ.

(1) Let J = {i ∈ I | µ′ (i)Pi µ(i)}, since µ′ Pareto dominates µ, J ̸= ∅.


(2) Moreover, for any student i ∈ I \ J, he/she should be indifferent between µ(i) and µ′ (i), and hence I \ J =
{i ∈ I | µ′ (i) = µ(i)}.
(3) For each i ∈ J, we also have µ′ (i) ∈ S, since µ′ (i)Pi µ(i)Ri ∅.
(4) For each i ∈ J, since µ′ (i)Pi µ(i), i has been rejected by µ′ (i) at a step under µ. So at that step µ′ (i)’s waiting
list must be full, and therefore at last the school µ′ (i) has full quota, i.e., |µ−1 (µ′ (i))| = qµ′ (i) .
(5) Fix i ∈ J. Claim: There is some student in J who was assigned to µ′ (i) under µ.
(i) Otherwise the set of qµ′ (i) students who were assigned to µ′ (i) under µ would be a subset of I \ J, and
hence they would be assigned to µ(i) also under µ′ , since I \ J = {i ∈ I | µ′ (i) = µ(i)}.
(ii) Since i ∈ J is also assigned to µ′ (i) under µ′ , there are at least qµ′ (i) + 1 students assigned to µ′ (i) under
µ′ , which leads to a contradiction.
(6) Define the correspondence π : J ↠ J by π(i) = µ−1 (µ′ (i)) ∩ J. By the above argument, π is non-empty
valued.
(7) We can choose a selection π̄ of π such that for any i, j ∈ J with µ′ (i) = µ′ (j), we have π̄(i) = π̄(j) ∈ J.
Hence we have µπ̄ = µ′ .
(8) For each i ∈ J, since µ(i) ̸= µ′ (i), we have π̄(i) ̸= i. Therefore there is n ≥ 2 and n distinct students

i1 , i2 , . . . , in = i0 ∈ J

with ir = π̄(ir−1 ) for r = 1, 2, . . . , n.


(9) Set sr = µ(ir ) for r = 1, 2, . . . , n. Then sr = µ(ir ) = µ(π̄(ir−1 )) = µ′ (ir−1 ) for r = 1, 2, . . . , n.
(10) Since i1 , i2 , . . . , in = i0 are distinct, s1 , s2 , . . . , sn = s0 are also distinct by the particular choice of the
selection π̄.
(11) Now we have showed that sr = µ(ir ) = µ′ (ir−1 )Pir−1 µ(ir−1 ) for r = 1, 2, . . . , n.
(12) Since µ is stable, we have ir ≻sr ir−1 for r = 1, 2, . . . , n. Therefore we have

i0 ≻s0 in−1 ≻sn−1 in−2 ≻sn−2 · · · ≻s3 i2 ≻s2 i1 ≻s1 i0 .

Part 2:

(1) Let k be the latest step under µ when someone in {i0 , i1 , . . . , in−1 } applies to (and is accepted) the school to
which he is assigned under µ.
(2) Without loss of generality, suppose that i0 applies to s0 = µ(i0 ) at this step.
10.1. Cycles and efficiency of deferred acceptance algorithm 158

(3) After that step, all students in {i0 , i1 , . . . , in−1 } never get rejected again, since they are in the waiting list of
their final allocation.
(4) For r = 0, 1, . . . , n − 1, since sr Pir−1 sr−1 , ir−1 was rejected by sr at an earlier step than when he applied to
sr−1 , which is earlier than Step k.
(5) Therefore at the end of Step k − 1, sr ’s waiting list must be full, for r = 0, 1, . . . , n − 1.
(6) Note that at the end of Step k − 1, s0 ’s waiting list does not include any ir ∈ {i1 , i2 , . . . , in−1 }. Otherwise ir
would apply to sr at a step later k, a contradiction.
(7) We can find i′ ∈ I distinct from i0 , i1 , . . . , in−1 such that he is rejected by s0 at Step k.
(8) Since i′ is accepted to the waiting list of s0 when in−1 is rejected by i0 , we have i0 ≻s0 i′ ≻s0 in−1 .
(9) For any r ∈ {0, 1, . . . , n − 1}, let Isr be the set of students in the waiting list of sr other than ir at the end of
Step k. It is now straightforward to see that condition (S’) is also satisfied.

10.11 Lemma (Lemma in Narita (2009)): If ≻ has a generalized cycle, then ≻ has a cycle.

Proof. Suppose that ≻ and q have a generalized circle and let the size of the shortest generalized cycle be n > 2,
that is, s0 , s1 , . . . , sn−1 ∈ S, i′ , i0 , i1 , . . . , in−1 ∈ I and Is0 , Is1 , . . . , Isn−1 ⊆ I \ {i′ , i0 , i1 , . . . , in−1 } constitute
the shortest generalized cycle of size n > 2.

i0 ≻s0 i′ ≻s0 in−1 ≻sn−1 in−2 ≻sn−2 · · · ≻s3 i2 ≻s2 i1 ≻s1 i0 .

Case (1-1): Suppose i0 ≻s2 i2 and for all i ∈ Is2 , i ≻s2 i2 .

(1) We have i0 ≻s2 i2 ≻s2 i1 ≻s1 i0 .


(2) Is1 , Is2 ⊆ I \ {i0 , i1 , i2 } are disjoint sets satisfying

Is2 ⊆ Us2 (i2 ), Is1 ⊆ Us1 (i0 ), |Is2 | = qs2 − 1, |Is1 | = qs1 − 1.

(3) Therefore, s2 , s1 ∈ S, i0 , i2 , i1 ∈ I and Is2 , Is1 ⊆ I \ {i0 , i2 , i1 } constitute a cycle, i.e., a generalized cycle
of size 2, which is a contradiction.

Case (1-2): Suppose i0 ≻s2 i2 and there exists i ∈ Is2 such that i2 ≻s2 i.

(1) Since i ∈ Is2 ⊆ Us2 (i1 ), we have i ≻s2 i1 , and hence i2 ≻s2 i ≻s2 i1 .
(2) Let i′ be the minimum element in Is2 with respect to ≻s2 , and Is′ 2 = Is2 ∪ {i2 } \ {i′ }.
(3) Then, i0 ≻s2 i2 ≻s2 i′ ≻s2 i1 ≻s1 i0 .
(4) Is1 , Is′ 2 ⊆ I \ {i0 , i1 , i′ } are disjoint sets satisfying

Is′ 2 ⊆ Us2 (i′ ), Is1 ⊆ Us1 (i0 ), |Is1 | = qs1 − 1, |Is′ 2 | = qs2 − 1.

(5) Therefore, s2 , s1 ∈ S, i0 , i′ , i1 ∈ I, and Is′ 2 , Is1 constitute a cycle, which is a contradiction.

Case (2-1): Suppose i2 ≻s2 i0 , and for all i ∈ Is2 , i ≻s2 i0 .

(1) Then we have


i0 ≻s0 i′ ≻s0 in−1 ≻sn−1 in−2 ≻sn−2 · · · ≻s3 i2 ≻s2 i0 .
10.1. Cycles and efficiency of deferred acceptance algorithm 159

(2) Is0 , Is2 , Is3 , . . . , Isn−1 ⊆ S \ {i′ , i0 , i2 , i3 , . . . , in−1 } are disjoint sets satisfying

Is0 ⊆ Us0 (i′ ), Is2 ⊆ Us2 (i0 ), Is3 ⊆ Us3 (i2 ), . . . , Isn−2 ⊆ Usn−2 (in−3 ), Isn−1 ⊆ Usn−1 (in−2 ).

(3) We also have |Isr | = qsr − 1 for all r = 0, 2, 3, . . . , n − 1.


(4) Therefore, s0 , s2 , s3 , . . . , sn−1 ∈ S, i′ , i0 , i2 , i3 , . . . , in−1 ∈ I and Is0 , Is2 , Is3 , . . . , Isn−1 constitute a gen-
eralized cycle of size n − 1, which is a contradiction.

Case (2-2): Suppose i2 ≻s2 i0 , and there exists i ∈ Is2 such that i0 ≻s2 i.

(1) Since i ∈ Is2 ⊆ Us2 (i1 ), we have i ≻s2 i1 , and hence i0 ≻s2 i ≻s2 i1 .
(2) Let i′′ be the minimum element in Is2 with respect to ≻s2 , and Is′′2 = Is2 ∪ {i2 } \ {i′′ }.
(3) Then, i0 ≻s2 i′′ ≻s2 i1 ≻s1 i0 .
(4) Is1 , Is′′2 ⊆ I \ {i0 , i1 , i′′ } are disjoint sets satisfying

Is′′2 ⊆ Us2 (i′′ ), Is1 ⊆ Us1 (i0 ), |Is1 | = qs1 − 1, |Is′′2 | = qs2 − 1.

(5) Therefore, s2 , s1 ∈ S, i0 , i′′ , i1 ∈ I, and Is′′2 , Is1 constitute a cycle, which is a contradiction.

10.12 Proof of Theorem 10.7, Part 1: “acyclicity implies Pareto efficiency”. It follows immediately from two lemmas above.

10.13 Proof of Theorem 10.7, Part 2: “Pareto efficiency implies consistency”.

(1) Assume DA is not consistent.


(2) Then, there is ⟨I, S, q, P, ≻⟩ and ∅ ̸= I ′ ⫋ I such that

µ|I ′ ̸= µ′ ,

where µ = DA[I, S, q, P, ≻] and µ′ = DA[rIµ′ (I, S, q, P, ≻)].


(3) Then by Corollary 3.26, µ′ Pareto dominates µ|I ′ in the reduced problem.
(4) Then the matching ν defined by 
µ′ (i), if i ∈ I ′ ,
ν(i) =
µ(i), otherwise.

Pareto dominates µ, contradiction.

10.14 Proof of Theorem 10.7, Part 3: “consistency implies group strategy-proofness”.

(1) By Corollary 3.26, DA is strategy-proof.


(2) By Theorem 9.18, it suffices to show that DA is nonbossy.
(3) Suppose that DA is consistent.
10.1. Cycles and efficiency of deferred acceptance algorithm 160

(4) Let i, P and Pi′ be given and set

µ = DA[I, S, q, P, ≻], and ν = DA[I, S, q, Pi′ , P−i , ≻].

µ
(5) Assume µ(i) = ν(i), then two reduced problems rI\{i} (I, S, q, P, ≻) and rI\{i}
ν
(I, S, q, Pi′ , P−i , ≻) are
same.
(6) By consistency of DA,

µ
µ|I\{i} = DA[I, S, q, P, ≻]|I\{i} = DA[rI\{i} (I, S, q, P, ≻)],
ν|I\{i} = DA[I, S, q, Pi′ , P−i , ≻]|I\{i} = DA[rI\{i}
ν
(I, S, q, Pi′ , P−i , ≻)].

(7) Therefore, µ|I\{i} = ν|I\{i} .


(8) Since µ(i) = ν(i) and µ|I\{i} = ν|I\{i} , we conclude that µ = ν.

10.15 Proof of Theorem 10.7, Part 4: “group strategy-proofness implies acyclicity”.

(1) Suppose that ≻ has a cycle with a, b, i, j, k (i ≻a j ≻a k ≻b i), Ia and Ib .


(2) Consider the preference profile P , where
• students in Ia and Ib respectively rank a and b as their top choice,
• the preferences of i, j and k are as follows,

i j k
b a a
a b

Table 10.2

• students outside Ia ∪ Ib ∪ {i, j, k} prefer not to be assigned to any school.


(3) Let I ′ = {i, j, k}, P−j = P−j , and Pj′ rank ∅ at the top.
(4) Then we have
[ ] [ ]
i j k i j k
DA[I, S, q, PI\I ′ , PI ′ , ≻] = , and DA[I, S, q, PI\I ′ , PI′ ′ , ≻] = ,
a ∅ b b ∅ a

which contradicts the group strategy-proofness of DA under the true preferences P .

10.16 Proof of Theorem 10.7, Part 5: “consistency implies acyclicity”.

(1) Suppose that ≻ has a cycle with a, b, i, j, k (i ≻a j ≻a k ≻b i), Ia and Ib .


(2) Consider the preference profile P , where
• students in Ia and Ib respectively rank a and b as their top choice,
• the preferences of i, j and k are as follows,
• students outside Ia ∪ Ib ∪ {i, j, k} prefer not to be assigned to any school.
10.2. Robust stability 161

i j k
b a a
a b

Table 10.3

(3) Then, the student-optimal stable mechanism outcome µ for ⟨I, S, q, P, ≻⟩ is


[ ]
a b
µ= .
Ia ∪ {i} Ib ∪ {j}

(4) Consider the reduced problem

µ
r{i,k} (I, S, q, P, ≻) = ⟨{i, k}, S, q ′ , P{i,k} , ≻ |{i,k} ⟩,

is such that the preferences of i and k are as above, qa′ = qb′ = 1, and qs′ = qs for any s ∈ S \ {a, b}.
(5) The student-optimal stable mechanism outcome µ′ of this reduced problem is
[ ]
′ a b
µ = .
k i

(6) Since µ′ ̸= µ|{i,k} , DA is not consistent.

10.17 Theorem (Theorem 2 in Ergin (2002)): (≻, q) is cyclical if and only if there exist student i and schools s1 , s2 such
that i’s rank is larger than qs1 + qs2 at s1 or s2 , and |rs1 (i) − rs2 (i)| > 1, where rs (i) is the rank of student i at
school s.

Proof. Omitted.

10.2 Robust stability


10.18 In school choice problems, DA is both stable (fair) and strategy-proof. This makes it a good mechanism.
What about a combined manipulation? That is, first misreport preferences and then file for a re-matching?
This issue is intended to model appeals processes: In NYC, about 5000 students out of 90000 file for appeals under
DA; 300 among them are from those who were matched to their first choices.

10.19 Consider the school choice problem ⟨I, S, q, P, ≻⟩, where I = {i, j, k}, S = {a, b}, qa = qb = 1, and

i j k a b
b a a i k
a b j i
k

Table 10.4

The matching produced by DA is [ ]


i j k
µ= .
a ∅ b
10.2. Robust stability 162

Suppose that j misreports that ∅ is her first choice. Then the matching of DA is
[ ]
′ i j k
µ = .
b ∅ a

Because j ≻a k, j could ask to be admitted to a; if granted, j is made better off.

10.20 A mechanism φ is immune to combined manipulations if for any school choice problem ⟨I, S, q, P, ≻⟩, there exist
no i ∈ I, s ∈ S, and Pi′ such that

• sPi φ[P ](i), and


• i ≻s i′ for some i′ ∈ φ[Pi′ , P−i ](s) or |φ[Pi′ , P−i ](s)| < qs . (a student first misrepresents her preferences
and then blocks the matching that is produced by the centralized mechanism)

 Definition (Definition 1 in Kojima (2011)): A mechanism φ is robustly stable if the following conditions are satis-
fied:

(1) φ is stable.
(2) φ is strategy-proof.
(3) φ is immune to combined manipulations.

10.21 Theorem (Theorem 1 in Kojima (2011)): There exists a priority structure ≻ and a quote profile q for which there is
no robustly stable mechanism.

Proof. (1) DA is the unique stable and strategy-proof mechanism for school choice problems; see Theorem 9.34.
(2) It suffices to show that DA is not immune to combined manipulations.
(3) Consider a problem with I = {i, j, k}, S = {a, b}, qa = qb = 1, and

i j k a b
b a a i k
a b j i
k

Table 10.5

(4) Under the true preferences (Pj , P−j ), the DA produces


[ ]
i j k
.
a ∅ b

(5) Now consider a false preference Pj′ : ∅. Then, under (Pj′ , P−j ), DA produces
[ ]
i j k
.
b ∅ a

(6) Since aPj ∅ = DA[Pj , P−j ](j) and j ≻a k ∈ DA[Pj′ , P−j ](a), DA is not robustly stable. More specifically,
student j has incentives to first report Pj′ and then block DA[Pj′ , P−j ].
10.2. Robust stability 163

 10.22 Theorem (Theorem 2 in Kojima (2011)): Given ⟨I, S, q, P, ≻⟩, DA is robustly stable if and only if the priority
structure (≻, q) is acyclic.

10.23 Once the priority structure (≻, q) is acyclic, DA is the unique robustly stable mechanism.
This theorem seems to be bad news for school systems: most priority structures violate acyclicity.

10.24 Proof of Theorem 10.22, Part 1: “robust stability implies acyclicity”. We show the claim by contraposition.

(1) Suppose that the priority structure is not acyclic. Then, by definition, there exist a, b ∈ S, i, j, k ∈ I such that
• i ≻a j ≻a k ≻b i,
• there exist disjoint sets Ia , Ib ⊆ I \ {i, j, k} such that |Ia | = qa − 1, |Ib | = qb − 1, i′ ≻a j for all i ∈ Ia ,
and i′′ ≻b i for all i ∈ Ib .
(2) Consider the following preference profile P of students:

i j k i′ ∈ Ia i′′ ∈ Ib i ∈ I \ [{i, j, k} ∪ Ia ∪ Ib ]
b a a a b
a b

Table 10.6

It is easy to see that DA[P ](j) = ∅.


(3) Now consider a false preference of student j, Pj′ : ∅.
(4) We have DA[Pj′ , P−j ](k) = a. Since

aPj ∅ = DA[P ](j) and j ≻a k ∈ DA[Pj′ , P−j ](a),

DA is not robustly stable.

10.25 Proof of Theorem 10.22, Part 2: “acyclicity implies robust stability”. Prove by contradiction.

(1) Assume that DA is not robustly stable. Since DA is stable and strategy-proof, we will have the following
condition: Condition A: There exists s ∈ S, c ∈ C, P ∈ P |S| and Ps′ ∈ P, such that
• cPs DA[P ](s);
• s ≻c s′ for some s′ ∈ DA[Ps′ , P−s ](c) or | DA[Ps′ , P−s ](c)| < qc .
(2) Let P ′ = (Ps′ , P−s ).
(3) Case 1: Suppose DA[P ′ ](s) = ∅.
(i) Let
Ps′′ : c, ∅, P ′′ = (Ps′′ , P−s ).

(ii) If DA[P ′′ ](s) = c. Since we have

DA[P ′′ ](s) = cPs DA[P ](s),

this is a contradiction to strategy-proofness of DA.


10.2. Robust stability 164

(iii) If DA[P ′′ ](s) = ∅ which equals to DA[P ′ ](s)).


Then, by definition of Ps′′ , we have
cPs′′ ∅ = DA[P ′′ ](s). (10.1)

Since (≻, q) is acyclic, DA is nonbossy, and hence DA[P ′′ ] = DA[P ′ ].


By Condition A, we will have s ≻c s′ for some s′ ∈ DA[P ′ ](c) = DA[P ′′ ](c), or | DA[P ′′ ](c)| =
| DA[P ′ ](c)| < qc .
This and relation (10.1) means that DA[P ′′ ] is unstable under P ′′ , contradicting the fact that DA is a
stable mechanism.
(4) Case 2: Suppose DA[P ′ ](s) ̸= ∅. Let

Ps′′ : ∅, P ′′ = (Ps′′ , P−s ).

By the comparative statics, | DA[P ′ ](c)| > | DA[P ′′ ](c)|, and if | DA[P ′ ](c)| = | DA[P ′′ ](c)| = qc , then
there exists s′′ ∈ DA[P ′′ ](c), such that s′ ≿c s′′ for all s′ ∈ DA[P ′ ](c).
Therefore Condition A is satisfied with respect to s, c and Ps′′ and, since DA[P ′′ ](s) = ∅, the analysis reduces
to Case 1.

10.26 Remark: Given that DA is the unique stable and strategy-proof mechanism (see Theorem 9.34), this theorem implies
that, given the market, there exists a robustly stable mechanism if and only if the priority structure is acyclic.

10.27 Afacan (2012) complemented the above results by considering group robustly stability that involves combined ma-
nipulations by groups of students.
As in the case with Pareto efficiency and group strategy-proofness, there could be (at least) two definitions of group
robust stability, requiring that there is no group manipulation causing

• strict improvement for everyone in the manipulating coalition, or


• weak improvement for everyone, with at least one strict.

For the first concept (weaker requirement), it turns out that acyclicity is also a necessary and sufficient condition
for group robust stability.
For the second concept (stronger requirement), the mechanism may be manipulable even with acyclic priority
structures.
Chapter 11
Efficiency improvement on student-optimal stable
mechanism

Contents
11.1 Efficiency-adjusted deferred acceptance algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
11.2 Simplified efficiency-adjusted deferred acceptance algorithm . . . . . . . . . . . . . . . . . . . . . . 172
11.3 Stable improvement cycle algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

11.1 When the priority structure contains cycles, DA is not Pareto efficient as shown in Theorem 10.7. In Remark 9.36
and Corollary 9.39, we also show that we can not improve the efficiency of students without sacrificing the stability
and strategy-proofness. In this chapter, we will focus on how to improve the efficiency with minimal hurt on stability
and strategy-proofness.

11.1 Efficiency-adjusted deferred acceptance algorithm

11.2 Example: Consider the school choice problem ⟨I, S, q, P, ≻⟩, where I = {i, j, k}, S = {s1 , s2 }, qs1 = qs2 = 1,
and

i j k s1 s2
s2 s1 s1 i k
s1 s2 j i
k

Table 11.1

The matching produced by DA is [ ]


i j k
,
s1 ∅ s2

and the procedure is

165
11.1. Efficiency-adjusted deferred acceptance algorithm 166

Step 1 2 3 End
s1 j, kA j Aj, i i
s2 i iC , k k k
∅ k i j j

Table 11.2

11.3 In Example 11.2, when the DA algorithm is applied to this problem, student j causes student k to be rejected from
school s1 and starts a chain of rejections that ends back at school s1 , forming a full cycle and causing student j
himself to be rejected. There such a cycle has resulted in loss of efficiency.
By applying to school s1 , student j “interrupts” a desirable settlement between students i and k without affecting
her own placement and artificially introduces inefficiency into the outcome. The key idea behind the mechanism
produced by Kesten (2010) is based on preventing students such as student j of this example from interrupting
settlements among other students.

11.4 Coming back to Example 11.2, suppose that student j consents to give up her priority at school s1 , i.e., if she is
okay with accepting the the unfairness caused by matching k to s1 . Thus, school s1 is to be removed from student
j’s preferences without affecting the relative ranking of the other schools in her preferences.
Note that, when we rerun DA, replacing the preferences of student j with her new preferences, there is no change
in the placement of student j. But, because the previously mentioned cycle now disappears, students i and k each
move one position up in their preferences. Moreover, the new matching is now Pareto efficient. To be more detailed,
the preference profiles become

i j k s1 s2
s2 s1 i k
s1 s2 j i
k

Table 11.3

The matching produced by DA is [ ]


i j k
,
s2 ∅ s1

and the procedure is

Step 1 End
s1 k k
s2 i i
∅ j j

Table 11.4

 11.5 Definition: Given a problem to which DA is applied, let i be a student who is tentatively placed at a school s at
some Step t and rejected from it at some later Step t′ . If there is at least one other student who is rejected from
school s after Step t−1 and before Step t′ , that is, rejected at a Step l ∈ {t, t + 1, . . . , t′ −1}, then we call student i
an interrupter for school s and the pair (i, s) an interrupting pair of Step t′ .

11.6 In real-life applications, it is imperative that each student be asked for permission to waive her priority for a critical
school in cases similar to Example 11.2. We incorporate this aspect of the problem into the procedure by dividing
the set of students into two groups: those students who consent to priority waiving and those who do not.
11.1. Efficiency-adjusted deferred acceptance algorithm 167

11.7 Lemma: If the outcome of DA is inefficient for a problem, then there exists one interrupting pair in DA. However,
the converse is not necessarily true, i.e., an interrupting pair does not always result in efficiency loss.

Proof. (1) Fix a school choice problem. Let α denote the outcome of DA, which is Pareto dominated by another
matching β.
(2) There exists a student i1 such that β(i1 )Pi1 α(i1 ).
(3) Under the matching α, all the seats of school β(i1 ) are full.
(4) Since β Pareto dominates α, there is a student i2 who is placed at school β(i1 ) under α, and who is placed at
a better school β(i2 ) under β.
(5) Under the matching α, all the seats of school β(i2 ) are full.
(6) Since β Pareto dominates α, there is a student i3 who is placed at school β(i2 ) under α, and who is placed at
a better school β(i3 ) under β.
(7) Continuing in a similar way, we conclude that because matching β Pareto dominates matching α, there is a
student ik who is placed at school β(ik−1 ) under α, and who is placed at the school β(i1 ) under β, which is
better for her.
(8) That is, there is a cycle of students (i1 , i2 , . . . , ik ) (k ≥ 2), such that each student prefers the school the next
student in the cycle (for student ik it is i1 ) is placed at under α to the school she is placed at under the same
matching:
α(iℓ+1 ) = β(iℓ )Piℓ α(iℓ ) = β(iℓ−1 ).

(9) Let iℓ ∈ {i1 , i2 , . . . , ik } be the student in this cycle who is the last (or, one of the last, if there are more than
one such students) to apply to the school that she is placed at the end of DA.
(10) Then the student iℓ−1 in the above cycle who prefers school α(iℓ ) to the school α(iℓ−1 ) she is placed at under
α was rejected from α(iℓ ) at an earlier step.
(11) Then, when student iℓ applies to school α(iℓ ), all the seats are already full and because student α(iℓ ) is placed
at this school at the end of DA, some student i′ is rejected.
(12) Thus, student i′ is an interrupter for school α(iℓ ).

Consider an interrupting pair (i, s): it is possible that student i’s rejection from school s (at Step t′ according to
the definition) could be caused by some student j whose application to school s has not been directly or indirectly
triggered by the student that student i displaced from school s when she is tentatively admitted. In such cases as
these, the DA outcome does not suffer efficiency loss due to the presence of an interrupter. (Exercise)

11.8 Efficiency-adjusted deferred acceptance mechanism (EADAM):

Round 0: Run DA for the school problem.


Round k: (1) Find the last step of DA in Round (k − 1) in which a consenting interrupter is rejected from the
school for which she is an interrupter.
(2) Identify all interrupting pairs of that step each of which contains a consenting interrupter.
(3) For each identified interrupting pair (i, s), remove school s from the preferences of student i without
changing the relative order of the remaining schools. Do not make any changes in the preferences of the
remaining students.
11.1. Efficiency-adjusted deferred acceptance algorithm 168

(4) Rerun DA with the new preference profile.


End: If there are no interrupting pairs, then stop.

When we say student i is an interrupter of Round t, this means that student i is identified as an interrupter during
Round (t + 1) in DA that was run at the end of Round t.

11.9 Example (Example 5 in Kesten (2010)): Let I = {i1 , i2 , i3 , i4 , i5 , i6 } and S = {s1 , s2 , . . . , s5 }, where qs1 = qs2 =
qs3 = qs4 = 1 and qs5 = 2. The priorities for the schools and the preferences of the students are given as follows:
Suppose that all students consent.

s1 s2 s3 s4 s5 i1 i2 i3 i4 i5 i6
..
i2 i3 i1 i4 . s2 s3 s3 s1 s1 s4
i1 i6 i6 i3 s1 s1 s4 s2 s5 s1
..
i5 i4 i2 i6 s3 s5 s2 s4 . s3
.. .. .. ..
i6 i1 i3 . . . . s2
.. ..
i4 . . s5
i3

Table 11.5

Round 0:

Step 1 2 3 4 5 6 7 8 9 10 End
s1 S4 , i5
i i5 S5 , i
i1 , i S6 i1 S1 , i2
i i2 i2 i2 i2 i2 i2
s2 i1 S1 , i4
i i4 i4 i4 i4 S4 , i6
i i6 S6
i3 , i i3 i3
s3 S3
i2 , i i2 i2 S2 , i6
i i6 S6
i1 , i i1 i1 i1 i1 i1
s4 i6 S6
i3 , i i3 i3 i3 i3 i3 S3 , i4
i i4 i4 i4
s5 i5 i5 i5 i5 i5 i5 i5 , i6 i5 , i6
∅ i3 , i4 i1 , i 6 i5 , i 6 i2 i1 i6 i4 i3 i6

Table 11.6

Round 1: The last step in which an interrupter is rejected from the school she is an interrupter for is Step 9, where
the interrupting pair is (i6 , s2 ). We remove school s2 from the preferences of student i6 . We then rerun DA with
the new preference profile:

Step 1 2 3 4 5 6 7 End
s1 S , i5
i
4 i5 S5 , i
i1 , i S6 i1 S , i2
i
1 i2 i2 i2
s2 i1 S1 , i4
i i4 i4 i4 i4 i4 i4
s3 S3
i2 , i i2 i2 S , i6
i
2 i6 S6
i1 , i i1 i1
s4 i6 S6
i3 , i i3 i3 i3 i3 i3 i3
s5 i5 i5 i5 i5 , i 6 i5 , i 6
∅ i3 , i 4 i1 , i6 i5 , i6 i2 i1 i6

Table 11.7

Round 2: The last step in which an interrupter is rejected from the school she is an interrupter for is Step 6, where
the interrupting pair is (i6 , s3 ). We remove school s3 from the (updated) preferences of student i6 . We then rerun
DA with the new preference profile:
11.1. Efficiency-adjusted deferred acceptance algorithm 169

Step 1 2 3 4 End
s1 S4 , i5
i i5 S5 , i
i1 , i S6 i1 i1
s2 i1 S1 , i4
i i4 i4 i4
s3 S3
i2 , i i2 i2 i2 i2
s4 i6 S6
i3 , i i3 i3 i3
s5 i5 , i6 i5 , i6
∅ i3 , i4 i1 , i6 i5 , i6

Table 11.8

Round 3: The last step in which an interrupter is rejected from the school she is an interrupter for is Step 3, where
the interrupting pair is (i5 , s1 ). We remove school s1 from the preferences of student i5 and keep the preferences
of the remaining students the same. We then rerun DA with the new preference profile:

Step 1 2 3 4 5 6 End
s1 i4 i4 S , i6
i
4 i6 S6
i1 , i i1 i1
s2 i1 i1 i1 S1 , i4
i i4 i4 i4
s3 S3
i2 , i i2 i2 i2 i2 i2 i2
s4 i6 S6
i3 , i i3 i3 i3 i3 i3
s5 i5 i5 i5 i5 i5 i5 , i 6 i5 , i6
∅ i3 i6 i4 i1 i6

Table 11.9

Round 4: The last step in which an interrupter is rejected from the school she is an interrupter for is Step 5, where
the interrupting pair is (i6 , s1 ). We remove school s1 from the (updated) preferences of student i6 . We then rerun
DA with the new preference profile:

Step 1 2 3 End
s1 i4 i4 i4 i4
s2 i1 i1 i1 i1
s3 S3
i2 , i i2 i2 i2
s4 i6 S6
i3 , i i3 i3
s5 i5 i5 i5 , i6 i5 , i 6
∅ i3 i6

Table 11.10

End: There are no interrupting pairs; hence we stop.

11.10 Because the numbers of schools and students are finite, the algorithm eventually terminates in a finite number of
steps. Since DA runs in two consecutive rounds of EADAM are identical until the first step a consenting interrupter
applies to the school for which she is an interrupter, in practice the EADAM outcome can be computed conveniently
by only rerunning the relevant last steps of DA. Note also that each round of EADAM consists of a run of DA that
is a polynomial-time procedure (e.g., see Gusfield and Irving (1989)). Then because a student can be identified as
an interrupter at most |S| times, these iterations need to be done at most |I| · |S| times, giving us a computationally
simple polynomial-time algorithm.

11.11 Remark: Why shall we start with the last interrupter(s) in the algorithm?
Case 1: Handle all the interrupters simultaneously.
Let I = {i1 , i2 , i3 } and S = {s1 , s2 , s3 }, where each school has only one seat. The priorities for the schools and
the preferences of the students are given as follows:
11.1. Efficiency-adjusted deferred acceptance algorithm 170

i j k s1 s2 s3
..
s1 s1 s2 k i .
s2 s2 s1 i j
s3 s3 s3 j k

Table 11.11

The procedure of DA is

Step 1 2 3 4 5 End
s1 i, Aj i iC , k k k k
s2 k j, kA j i, Aj i i
s3 j j
∅ i k i j

Table 11.12

The outcome of DA for this problem is not Pareto efficient. There are two interrupting pairs within the algorithm:
(i, s1 ) and (j, s2 ).
Now consider the revised problem where we remove school s1 from student i’s preferences and school s2 from
those of student j. The procedure of DA to the revised problem is as follows:

Step 1 2 3 End
s1 j A k
j, k k
s2 i, kA i i i
s3 j j
∅ k j

Table 11.13

The outcome does not change (i.e., still inefficient) even though there are no interrupters left in the new algorithm.
Case 2: Start with the earliest interrupter.
Consider the example above. Note that student i was identified as an interrupter at Step 3 before student j, who was
identified at Step 4. Thus, let us then consider the revised problem where we only remove school s1 from student
i’s preferences. The procedure of DA to the revised problem is as follows:
11.1. Efficiency-adjusted deferred acceptance algorithm 171

Step 1 2 3 4 End
s1 j Aj, k k k k
s2 i, kA i i, Aj i i
s3 j j
∅ k j j

Table 11.14

Once again, there is no change in the outcome. Hence, this approach does not work either.

 11.12 Theorem (Theorem 1 in Kesten (2010)): The EADAM Pareto dominates the DA as well as any mechanism which
eliminates justified envy. If no student consents, the two mechanisms are equivalent. If all students consent, then the
EADAM outcome is Pareto efficient. In the EADAM outcome all nonconsenting students’ priorities are respected;
however, there may be consenting students whose priorities for some schools are violated with their permission.

 11.13 Lemma (Lemma A.1 in Kesten (2010)): Given a problem, the matching obtained at the end of Round r (r ≥ 1) of
EADAM places each student at a school that is at least as good for her as the school she was placed at at the end of
Round (r − 1).

Proof. (1) Suppose by contradiction that there are a problem, a Round r (r ≥ 1), of EADAM, and a student i1
such that the school student i1 is placed at in Round r is worse for her than the school sr−1
1 she was placed at
in Round (r − 1).
(2) This means that when we run DA in Round r, student i1 is rejected from school sr−1
1 .

(3) Then there is a student i2 ∈ I \ {i1 } who is placed at school sr−1


1 in Round r and who was placed at a different
school sr−1
2 (in Round (r−1)).
(4) This means there is a student i3 ∈ I \ {i1 , i2 } who is placed at school sr−1
2 in Round r and who was placed at
a different school sr−1
3 , and so on.
(5) Thus, there must be a student ik ∈ I \ {i1 , . . . , ik−1 } who is the first student to apply to a school sr−1
k−1 that is
worse for her than the school sr−1
k she was placed at in Round r−1.
(6) Case 1: Student ik is not an interrupter of Round (r−1).
(i) The preferences of student ik are the same in Rounds r and (r−1).
(ii) Thus, there is a student who is placed at school skr−1 in Round r and who did not apply to it in Round
(r−1).
(iii) This contradicts the assumption that student ik is the first student to apply to a school that is worse for
her than the school she was placed at in Round (r−1).
(7) Case 2: Student ik is an interrupter of Round (r−1).
(i) In Round r, student ik , instead of applying to the school she is an interrupter for, applied to her next
choice, say school s∗ .
(ii) Student ik also applied to school s∗ in Round (r−1).
(iii) Thus, there is a student who is placed at school skr−1 in Round r and who did not apply to it in Round
(r−1).
(iv) But then, this again contradicts the assumption that student ik is the first student to apply to a school that
is worse for her than the school she was placed at in Round (r−1).
11.2. Simplified efficiency-adjusted deferred acceptance algorithm 172

11.14 Corollary (Corollary 1 in Kesten (2010)): If all students consent, then EADAM selects the Pareto efficient matching
which eliminates justified envy whenever it exists.

11.15 Proposition (Proposition 3 in Kesten (2010)): The placement of a student does not change whether she consents or
not.
This result makes sure that the students do not have incentive to not consent.

11.2 Simplified efficiency-adjusted deferred acceptance algorithm

11.16 When will a student consent to give up their own hope to help others? The simple answer is: when a student find
herself cannot be Pareto improved anymore.
So, which students are Pareto unimprovable?

 11.17 Definition: A school s is underdemanded at a matching µ if no student prefers s to her assignment under µ.
It is straightforward to see that a school is underdemanded at the DA matching if and only if it never rejects any
student throughout the DA procedure.

11.18 Example (Example 1 in Tang and Yu (2014)): There are four schools {s1 , s2 , s3 , s4 }, each with one seat, and four
students {i1 , i2 , i3 , i4 }. Their priorities and preferences are as follows:

s1 s2 s3 s4 i1 i2 i3 i4
i1 i3 i2 i4 s2 s1 s1 s3
..
i2 i1 i4 . s1 s3 s2 s4
.. .. .. .. .. ..
i3 . . . . . .
..
.

Table 11.15

The DA procedure is

Step 1 2 3 4 5 End
s1 S3
i2 , i i2 S2
i1 , i i1 i1 i1
s2 i1 S1 , i3
i i3 i3 i3 i3
s3 i4 i4 i4 S2 , i4
i i4 i4
s4 i2 i2
∅ i3 i1 i2 i2

Table 11.16

and the resulting matching is [ ]


i1 i2 i3 i4
.
s1 s4 s2 s3

Thus, school s4 is underdemanded at the DA matching, since it never rejects any student throughout the DA pro-
cedure.

 11.19 Definition: A school is tier-0 underdemanded at matching µ if it is underdemanded at µ.


For any positive integer k, a school is tier-k underdemanded at matching µ if
11.2. Simplified efficiency-adjusted deferred acceptance algorithm 173

• it is desired only by students matched with lower-tier underdemanded schools at µ, and


• it is desired by at least one of the students matched with tier-(k−1) underdemanded schools at µ.

In the previous example, school s3 is tier-1 underdemanded at the DA matching.

 11.20 Definition: School s is essentially underdemanded at matching µ if it is tier-k underdemanded at µ for some integer
k ≥ 0.
In the previous example, it is clear that s1 and s2 are not essentially underdemanded.

11.21 The set of essentially underdemanded schools at the DA matching can also be identified through a recursive process,
by reviewing the DA procedure that produces this DA matching. Tier-0 underdemanded schools are the schools
that never reject any student throughout the DA procedure. After removing tier-0 underdemanded schools and
the students matched with them, tier-1 underdemanded schools are the remaining schools that never reject any
remaining students throughout the DA procedure, and so on.

11.22 Definition: Student i is not Pareto improvable (or, simply, unimprovable) at DA[P, ≻] if for every matching µ that
Pareto dominates DA[P, ≻], µ(i) = DA[P, ≻](i).

11.23 Lemma (Lemma 1 in Tang and Yu (2014)): At the DA matching, all students matched with essentially underde-
manded schools are not Pareto improvable.
Therefore, the concept of (essentially) underdemanded schools offers us a convenient way to identify a large set
of unimprovable students. The lemma above still holds if the DA matching is replaced with any non-wasteful
matching.

11.24 Lemma: At the DA matching, if all the students are matched, then there exists an underdemanded school.

Proof. Let µ be the DA matching. Let the last step of DA be Step k. Consider a student i who applies µ(i) at Step
k under DA. Clearly, µ(i) is an underdemanded school.


11.25 Simplified EADAM:

Round 0: Run DA for the school choice problem.


Round k: This round consists of three steps:
(1) Identify the schools that are underdemanded at the round-(k−1) DA matching, settle the matching at
these schools, and remove these schools and the students matched with them. If all the schools are not
underdemanded at the round-(k − 1) DA matching, then remove the students who are unmatched.
(2) For each removed student i who does not consent, each remaining school s that student i desires and
each remaining student j such that i ≻s j, remove s from j’s preference.
(3) Rerun DA (the round-k DA) for the subproblem that consists of only the remaining schools and students.
End: Stop when all schools are removed.

11.26 Example: Consider the school choice problem ⟨I, S, q, P, ≻⟩, where I = {i, j, k}, S = {s1 , s2 }, qs1 = qs2 = 1,
and
11.2. Simplified efficiency-adjusted deferred acceptance algorithm 174

i j k s1 s2
s2 s1 s1 i k
s1 s2 j i
k

Table 11.17

Suppose that j consents.


Round 0: The process of DA is

Step 1 2 3 End
s1 j, kA j Aj, i i
s2 i iC , k k k
∅ k i j j

Table 11.18

Round 1: No underdemanded school exists. Remove j. Rerun DA:

Step 1 End
s1 k k
s2 i i

Table 11.19

Round 2: s1 and s2 are underdemanded. Remove them with the matched students.

11.27 Example (Examples 2 and 3 in Tang and Yu (2014)): Let I = {i1 , i2 , i3 , i4 , i5 , i6 } and S = {s1 , s2 , . . . , s5 }, where
qs1 = qs2 = qs3 = qs4 = 1 and qs5 = 2. The priorities for the schools and the preferences of the students are
given as follows:
11.2. Simplified efficiency-adjusted deferred acceptance algorithm 175

s1 s2 s3 s4 s5 i1 i2 i3 i4 i5 i6
..
i2 i3 i1 i4 . s2 s3 s3 s1 s1 s4
i1 i6 i6 i3 s1 s1 s4 s2 s5 s1
..
i5 i4 i2 i6 s3 s5 s2 s4 . s3
.. .. .. ..
i6 i1 i3 . . . . s2
.. ..
i4 . . s5
i3

Table 11.20

Suppose that all students consent.


Round 0:

Step 1 2 3 4 5 6 7 8 9 10 End
s1 S4 , i5
i i5 S5 , i
i1 , i S6 i1 S1 , i2
i i2 i2 i2 i2 i2 i2
s2 i1 S1 , i4
i i4 i4 i4 i4 S4 , i6
i i6 S6
i3 , i i3 i3
s3 S3
i2 , i i2 i2 S2 , i6
i i6 S6
i1 , i i1 i1 i1 i1 i1
s4 i6 S6
i3 , i i3 i3 i3 i3 i3 S3 , i4
i i4 i4 i4
s5 i5 i5 i5 i5 i5 i5 i5 , i6 i5 , i6
∅ i3 , i4 i1 , i 6 i5 , i 6 i2 i1 i6 i4 i3 i6

Table 11.21

Round 1: At round-0 DA matching, s5 is the only underdemended school, and students i5 and i6 are matched with
it. Remove s5 together with i5 and i6 , and rerun DA with the rest of the schools and students. The procedure of
round-1 DA is illustrated in the following table:

Step 1 2 End
s1 i4 i4 i4
s2 i1 i1 i1
s3 S3
i2 , i i2 i2
s4 i3 i3
∅ i3

Table 11.22

Round 2: At the end of Round 1, all schools are underdemanded except for s3 . So in Round 2, we first remove
all other schools and their matched students, and then run DA for s3 and i2 . The round-2 DA is trivial and the
algorithm stops immediately afterward. The final matching is the same as the round-1 DA matching.

11.28 Revisit the above example and suppose that student i5 does not consent.
In Round 1, after removing i5 , we have to modify the priorities for remaining schools:
11.2. Simplified efficiency-adjusted deferred acceptance algorithm 176

s1 s2 s3 s4 i1 i2 i3 i4
i2 i3 i1 i4 s2 s3 s3 s1
i1 S6
i S6
i i3 s1 s1 s4 s2
S5
i i4 i2 S6
i s3 Z
sZ
 5 s2 s4
.. .. .. ..
S6
i i1 i3 . . . .
.. ..
S4
i . .
S3
i

Table 11.23

Rerun DA:

Step 1 2 3 End
s1 S4
i i1 i1
s2 i1 S1 , i4
i i4 i4
s3 S3
i2 , i i2 i2 i2
s4 i3 i3 i3
∅ i3 , i 4 i1

Table 11.24

Round 2: At the end of Round 1, s4 is the only underdemanded school, and i3 is matched with it. Remove s4
together with i3 , and rerun DA with the rest of the schools and students. The procedure of round-2 DA is illustrated
in the following table:

Step 1 End
s1 i2 i2
s2 i4 i4
s3 i1 i1

Table 11.25

The final matching is the round-2 DA matching.

11.29 The simplified EADAM preserves the iterative structure of Kesten’s EADAM, while taking a new perspective by
focusing on unimprovable students instead of (only) interrupters.
The new perspective leads to several differences.

• First, at the end of each round, we remove all students matched with underdemanded schools, and thereby
remove all of their desired applications instead of removing only the last interruption.
• Second, after the removal of non-consenting students—since we already know which matchings among the
remaining schools and students would violate their priorities—we modify the preferences of the remaining
students accordingly to avoid violations of their priorities in future rounds of the algorithm.

 11.30 Lemma (Lemma 2 in Tang and Yu (2014)): For each k ≥ 1, the round-k DA matching of the simplified EADAM
weakly Pareto dominates that of round-(k−1).

11.31 Lemma (Proposition 1 in Tang and Yu (2014)): The simplified EADAM is well-defined and stops within |S ∪{∅}|+
1 = m + 2 rounds.
11.3. Stable improvement cycle algorithm 177

 11.32 Theorem (Theorem 1 in Tang and Yu (2014)): The simplified EADAM is Pareto efficient when all students consent
and is constrained efficient otherwise.

11.33 Theorem (Theorem 2 in Tang and Yu (2014)): Under the simplified EADAM, the assignment of any student does
not change whether she consents or not.

11.34 Lemma (Lemma 3 in Tang and Yu (2014)): The lastly rejected interrupters of the DA procedure are matched with
essentially underdemanded schools at the DA matching, and hence they are Pareto unimprovable.

 11.35 Theorem (Theorem 3 in Tang and Yu (2014)): For every school choice problem with consent, the simplified EADAM
produces the same matching as Kesten’s EADAM does.

11.3 Stable improvement cycle algorithm

11.36 In a school choice problem ⟨I, S, q, P, ≻⟩ with a given matching µ, for each school s, let ds be the highest ≻s -
priority student among those who desire s (i.e., who prefers s to her assignment under µ).

 11.37 Definition: A stable improvement cycle consists of distinct students i , i , . . . , i


1 2 n = i0 (n ≥ 2) such that for each
ℓ = 0, 1, . . . , n − 1,

(1) iℓ is matched to some school under µ;


(2) iℓ desires µ(iℓ+1 ); and
(3) iℓ = dµ(iℓ+1 ) .

11.38 Given a stable improvement cycle, define a new matching µ′ by:



µ(j), if j ̸∈ {i1 , i2 , . . . , in };
µ′ (j) =
µ(i if j = iℓ .
ℓ+1 ),

Note that the matching µ′ continues to be stable and it Pareto dominates µ.

 11.39 Theorem (Theorem 1 in Erdil and Ergin (2008)): In a school choice problem ⟨I, S, q, P, ≻⟩, let µ be a stable match-
ing. If µ is Pareto dominated by another stable matching ν, then it admits a stable improvement cycle.

11.40 Proof of Theorem 11.39.

(1) Suppose that µ and ν are stable matchings and that ν Pareto dominates µ.
(2) Let I ′ denote the set of students who are strictly better off under ν. Let S ′ = µ(I ′ ) be the set of schools to
which students in I ′ are assigned to under µ.
(3) Lemma 9.38 implies that µ(I ′ ) = ν(I ′ ) = S ′ .
(4) Thus, for each s ∈ S ′ , there exists a student i such that s = ν(i)Pi µ(i), i.e., i desires s at µ and is assigned to
s under ν.
(5) For each s ∈ S ′ , let is denote the highest ≻s -priority student among those in I ′ that desire s at µ.
(6) Let school µ(is ) point to s.
(7) By Lemma 9.38, µ(is ) ∈ S ′ .
(8) Since is desires s at µ, µ(is ) ̸= s.
11.3. Stable improvement cycle algorithm 178

(9) Thus, we can repeat this for each school s ∈ S ′ and find a school t ∈ S ′ \ {s} that points to s.
(10) Since each school in S ′ is pointed to by a different school in S ′ , there exists a cycle of distinct schools
s1 , s2 , . . . , sn = s0 (n ≥ 2) in S ′ , where sℓ points to sℓ+1 for ℓ = 0, 1, . . . , n − 1.
(11) Let iℓ = isℓ+1 for ℓ = 0, 1, . . . , n − 1. Then µ(iℓ ) = sℓ , and iℓ desires sℓ+1 = µ(iℓ+1 ) at µ.

µ(is ) → s = ν(is ) ⇒ µ(iℓ ) = µ(isℓ+1 ) = sℓ → sℓ+1 = ν(isℓ+1 ) = ν(iℓ ) = µ(iℓ+1 ).

(12) Let ds denote the highest ≻s -priority students among those who desire s at µ. In the following, we will show
that iℓ = dµ(iℓ+1 ) . For simplicity, denote dµ(iℓ+1 ) by j.
/ I ′ and j ≻µ(iℓ+1 ) iℓ .
(13) Suppose iℓ ̸= j. Thus, j ∈
(14) Then µ(j) = ν(j) by Lemma 9.38.
(15) Since j desires µ(iℓ+1 ) at µ, j also desires µ(iℓ+1 ) at ν.
(16) This contradicts the stability of ν, since j has higher ≻µ(iℓ+1 ) -priority than iℓ , who is matched to ν(iℓ ) =
µ(iℓ+1 ) under ν.

11.41 In a school choice problem ⟨I, S, q, P, ≻⟩ (with strict priorities), we cannot find a stable improvement cycle for the
DA matching.
However, once we remove some students who are matched with essentially underdemanded schools, there could
be a stable improvement cycle.

11.42 Iterative stable improvement cycles algorithm (Wang (2015)):

Step 0: Run DA algorithm and obtain a temporary matching µ0 .


Step k: (1) Identify the schools that are underdemanded at matching µk−1 , settle the matching at these schools,
and remove these schools and the students matched with them.
(2) For each non-consenting student i removed with the underdemanded schools, each remaining school s
that i desires, and each remaining student j such that i ≻s j, remove s from j’s preference.
(3) For the remaining schools and students, identify all stable improvement cycles and carry out these cycles
to obtain the matching µk . If there is no stable improvement cycle, let µk = µk−1 , and move forward to
the next round.
End: The algorithm terminates when all schools are removed.

11.43 Theorem (Theorem 1 in Wang (2015)): For every school choice problem, the matching produced by ISIC is the
same as the outcome of EADAM when all students consent.
Chapter 12
School choice with weak priorities

Contents
12.1 Weak priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
12.2 DA with tie breaking rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
12.3 Stable improvement cycles algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181

12.1 Weak priorities

12.1 In the context of school choice, it might be reasonable to assume that the students have strict preferences, but
school priority orderings are typically determined according to criteria that do not provide a strict ordering of all
the students. Instead, school priorities are weak orderings with quite large indifference classes.
For instance, in Boston there are mainly five indifference classes for each school in the following order:

(i) the students who already attend the school,


(ii) the students who have siblings at that school (sibling) and are in the reference area of the school (walk zone),
(iii) sibling,
(iv) walk zone,
(v) all other students.

12.2 There are at least two ways to break all the indifference classes.

• Single tie breaking: Use one lottery to decide the ordering on all students and, whenever two students are in
the same indifference class, break the tie use the ordering.
• Multiple tie breaking: Draw one lottery for each school, and whenever two students are in the same indiffer-
ence class for a school, break the tie using the ordering for that particular school.

Then, one can apply DA to obtain a matching with respect to the strict priority profile derived from the original
one.

12.3 Policymakers from the NYC Department of Education believed that DA with single tie breaking rule is less equitable
than multiple tie breaking rule:

179
12.2. DA with tie breaking rules 180

If we want to give each child a shot at each program, the only way to accomplish this is to run a new
random. …. I cannot see how the children at the end of the line are not disenfranchised totally if only
one run takes place. I believe that one line will not be acceptable to parents. When I answered questions
about this at training sessions, (it did come up!) people reacted that the only fair approach was to do
multiple runs.

12.4 Simulation (Table 1 in Abdulkadiroğlu et al. (2009)) suggests that single tie breaking rule is better in efficiency,
although it is not too clear-cut.

12.5 Abdulkadiroğlu et al. (2015) showed that, when there is no intrinsic priority and the market is large, DA-STB is
more efficient than DA-MTB.
Intuition: DA’s inefficiency comes from students displacing each other. That is less likely in STB than in MTB.

12.2 DA with tie breaking rules

12.6 Proposition: DA with any tie breaking rule is stable.

Proof. Since the breaking of indifferences does not switch the positions of any two students in any priority order,
the outcome would also be stable with respect to the original priority structure.

12.7 Proposition: DA with any tie breaking rule is strategy-proof.

Proof. Straightforward.

12.8 DA with tie breaking rules does not necessarily bring us the student-optimal stable matching.
Example: Consider the school choice problem ⟨I, S, q, P, ≿⟩, where I = {i, j, k}, S = {s1 , s2 }, qs1 = qs2 = 1,
and

i j k s1 s2
s2 s1 s1 i k
s1 s2 j, k i

Table 12.1

The tie-breaking rule either breaks ≿s1 as i ≻s1 j ≻s1 k or as i ≻s1 k ≻s1 j, and the corresponding DA produces
two stable matching, respectively
[ ] [ ]
i j k ′ i j k
µ= and µ = .
s1 ∅ s2 s2 ∅ s1

Clearly, µ is Pareto dominated by µ′ .

12.9 DA with tie breaking rules may lead to a stable matching such that there may be another stable matching that is
better off for everyone.
Example: I = {i, j, k}, S = {s1 , s2 , s3 }, each school has one seat,
12.3. Stable improvement cycles algorithm 181

i j k s1 s2 s3
s2 s3 s2 i j k
s1 s2 s3 j, k i, k i, j
s3 s1 s1

Table 12.2

Assume that ties are broken in the order i ≻ j ≻ k for each school. DA with this tie breaking rule finds
[ ]
i j k
µ= .
s1 s2 s3

However, everyone prefers [ ]


i j k
µ′ = ,
s1 s3 s2

and µ′ is stable with respect to the original priority.

12.10 If the priorities of schools are strict, then DA produces a constraint efficient matching. However, the two examples
above illustrate that DA with tie breaking rules may not bring us a constrained efficient matching, provided that
the priorities of schools are not strict.

12.11 Theorem (Theorem 1 in Abdulkadiroğlu et al. (2009)): For any tie breaking rule, there is no mechanism that is
strategy-proof and dominates DA with the given tie breaking rule.

Proof. Recall Theorem 9.37.

In other words, whatever efficiency improvement upon DA with tie breaking rules may become non-strategy-proof.
On the other hand, we could improve the efficiency upon DA with tie breaking rules without hurting the stability.

12.3 Stable improvement cycles algorithm


12.12 Consider the school choice problem ⟨I, S, q, P, ≿⟩, where I = {i, j, k}, S = {s1 , s2 }, qs1 = qs2 = 1, and

i j k s1 s2
s2 s1 s1 i k
s1 s2 j, k i

Table 12.3

We choose the tie breaking rule i ≻s1 j ≻s1 k.


DA with this tie breaking rule produces [ ]
i j k
µ= .
s1 ∅ s2
[ ]
′ i j k
Clearly, µ is Pareto dominated by µ = .
s2 ∅ s1
Notice that i desires s2 and j and k desire s1 . Besides, j and k share the same priority at school s1 . Thus, i and
k can make an exchange so that finally i gets s2 and k gets s1 . Meanwhile, such an exchange does not violate j’s
priority.
12.3. Stable improvement cycles algorithm 182

12.13 In a school choice problem ⟨I, S, q, P, ≿⟩ with a given matching µ, for each school s ∈ S, let Ds be the set of
highest ≿s -priority students among those who desire s (i.e., who prefers s to her assignment under µ).
In the Example above, Ds1 = {j, k} and Ds2 = {i}.

 12.14 Definition: A stable improvement cycle consists of distinct students i , i , . . . , i 1 2 n = i0 (n ≥ 2) such that for each
ℓ = 0, 1, . . . , n − 1,

(1) iℓ is matched to some school under µ;


(2) iℓ desires µ(iℓ+1 ); and
(3) iℓ ∈ Dµ(iℓ+1 ) .

12.15 Given a stable improvement cycle, define a new matching µ′ by:



µ(j), if j ̸∈ {i1 , i2 , . . . , in };
µ′ (j) =
µ(i if j = iℓ .
ℓ+1 ),

Note that the matching µ′ continues to be stable and it Pareto dominates µ.

 12.16 Theorem (Theorem 1 in Erdil and Ergin (2008)): In a school choice problem ⟨I, S, q, P, ≿⟩, let µ be a stable match-
ing. If µ is Pareto dominated by another stable matching ν (i.e. µ is not constraint efficient), then it admits a stable
improvement cycle.

Proof. (1) Suppose that µ and ν are stable matchings and that ν Pareto dominates µ.
(2) Let I ′ denote the set of students who are strictly better off under ν. Let S ′ = µ(I ′ ) be the set of schools to
which students in I ′ are assigned to under µ.
(3) Lemma 9.38 implies that µ(I ′ ) = ν(I ′ ) = S ′ .
(4) Thus, for each s ∈ S ′ , there exists a student i such that s = ν(i)Pi µ(i), i.e., i desires s at µ and is assigned to
s under ν.
(5) For any s ∈ S ′ , let Ds′ denote the set of highest ≿s -priority students among those in I ′ that desire s at µ.
(6) Fix an arbitrary student is ∈ Ds′ and let school µ(is ) point to s.
(7) By Lemma 9.38, µ(is ) ∈ S ′ .
(8) Since is desires s at µ, µ(is ) ̸= s.
(9) Thus, we can repeat this for each school s ∈ S ′ and find a school t ∈ S ′ \ {s} that points to s.
(10) Since each school in S ′ is pointed to by a different school in S ′ , there exists a cycle of distinct schools
s1 , s2 , . . . , sn = s0 (n ≥ 2) in S ′ , where sℓ points to sℓ+1 for ℓ = 0, 1, . . . , n − 1.
(11) Let iℓ = isℓ+1 for ℓ = 0, 1, . . . , n − 1. Then µ(iℓ ) = sℓ , and iℓ desires sℓ+1 = µ(iℓ+1 ) at µ.

µ(is ) → s = ν(is ) ⇒ µ(iℓ ) = µ(isℓ+1 ) = sℓ → sℓ+1 = ν(isℓ+1 ) = ν(iℓ ) = µ(iℓ+1 ).

(12) Let Ds denote the set of highest ≿s -priority students among those who desire s at µ. In the following, we will
show that iℓ ∈ Dµ(iℓ+1 ) .
/ Dµ(iℓ+1 ) . Thus, Dµ(iℓ+1 ) has no intersection with I ′ .
(13) Suppose that iℓ ∈
/ I ′ and j ≻µ(iℓ+1 ) iℓ .
(14) For any j ∈ Dµ(iℓ+1 ) , we have j ∈
/ I ′ , µ(j) = ν(j) by Lemma 9.38.
(15) Since j ∈
12.3. Stable improvement cycles algorithm 183

(16) Since j desires µ(iℓ+1 ) at µ, j also desires µ(iℓ+1 ) at ν.


(17) This contradicts the stability of ν, since j has high ≿µ(iℓ+1 ) -priority than iℓ , who is matched to ν(iℓ ) =
µ(iℓ+1 ) under ν.


12.17 Stable improvement cycles algorithm:

Step 0: Run DA algorithm and obtain a temporary matching µ0 .


Step k: (1) Find a stable improvement cycle for µk−1 : for schools s and t, let s → t if some student i ∈ Dt is
matched to s under µk−1 .
(2) If there are any cycles, select one. For each s → t in this cycle, select a student i ∈ Dt with µk−1 (i) = s.
Carry out this stable improvement cycle to obtain µk .
End: The algorithm stops when there is no cycle.

12.18 Starting with an arbitrary stable matching, SIC produces a constrained efficient stable matching.

12.19 SIC is not strategy-proof.


Question. Hint: Consider 12.11.

12.20 The SIC algorithm is similar to but different from TTC:

• The cycles here are stable improvement cycles; students are pointing to all schools that are better than their
current match. While in TTC, each agent points to her most favorite school.
• For convenience, the algorithm is described through the pointings among schools instead of that among stu-
dents. Each school may point to none or multiple other schools. Hence, each school may be involved in
multiple cycles, and cycle-selection is an issue (the simple way is to randomly pick one).

12.21 EADAM and simplified EADAM can also be applied to resolve the efficiency loss resulting from weak priorities.
See Kesten (2010) and Tang and Yu (2014).

12.22 There may not exist a strategy-proof selection of constrained efficient matchings.
Example: Let I = {i, j, k}, S = {a, b, c}, each school has one seat,

i j k a b c
b b a i k k
c c b j i, j j
a a c k i

Table 12.4

The two constrained efficient matchings are


[ ] [ ]
i j k ′ i j k
µ= and µ = .
b c a c b a

Let both Pi′ and Pj′ be b, a, c. At (Pa′ , P−a , ≿), only µ is constrained efficient, and at (Pb′ , P−b , ≿), only µ′ is
constrained efficient.
If φ is a constrained efficient mechanism, then φ[Pa′ , P−a , ≿] has to be µ, and φ[Pb′ , P−b , ≿] has to be µ′ . So at
(P, ≿), one needs to select one of them. However, whenever φ selects the matching that is more favorable to one
of a and b, the other will misreport.
12.3. Stable improvement cycles algorithm 184
Chapter 13
Affirmative action

Contents
13.1 The formal model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
13.2 Affirmative action policies with majority quotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
13.3 Affirmative action policies with minority reserves . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

13.1 Affirmative action policies have been widely used in public education although they have also received various
criticisms. There are two affirmative action policies:

• Majority quotas: the number of majority students matched to school s cannot exceed the majority quota qsM .
• Minority reserves: if the number of minority students matched to school s is less than the minority reserve
rsm , then minority students are always preferred to majority students.

13.2 We are interested in the question whether these affirmative action policies really benefit minority students.

13.1 The formal model


 13.3 A school choice problem with minorities is tuple Γ = ⟨I, S, q, P, ≻⟩, where

• I is a finite set of students. The set of students are partitioned to two subsets, the set I M of majority students
and I m of minority students.
• S is a finite set of schools.
• For each s ∈ S, qs is the total capacity of school s.
• For each school s ∈ S, ≻s is a strict priority order over the set of students.
• For each student i ∈ I, Pi is a strict preference over S and being unmatched (being unmatched is denoted
by ∅). If sPi ∅, then school s is said to be acceptable to student i. For each i ∈ I, let Ri be the symmetric
extension of Pi .

 13.4 A matching µ is a mapping from I to S ∪ {∅} such that |µ−1 (s)| ≤ qs for all s ∈ S.

 13.5 A mechanism is a systematic procedure that determines a matching for each school choice problem with minority
students.

185
13.2. Affirmative action policies with majority quotas 186

 13.6 A matching µ Pareto dominates matching ν if µ(i)Ri ν(i) for all i ∈ I and µ(i)Pi ν(i) for at least one i ∈ I. A
matching is Pareto efficient if it is not Pareto dominated by another matching.
Affirmative action policies are implemented to improve the matches of minorities, sometimes at the expense of
majorities. Therefore, we also need an efficiency concept to analyze the welfare of minority students. A matching
µ Pareto dominates matching ν for minorities if µ(i)Ri ν(i) for all i ∈ I m and µ(i)Pi ν(i) for at least one i ∈ I m .
A matching is Pareto efficient for minorities if it is not Pareto dominated for minorities by another matching.

13.2 Affirmative action policies with majority quotas

13.7 For each s ∈ S, let qsM be the type-specific capacity for majority students (qsM ≤ qs ), which is implemented by
prohibiting schools to admit more than qsM of majority students. For each s ∈ S, let qs = (qs , qsM ).
Given (qsM )s∈S , a matching µ is feasible under majority quotas if |µ−1 (s)∩I M | ≤ qsM for all s ∈ S. This condition
requires that the number of majority students matched to each school s is at most its type-specific capacity qsM .

 13.8 Definition: Given (qsM )s∈S , a matching µ is stable under majority quotes if

(1) µ(i)Ri ∅ for each i ∈ I, and


(2) if sPi µ(i), then either
(i) i ∈ I m , |µ−1 (s)| = qs and i′ ≻s i for all i′ ∈ µ−1 (s), or
(ii) i ∈ I M , |µ−1 (s) ∩ I M | < qsM , |µ−1 (s)| = qs and i′ ≻s i for all i′ ∈ µ−1 (s), or
(iii) i ∈ I M , |µ−1 (s) ∩ I M | = qsM , and i′ ≻s i for all i′ ∈ µ−1 (s) ∩ I M .

All conditions except for (2-iii) are standard. Condition (2-iii) describes a case in which a potential blocking is not
realized because of a type-specific capacity constraint for the majority students: Student i wants to be matched with
school s, but she is a majority student and the seats for majority students are filled by students who have higher
priority than i at s.

 13.9 Definition: A mechanism is stable under majority quotes if it always selects a stable matching under majority quotes
for each school choice problem with minorities.

13.10 Deferred acceptance algorithm with majority quotas.

Step 1: Each student i applies to her first choice school (call it s). The school s rejects i if
• qs seats are filled by students who have higher priority than i at s, or
• i ∈ I M and qsM seats are filled by students in I M who have higher priority than i at s.
Each school s keeps all other students who applied to s.
Step k: Start with the tentative matching obtained at the end of Step (k−1). Each student i applies to her first choice
school (call it s) among all schools that have not rejected i before. The school s rejects i if
• qs seats are filled by students who have higher priority than i at s, or
• i ∈ I M and qsM seats are filled by students in I M who have higher priority than i at s.
Each school s keeps all other students who applied to s.
End: The algorithm terminates at a step in which no rejection occurs, and the tentative matching at that step is
finalized.
13.2. Affirmative action policies with majority quotas 187

 13.11 Theorem: Abdulkadiroğlu and Sönmez (2003) show that the outcome of DA with majority quotas is the student-
optimal stable matching, a stable matching that is unanimously most preferred by all students among all stable
matchings.

13.12 Top trading cycles mechanism with majority quotas.

Start: For each school s, set its total counter at its total capacity qs and its majority-specific counter at its type-
specific capacity qsM .
Step 1: • Each school points to a student who has the highest priority at that school.
• Each student i points to her most preferred school that still has a seat for her, that is, a school whose total
counter is strictly positive and, if i ∈ I M , its majority-specific counter is strictly positive.
• There exists at least one cycle (if a student points to ∅, it is regarded as a cycle). Every student in a cycle
receives the school she is pointing to and is removed.
• The counter of each school is reduced by one. If the assigned student is in I M , then the school matched
to that student reduces its majority-specific counter by one.
Step k: Start with the matching and counter profile reached at the end of Step (k−1).
• Each school points to a student who has the highest priority at that school.
• Each student i points to her most preferred school that still has a seat for her, that is, a school whose total
counter is strictly positive and, if i ∈ I M , its majority-specific counter is strictly positive.
• There exists at least one cycle (if a student points to ∅, it is regarded as a cycle). Every student in a cycle
receives the school she is pointing to and is removed.
• The counter of each school is reduced by one. If the assigned student is in I M , then the school matched
to that student reduces its majority-specific counter by one.
End: If no student remains, terminate.

 13.13 Theorem (Theorem 1 in Kojima (2012)): Under DA with majority quotas, the affirmative action may hurt all the
minority students.

Proof. (1) Consider a problem without affirmative action: I = {i1 , i2 , i3 } with I M = {i1 , i2 } and I m = {i3 },
S = {s1 , s2 }, qs1 = (2, 2), qs2 = (1, 1), and preferences and priorities are as follows:

i1 i2 i3 s1 s2
s1 s1 s2 i1 i2
s2 s1 i2 i3
i3 i1

Table 13.1

(2) DA results in [ ]
s1 s2
µ= .
i1 , i2 i3

(3) Now consider a new problem Γ̃ = ⟨I, S, q̃, P, ≻⟩ where s2 applies the affirmative action q̃s2 = (2, 1).
(4) In Γ̃, DA results in [ ]
s1 s2
µ̃ = .
i1 , i3 i2
13.2. Affirmative action policies with majority quotas 188

(5) Student i3 is strictly worse off under µ̃ than under µ. Therefore, µ̃ is Pareto dominated by µ for the minority.

13.14 In the example presented in the proof, it is not only the minority student but also the majority students that are
weakly worse off in Γ̃.
The reason that a quota for majority students can have adverse effects on minority students is simple. Consider
a situation in which a school s is mostly desired by majorities. Then having a majority quota for s decreases the
number of majority students who can be assigned to s even if there are empty seats. This, in turn, increases the
competition for other schools and thus can even make the minority students worse off.

13.15 The following example illustrate the case where the affirmative action benefits everyone, including the majority
students, under DA with majority quotas.
Consider the following problem without affirmative action: I = {i1 , i2 , i3 , i4 } with I M = {i1 , i2 } and I m =
{i3 , i4 }, S = {s1 , s2 }, qs1 = (2, 2), qs2 = (1, 1), preferences and priorities are as follows:

i1 i2 i3 i4 s1 s2
s1 s1 s1 s2 i1 i3
s2 s1 i4 i4
..
i2 .
i3

Table 13.2

Then DA with majority quotas results in [ ]


s1 s2 ∅
µ=
i1 , i4 i3 i2

Consider a new problem Γ̃ = ⟨I, S, q̃, P, ≻⟩ where s1 applies the affirmative action q̃s1 = (2, 1). Then in this
problem, DA with majority quotas results in
[ ]
s1 s2 ∅
µ̃ =
i1 , i3 i4 i2

Every student is weakly better off under µ̃ than under µ: Students i1 and i2 are indifferent, whereas i3 and i4 are
strictly better off.

 13.16 Theorem (Theorem 3 in Kojima (2012)): Under TTC with majority quotas, the affirmative action may hurt the
minority students.

Proof. (1) Consider the problem without affirmative action: I = {i1 , i2 , i3 , i4 } with I M = {i1 , i2 } and I m =
{i3 , i4 }, S = {s1 , s2 , s3 }, qs1 = (2, 2), qs2 = (1, 1), qs3 = (1, 1), and preferences and priorities are as
follows:
13.3. Affirmative action policies with minority reserves 189

i1 i2 i3 i4 s1 s2 s3
s1 s1 s3 s2 i1 i2 i4
s3 i2 i3
i3
i4

Table 13.3

(2) TTC produces the matching [ ]


s1 s2 s3
µ=
i1 , i2 i4 i3

(3) Now suppose that s1 applies the affirmative action q̃s1 = (2, 1).
(4) In the new problem, TTC produces the matching
[ ]
′ s1 s2 s3 ∅
µ =
i1 i4 i2 i3

(5) Every student is weakly worse off under µ′ than under µ: Student i1 and i4 are indifferent, whereas i2 and i3
are strictly worse off. Note that i3 is a minority student.

This result shows that TTC with majority quotas does not guarantee that an affirmative action has an intended effect
to help the minority. Thus, the difficulty of affirmative action policies is not confined to DA with majority quotas.
Another remark is that every student is made weakly worse off by the affirmative action in the example used in the
proof. Thus, it is possible that the policy unambiguously hurts welfare.

13.3 Affirmative action policies with minority reserves

13.17 For each s ∈ S, let rsm be the type-specific capacity for minority students (rsm ≤ qs ), which gives priority to
minority students up to the reserve numbers.
Under minority reserves: majority students may take the seats reserved for minority students if no minority students
desire those seats.
Whenever we compare the effects of minority reserves (rsm )s∈S and majority quotas (qsM )s∈S , we assume that
rsm + qsM = qs for each s ∈ S.

 13.18 Definition: Given (r m


s )s∈S , a matching µ is stable under minority reserves if

(1) µ(i)Ri ∅ for each i ∈ I, and


(2) if sPi µ(i), then either
(i) i ∈ I m , |µ−1 (s)| = qs and i′ ≻s i for all i′ ∈ µ−1 (s), or
(ii) i ∈ I M , |µ−1 (s) ∩ I m | > rsm , |µ−1 (s)| = qs and i′ ≻s i for all i′ ∈ µ−1 (s), or
(iii) i ∈ I M , |µ−1 (s) ∩ I m | ≤ rsm , and i′ ≻s i for all i′ ∈ µ−1 (s) ∩ I M .

Condition (2-i) describes a situation where (i, s) does not form a blocking pair because i is a minority student
and s prefers all students in s to i. In condition (2-ii), whereas blocking does not happen because i is a majority
13.3. Affirmative action policies with minority reserves 190

student, the number of minority students in s exceeds minority reserves and s prefers all students in s to i. Finally,
in condition (2-iii), (i, s) does not form a blocking pair because i is a majority student, the number of minority
students in s does not exceed minority reserves, and s prefers all majority students in s to i.

 13.19 Definition: A mechanism is stable under minority reserves if it always selects a stable matching under minority
reserves for each school choice problem.

13.20 Deferred acceptance algorithm with minority reserves:

Step 1: Each student i applies to her first-choice school. Each school s first accepts as many as rsm minority appli-
cants with the highest priorities if there are enough minority applicants. Then it accepts applicants with the
highest priorities from the remaining applicants until its capacity is filled or the applicants are exhausted. The
rest of the applicants, if any remain, are rejected by s.
Step k: Start with the tentative matching obtained at the end of Step (k−1). Each student i who got rejected at Step
(k−1) applies to her next-choice school. Each school s considers the new applicants and students admitted
tentatively at Step (k−1). Among these students, school s first accepts as many as rsm minority students with
the highest priorities if there are enough minority students. Then it accepts students with the highest priorities
from the remaining students. The rest of the students, if any remain, are rejected by s. If there are no rejections,
then stop.
End: The algorithm terminates when no rejection occurs and the tentative matching at that step is finalized.

13.21 Proposition (Proposition 1 in Hafalir et al. (2013)): The student-proposing deferred acceptance algorithm with mi-
nority reserves produces a stable matching that assigns the best outcome among the set of stable matching outcomes
for each student and is weakly group strategy-proof.

 13.22 Theorem (Theorem 1 in Hafalir et al. (2013)): Consider majority quotas (q M


s )s∈S and minority reserves (rsm )s∈S
such that rsm + qsM = qs for each s ∈ S. Let µ be a stable matching under majority quotas (qsM )s∈S . Then either µ
is stable under minority reserves (rsm )s∈S or there exists a matching that is stable under minority reserves (rsm )s∈S
that Pareto dominates µ.
This result implies that for any stable matching under majority quotas, there exists a stable matching under the
corresponding minority reserves that Pareto dominates it.

13.23 Theorem (Theorem 2 in Hafalir et al. (2013)): Consider minority reserves (rsm )s∈S . Let µr and µ be the matchings
produced by the DA with or without minority reserves (rsm )s∈S , respectively, for a given preference profile. Then
there exists at least one minority student i such that µr (i)Ri µ(i).
Theorem 13.13 shows that using majority quotas may hurt all the minority students in some settings. This result
shows that this is impossible with minority reserves.

13.24 Example (Example 1 in Hafalir et al. (2013)): On very peculiar cases, such as the example below, imposing minority
reserves can make some minorities worse off while leaving the rest indifferent.
Consider the problem: I M = {i1 }, I m = {i2 , i3 }, S = {s1 , s2 , s3 }, qs1 = qs2 = qs3 = 1, and students’
preferences and schools’ priorities are given by the table Minority reserves are given by rm = (0, 0, 0). In this

i1 i2 i3 s1 s2 s3
s1 s3 s1 i1 i1 i1
s3 s1 s2 i2 i2 i2
s2 s2 s3 i3 i3 i3
13.3. Affirmative action policies with minority reserves 191

problem, the unique stable matching is [ ]


s1 s2 s3
µ= .
i1 i3 i2

However, when minority reserves are rm = (1, 0, 0). In the new problem, the unique stable matching is
[ ]
s1 s2 s3
µ′ = .
i2 i3 i1

With minority reserves, i1 gets rejected from s1 because of the presence of minority reserves at the first step of the
algorithm. Then i1 applies to s3 and s3 rejects i2 in return. Next, i2 applies to s1 and s1 rejects i3 . Finally, i3 applies
to s2 , which accepts her. Therefore, the introduction of minority reserves creates a rejection chain that makes some
minority students worse off. Hence an increase in the minority reserves of s1 makes i2 worse off and i3 indifferent.

13.25 Top trading cycles algorithm with minority reserves:

Step 1: If a school has minority reserves, then it points to its most preferred minority student; otherwise it points
to the most preferred student.
Each student points to the most preferred school if there is an acceptable school and otherwise points to
herself.
There exists at least one cycle. Each student in any of the cycles is matched to the school she is pointing to (if
she is pointing to herself, then she gets her outside option).
All students in the cycles and schools that have filled their capacities are removed.
Step k: If a school has not filled its minority reserves, then it points to the most preferred minority student if there
is any minority student left. Otherwise, it points to the most preferred student.
Each student points to the most preferred school if there is an acceptable school and otherwise points to
herself.
There exists at least one cycle. Each student in any of the cycles is matched to the school she is pointing to (if
she is pointing to herself, then she gets her outside option).
All students in the cycles and schools that have filled their capacities are removed.
End: If there is no cycle, then stop.

13.26 Proposition (Proposition 5 in Hafalir et al. (2013)): TTC with minority reserves is Pareto efficient and strongly
group strategy-proof.

13.27 Theorem (Theorem 4 in Hafalir et al. (2013)): Suppose that µr and µ are the matchings produced by TTC with or
without minority reserves rm for a given preference profile. Then there exists i ∈ I m such that µr (i)Ri µ(i).
This result implies that we cannot make all minority students worse off by having minority reserves.
13.3. Affirmative action policies with minority reserves 192
Part IV

Kidney exchange

193
194
Chapter 14
Kidney exchange I

Contents
14.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
14.2 The model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
14.3 Multi-way kidney exchanges with strict preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

14.1 Background
14.1 Transplant is an important treatment of serious kidney diseases. Over 90,000 patients are on waiting lists for kidney
in the US. In 2011, there were

• 11,043 transplants from diseased donors,


• 5,771 transplants from living donors, while
• 4,697 patients died while on the waiting list (and 2,466 others were removed because they were “too sick to
transplant”).

14.2 Buying and selling kidneys is illegal in the US as well as many other countries.
Section 301 of the National Organ Transplant Act states:

It shall be unlawful for any person to knowingly acquire, receive or otherwise transfer any human organ
for valuable consideration for use in human transplantation.

Given that constraint, donation is the most important source of kidneys.

14.3 There are two sources of donation:

• Deceased donors: In the US and Europe a centralized priority mechanism is used for the allocation of deceased
donor kidneys. The patients are ordered in a waiting list, and the first available donor kidney is given to the
patient who best satisfies a metric based on the quality of the match, waiting time in the queue, age of the
patient, and other medical and fairness criteria.

195
14.1. Background 196

• Living donors: Living donors usually come from friends or relatives of a patient (because the monetary trans-
action is prohibited).

Live donation has been increasing recently.

Donor types 2008 1998 1988


All donors 10,920 9,761 5,693
Deceased donors 5,992 5,339 3,876
Live donors 4,928 4,422 1,817

Table 14.1: Number of donors by donor types. Data obtained at [Link]

14.4 For a successful transplant, the donor kidney needs to be compatible with the patient.

(1) Blood type compatibility: There are four blood types, O, A, B and AB.

A B

AB

• O type patients can receive kidneys from O type donors.


• A type patients can receive kidneys from O or A type donors.
• B type patients can receive kidneys from O or B type donors.
• AB type patients can receive kidneys from donors of any blood type (that is, O, A, B or AB).
(2) There is another compatibility issue around some proteins called HLA Tissue Compatibility.

14.5 A problem with transplant from live donors: transplant is carried out if the donor kidney is compatible with the
patient. Otherwise the willing donor goes home and the patient cannot get transplant.

14.6 Question: Is there any way to increase the number and quality of transplant?

14.7 A paired exchange (aka paired donation) involves two incompatible patient-donor pairs such that the patient in
each pair feasibly receives a transplant from the donor in the other pair. This pair of patients exchange donated
kidneys. The number of pairs in a paired exchange can be larger than two.

Donor 1 Patient 1

Patient 2 Donor 2

Figure 14.1: A paired exchange.

Take a look at the web page of Alliance for Paired Donation at [Link]
14.2. The model 197

Donor 1 Patient 1

Deceased donor waiting list

1st Patient
2nd Patient
3rd Patient
... ...

Figure 14.2: A list exchange.


14.8 A list exchange involves an exchange between one incompatible patient-donor pair and the deceased donor waiting
list. The patient in the pair becomes the first priority person on the deceased donor waiting list in return for the
donation of her donor’s kidney to someone on the waiting list.
List exchanges can potentially harm O blood-type patients waiting on the deceased donor waiting list. Since the O
blood type is the most common blood type, a patient with an incompatible donor is most likely to have O blood
herself and a non-O bloodtype incompatible donor. Thus, after the list exchange, the blood type of the donor sent
to the deceased donor waiting list has generally non-O blood, while the patient placed at the top of the list has O
blood. Thus, list exchanges are deemed ethically controversial.

14.2 The model

 14.9 Definition: A kidney exchange problem consists of:

• a set of donor kidney-transplant patient pairs {(k1 , t1 ), . . . , (kn , tn )},


• a set of compatible kidneys Ki ⊆ K = {k1 , . . . , kn } for each patient ti , and
• a strict preference relation ≻i over Ki ∪ {ki , w} where w refers to the priority in the waiting list in exchange
for kidney ki .

 14.10 A matching is a function that specifies which patient obtains which kidney (or waiting list). We assume that the
waiting list can be matched with any number of patients.
A kidney exchange mechanism is a systematic procedure to select a matching for each kidney exchange problem.

 14.11 A matching is Pareto-efficient if there is no other matching that makes everybody weakly better off and at least one
patient strictly better off.
A mechanism is Pareto-efficient if it always chooses Pareto-efficient matchings.

 14.12 A matching is individually rational if each patient is matched with an option that is weakly better than her own
paired-donor.
A mechanism is individually rational if it always selects an individually rational matching.

 14.13 A mechanism is strategy-proof if it is always the best strategy for each patient to:
• reveal her preferences over other available kidneys truthfully, and
14.3. Multi-way kidney exchanges with strict preferences 198

• declare the whole set of her donors (in case she has multiple donors) to the system without hiding any (the
model treats each patient as having a single donor, but the extension to multiple donors is straightforward).

14.3 Multi-way kidney exchanges with strict preferences

14.14 In Roth et al. (2004)’s design the underlying assumptions are as follows:

• Any number of patient-donor pairs can participate in an exchange, i.e., exchanges are possibly multi-way.
• Patients have heterogeneous preferences over compatible kidneys; in particular, no two kidneys have the same
quality, i.e., the preferences of a patient are strict and they linearly order compatible kidneys, the waiting list
option, and her own paired-donor.
• List exchanges are allowed.

14.15 Under these assumptions, this model is very similar to the house allocation model with existing tenants. We will
consider a class of mechanisms that clear through an iterative algorithm.

14.16 In each step,

• each patient ti points either toward a kidney in Ki ∪ {ki } or toward w, and


• each kidney ki points to its paired recipient ti .

 14.17 A cycle is an ordered list of kidneys and patients (k , t , k , t , . . . , k


1 1 2 2 m , tm ) such that kidney k1 points to a patient
t1 , patient t1 points to kidney k2 , . . . , kidney km points to patient tm , and patient tm points to kidney k1 .

14.18 Cycles larger than a single pair are associated with direct exchanges, very much like the paired-kidney-exchange
programs, but may involve more than two pairs, so that patient t1 is assigned kidney k2 , patient t2 is assigned kidney
k3 , . . . , patient tm is assigned kidney k1 .
Note that each kidney or patient can be part of at most one cycle and thus no two cycles intersect.

 14.19 A w-chain is an ordered list of kidneys and patients (k , t , k , t , ..., k


1 1 2 2 m , tm ) such that kidney k1 points to patient
t1 , patient t1 points to kidney k2 , . . . , kidney km points to patient tm , and patient tm points to w.

tail k1 t1

k2

t2
w

...

head tm km

Figure 14.3: A w-chain.

We refer to the pair (km , tm ) whose patient receives a cadaver kidney in a w-chain as the head and the pair (k1 , t1 )
whose donor donates to someone on the cadaver queue as the tail of the w-chain.
14.3. Multi-way kidney exchanges with strict preferences 199

k4 t4

k2 t2 k5 t5 w

k3 t3

k1 t1

Figure 14.4: Five w-chains.

14.20 w-chains are associated with indirect exchanges but unlike in a cycle, a kidney or a patient can be part of several
w-chains.
One practical possibility is choosing among w-chains with a well-defined chain selection rule, very much like the
rules that establish priorities on the cadaveric waiting list.

• The current pilot indirect exchange programs in the United States choose the minimal w-chains, consisting
of a single donor-recipient pair, but this may not be efficient.
• Selection of longer w-chains will benefit other patients as well, and therefore the choice of a chain selection
rule has efficiency implications.
• Chain selection rules may also be used for specific policy objectives such as increasing the inflow of type O
living donor kidneys to the cadaveric waiting list.

14.21 Lemma (Lemma 1 in Roth et al. (2004)): Consider a graph in which both the patient and the kidney of each pair
are distinct nodes as is the wait-list option w. Suppose that each patient points either toward a kidney or w, and
each kidney points to its paired recipient. Then either there exists a cycle, or each pair is the tail of some w-chain.

Proof. (1) Consider a graph where each patient points toward either a kidney or w, and each kidney points to its
paired recipient.
(2) Suppose that there is no cycle.
(3) Consider an arbitrary pair (ki , ti ). Start with kidney ki , and follow the path in the graph.
(4) Since there are no cycles, no kidney or patient can be encountered twice. Hence by the finiteness of pairs, the
path will terminate at w. This is the w-chain initiated by pair (ki , ti ) completing the proof.

14.22 Fixed parameters: First, we take the operation of the cadaver queue as fixed. The cadaver queue can be thought of as
a stochastic arrival process of cadavers and patients, interacting with a scoring rule that determines which patients
are offered which cadaver kidneys.
We also take as fixed how patients whose donors donate a kidney to someone on the queue are given high priority
on the queue, e.g., by being given points in the scoring rule.
We also take as given the size of the live kidney exchange; i.e., the set of patient-donor pairs is taken to be fixed.

14.23 For the mechanism defined below, we assume that when one among multiple w-chains must be selected, a fixed
chain selection rule is invoked. We will consider a number of such rules, and their implications for incentives,
efficiency, and equity.
14.3. Multi-way kidney exchanges with strict preferences 200

Below we list a number of plausible chain selection rules:

(a) Choose minimal w-chains, and remove them.


(b) Choose the longest w-chain and remove it. If the longest w-chain is not unique, then use a tiebreaker to
choose among them.
(c) Choose the longest w-chain and keep it. If the longest w-chain is not unique, then use a tiebreaker to choose
among them.
(d) Prioritize patient-donor pairs in a single list. Choose the w-chain starting with the highest priority pair, and
remove it.
(e) Prioritize patient-donor pairs in a single list. Choose the w-chain starting with the highest priority pair, and
keep it.
(f) Prioritize the patient-donor pairs so that pairs with type O donor have higher priorities than those who do
not. Choose the w-chain starting with the highest priority pair; remove it in case the pair has a type O donor,
but keep it otherwise.

14.24 Throughout the procedure kidneys are assigned to patients through a series of exchanges. Some patients and their
assigned kidneys will be immediately removed from the procedure, while others will remain with their assignments
but they will assume a passive role. So at any point in the procedure, some agents may no longer be participants,
some participants will be active, and the others passive.

14.25 For a given kidney exchange problem, the top trading cycles and chains (TTCC) mechanism determines the ex-
changes as follows.

Step 1: Initially all kidneys are available and all agents are active. At each stage of the procedure
• each remaining active patient ti points to the best remaining unassigned kidney or to the waiting list
option w, whichever is more preferred,
• each remaining passive patient continues to point to her assignment, and
• each remaining kidney ki points to its paired patient ti .
Step 2: By Lemma 14.21, there is either a cycle, or a w-chain, or both.
(a) Proceed to Step 3 if there are no cycles. Otherwise, locate each cycle, and carry out the corresponding
exchange (i.e., each patient in the cycle is assigned the kidney he is pointing to). Remove all patients in a
cycle together with their assignments.
(b) Each remaining patient points to his top choice among remaining kidneys, and each kidney points to
its paired recipient. Locate all cycles, carry out the corresponding exchanges, and remove them. Repeat
until no cycle exists.
Step 3: If there are no pairs left, we are done. Otherwise, by Lemma 14.21, each remaining pair initiates a w-chain.
Select only one of the chains with the chain selection rule. The assignment is final for the patients in the
selected w-chain. In addition to selecting a w-chain, the chain selection rule also determines:
(a) whether the selected w-chain is removed, or
(b) the selected w-chain in the procedure although each patient in it is henceforth passive. If the w-chain is
removed, then the tail kidney is assigned to a patient in the deceased donor waiting list. Otherwise, the
tail kidney remains available in the problem for the remaining steps.
14.3. Multi-way kidney exchanges with strict preferences 201

Step 4: Each time a w-chain is selected, a new series of cycles may form. Repeat Steps 2 and 3 with the remaining
active patients and unassigned kidneys until no patient is left. If there exist some tail kidneys of w-chains
remaining at this point, remove all such kidneys and assign them to the patients in the deceased-donor waiting
list.

14.26 Example (Example 1 in Roth et al. (2004)): Consider a kidney exchange problem with 12 pairs as follows:

t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12


k9 k11 k2 k5 k3 k3 k6 k6 k3 k11 k3 k11
k10 k3 k4 k9 k7 k5 k1 k4 k11 k1 k6 k3
k1 k5 k5 k1 k11 k8 k3 k11 w k4 k5 k9
k6 k6 k8 k4 k6 k9 k2 k5 k11 k8
k2 k7 k10 k5 k10 k3 k6 k10
k8 k3 k1 k8 k7 k12
w w w w

Table 14.2

Suppose that patients are ordered in a priority-list based on their indices starting with the patient with the smallest
index. We use the following chain selection rule: choose the longest w-chain. In case the longest w-chain is not
unique, choose the w-chain with the highest priority patient; if the highest priority patient is part of more than
one, choose the w-chain with the second highest priority patient, and so on. Keep the selected w-chains until the
termination.
Round 1: There is a single cycle C1 = (k11 , t11 , k3 , t3 , k2 , t2 ). Remove the cycle by assigning k11 to t2 , k3 to t11 ,
and k2 to t3 .

t1 k1 t2 k2 t3 k3 t4 k4

k12 t5

t12 k5

k11 w t6

t11 k6

k10 t10 k9 t9 k8 t8 k7 t7

Figure 14.5: Round 1

Round 2: Upon removing cycle C1 , a new cycle C2 = (k7 , t7 , k6 , t6 , k5 , t5 ). Remove it by assigning k7 to t5 , k6 to


t7 , and k5 to t6 .
14.3. Multi-way kidney exchanges with strict preferences 202

t1 k1 t2 k2 t3 k3 t4 k4

k12 t5

t12 k5

k11 w t6

t11 k6

k10 t10 k9 t9 k8 t8 k7 t7

Figure 14.6: Round 2

Round 3: No new cycle forms, and hence each kidney-patient pair starts a w-chain. The longest w-chains are
W1 = (k8 , t8 , k4 , t4 , k9 , t9 ) and W2 = (k10 , t10 , k1 , t1 , k9 , t9 ). Since t1 , the highest priority patient, is in W2 but
not in W1 , choose and fix W2 . Assign w to t9 , k9 to t1 , and k1 to t10 but do not remove them. Kidney k10 , the
kidney at the tail of W2 , remains available for the next round.

t1 k1 t2 k2 t3 k3 t4 k4

k12 t5

t12 k5

k11 w t6

t11 k6

k10 t10 k9 t9 k8 t8 k7 t7

Figure 14.7: Round 3

Round 4: Upon fixing the w-chain W2 , a new cycle C3 = (k4 , t4 , k8 , t8 ) forms. Remove it by assigning k4 to t8
and k8 to t4 .
14.3. Multi-way kidney exchanges with strict preferences 203

t1 k1 t2 k2 t3 k3 t4 k4

k12 t5

t12 k5

k11 w t6

t11 k6

k10 t10 k9 t9 k8 t8 k7 t7

Figure 14.8: Round 4

Round 5: No new cycles form, and the pair (k12 , t12 ) “joins” W2 from its tail to form the longest w-chain W3 =
(k12 , t12 , k10 , t10 , k1 , t1 , k9 , t9 ). Fix W3 , and assign k10 to t12 . Since no patient is left, w-chain W3 is removed,
and kidney k12 at its tail is offered to the highest priority patient at the cadaveric waiting list.

t1 k1 t2 k2 t3 k3 t4 k4

k12 t5

t12 k5

k11 w t6

t11 k6

k10 t10 k9 t9 k8 t8 k7 t7

Figure 14.9: Round 5

 14.27 Theorem (Theorem 1 in Roth et al. (2004)): Consider a chain selection rule such that any w-chain selected at a
nonterminal round remains in the procedure, and thus the kidney at its tail remains available for the next round.
The TTCC mechanism, implemented with any such chain selection rule, is efficient.
14.3. Multi-way kidney exchanges with strict preferences 204

Proof. (1) Let the TTCC mechanism be implemented with a chain selection rule such that any w-chain selected at
a nonterminal round remains in the procedure and the kidney at its tail remains available for the next round.
(2) Any patient whose assignment is finalized in Round 1 has received his top choice and cannot be made better
off.
(3) Any patient whose assignment is finalized in Round 2 has received his top choice among the kidneys not
already assigned as part of an exchange (since chains are not removed, so the kidney at their tail remains
available), and cannot be made better off without hurting a patient whose assignment was finalized in Round 1.
(4) Proceeding in a similar way, no patient can be made better off without hurting a patient whose assignment is
finalized in an earlier round.
(5) Therefore, TTCC mechanism selects a Pareto-efficient matching at any given time provided that w-chains are
removed at the termination.

14.28 Consider a class of priority-based chain selection rules that covers rules (d), (e), and (f): each ordering of patient-
donor pairs together with a fixed pair defines a chain selection rule, and it is given as follows:

(1) Order donor-patient pairs in a single priority list, and fix a pair (kj , tj ).
(2) Whenever a w-chain is to be selected, select the w-chain starting with the highest priority pair (ki , ti ), and
remove the w-chain if the pair (ki , ti ) has strictly higher priority than the fixed pair (kj , tj ), and keep it until
termination otherwise.

14.29 Lemma (Lemma 2 in Roth et al. (2004)): Consider the TTCC mechanism implemented with a priority-based chain
selection rule. Fix the stated preferences of all patients except patient ti at P−i . Suppose that in the algorithm the
assignment of patient ti is finalized at Round s under Pi and at Round s′ under Pi′ . Suppose that s ≤ s′ . Then
the remaining active patients and unassigned kidneys at the beginning of Round s are the same, whether patient ti
announces Pi or Pi′ .

Proof. (1) Patient ti fails to participate in a cycle or a selected w-chain prior to Round s under either preference.
(2) Therefore, at any round prior to Round s not only the highest priority active patient is the same, whether
patient ti announces Pi or Pi′ , but also the same cycles/w-chains form, and in case there are no cycles, the
same w-chain is selected, whether patient ti announces Pi or Pi′ . Hence the remaining active patients and
unassigned kidneys at the beginning of Round s are the same, whether patient ti announces Pi or Pi′ .

 14.30 Theorem (Theorem 2 in Roth et al. (2004)): Consider the chain selection rules (a), (d), (e), and (f). The TTCC
mechanism, implemented with any of these chain selection rules, is strategy-proof.
Among these four chain selection rules, the last two are especially appealing: Rule (e) yields an efficient and strategy-
proof mechanism, whereas Rule (f) gives up efficiency in order to increase the inflow of type O kidneys to the
cadaveric waiting list.

14.31 Proof. We first consider the chain selection rule (a).

(1) Recall that for each patient ti , the relevant part of preference Pi is the ranking up to ki or w, whichever is
more preferred.
(2) Given the preference profile (Pi )ni=1 , construct a new preference profile (Pi′ )ni=1 as follows:
14.3. Multi-way kidney exchanges with strict preferences 205

• for each patient ti with ki Pi w, let Pi′ = Pi ,


• for each patient ti with wPi ki , construct Pi′ from Pi by swapping the ranking of ki and w.
(3) Note that ki Pi′ w for each patient ti and because the relevant part of preferences are the more preferred of ki
and w, ⟨{(ki , ti )}i=1
n
, (Pi′ )ni=1 ⟩, is a housing market.
(4) Let µ denote the outcome of the TTC mechanism for this housing market, and construct matching ν from
matching µ as follows: if Pi′ ̸= Pi and µ(ti ) = ki , then ν(ti ) = w, otherwise, ν(ti ) = µ(ti ).
(5) The key observation is that ν is the outcome of the TTCC mechanism when it is implemented with the minimal
w-chain selecting chain selection rule.
(6) Therefore, by Theorem 4.27, a patient can never receive a more preferred kidney by a preference misrepresen-
tation.
(7) He can receive the wait-list option w by a misrepresentation but cannot profit from it. That is because the
TTCC mechanism never assigns a patient a kidney that is inferior to w. Hence TTCC is strategy-proof with
this choice of chain selection rule.

Next consider any of the priority-based chain selection rules.

(1) Consider a patient ti with true preferences Pi . Fix an announced preference profile P−i for all other patients.
(2) We want to show that revealing his true preferences Pi is at least as good as announcing any other preferences
Pi′ under the TTCC mechanism.
(3) Let s and s′ be the rounds at which patient ti leaves the algorithm under Pi and Pi′ , respectively.
(4) Case 1: s < s′ .
(i) By Lemma 14.29 the same kidneys remain in the algorithm at the beginning of Round s whether patient
ti announces Pi or Pi′ .
(ii) Moreover, patient ti is assigned his top choice remaining at Round s under Pi .
(iii) Therefore, his assignment under Pi is at least as good as his assignment under Pi′ .
(5) Case 2: s ≥ s′ . After announcing Pi′ , the assignment of patient ti is finalized either by joining a cycle, or by
joining a selected w-chain. We will consider the two cases separately.
(6) Case 2a: The assignment of patient ti is finalized either by joining a cycle under Pi′ .
(i) Let (k 1 , t1 , k 2 , . . . , k r , ti ) be the cycle patient ti joins, and thus k 1 be the kidney he is assigned under Pi′ .
(ii) Next suppose that he reveals his true preferences Pi .
(iii) Consider Round s′ . By Lemma 14.29, the same active patients and available kidneys remain at the be-
ginning of this round whether patient ti announces Pi′ or Pi .
(iv) Therefore, at Round s′ , kidney k 1 points to patient t1 , patient t1 points to kidney k 2 , . . . , kidney k r
points to patient ti .
(v) Moreover, they keep on doing so as long as patient ti remains.
(vi) Since patient ti truthfully points to his best remaining choice at each round, he either receives a kidney
better than kidney k 1 or eventually points to kidney k 1 , completes the formation of cycle (k 1 , t1 , k 2 , . . . , k r , ti ),
and gets assigned kidney k 1 .
(7) Case 2b: The assignment of patient ti is finalized by joining a selected w-chain under Pi′ .
(i) Let (k 1 , t1 , k 2 , . . . , k r , ti = tr , k r+1 , . . . , k r+m , tr+m ) be the selected w-chain patient ti joins, where
r ≥ 1 and m ≥ 0, under Pi′ .
(ii) Therefore, under Pi′ , patient ti is assigned the kidney k r+1 if m ≥ 1, and the wait-list option w if m = 0.
14.3. Multi-way kidney exchanges with strict preferences 206

(iii) Also note that, given the considered class of priority-based chain selection rules, pair (k 1 , t1 ) is the high-
est priority pair in Round s′ .
(iv) Next suppose that patient ti reveals his true preferences Pi .
(v) Consider Round s′ . By Lemma 14.29, the same active patients and available kidneys remain at the be-
ginning of this round whether patient ti announces Pi′ or Pi .
(vi) We will complete the proof by showing that, upon announcing his truthful preferences Pi , the assignment
of patient ti is finalized in Round s′ and thus he is assigned his top choice available at the beginning of
Round s.
(vii) Recall that for this case there is no cycle in Round s′ when patient ti announces Pi′ .
(viii) Therefore, when he announces his true preferences Pi , either there is no cycle in Round s′ or there is one
cycle that includes him.
(ix) If it is the latter, then his assignment is finalized in Round s′ , and we are done.
(x) Otherwise, each pair initiates a w-chain by Lemma 14.21, and one of these w-chains has to be selected.
(xi) By the choice of a priority-based chain selection rule, this will be the w-chain that starts with the highest
priority pair (k1 , t1 ).
(xii) But the path starting with kidney k1 passes through patient ti and therefore the selected w-chain includes
patient ti .
(xiii) Hence in this case as well his assignment is finalized in Round s′ completing the proof.

14.32 Example (Example 2 in Roth et al. (2004)): Strategy-proofness of TTCC is lost if one adopts a chain selection rule
that chooses among the longest w-chains.
Consider the problem in Example 14.26, but suppose that patient t4 misrepresents his preferences as P4′ : k5 , k1 , k9 , . . .
improving the ranking of kidney k1 . While Round 1 and Round 2 remain as in Example 14.26, Round 3 changes,
and this time the longest w-chain at Round 3 is W4 = (k8 , t8 , k4 , t4 , k1 , t1 , k9 , t9 ). Therefore, patient t4 is assigned
kidney k1 instead of kidney k8 , making his preference misrepresentation profitable.

 14.33 Proposition (Proposition 1 in Krishna and Wang (2007)): The TTCC algorithm induced by chain selection rule (e)
is equivalent to the YRMH-IGYT algorithm.

14.34 Recall Theorem 6.43: A mechanism is Pareto efficient, individually rational, strategy-proof, weakly neutral, and
consistent if and only if it is a YRMH-IGYT mechanism.
Chapter 15
Kidney exchange II

Contents
15.1 Two-way kidney exchanges with 0 1 preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
15.2 Multi-way kidney exchanges with 0 1 preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
15.3 Dynamic kidney exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
15.4 Lung exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

15.1 Two-way kidney exchanges with 0 1 preferences

15.2 Multi-way kidney exchanges with 0 1 preferences

15.3 Dynamic kidney exchange

15.4 Lung exchange

207
15.4. Lung exchange 208
Part V

Topics

209
210
Chapter 16
The assignment game

Contents
16.1 The core of the game . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
16.2 The formal model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
16.3 The core of the assignment game . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

16.1 Literature: Shapley and Shubik (1972).

16.1 The core of the game

16.2

16.2 The formal model

16.3 The core of the assignment game

211
16.3. The core of the assignment game 212
Chapter 17
Matching with transfers

Contents
17.1 The substitutable preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
17.2 A model with money and gross substitutable preferences . . . . . . . . . . . . . . . . . . . . . . . . 215

17.1 The college admission model can be generalized to the models of many-to-one matching between firms and workers,
by allowing firms to have a larger class of preferences over groups of workers, and by explicitly putting money into
the model, so salaries are determined as part of the outcome of the game, rather than specified in the model as part
of the job description.

17.1 The substitutable preferences


17.2 Definition: A job market model consists of:

• n firms F = {f1 , f2 , . . . , fn },
• m workers W = {w1 , w2 , . . . , wm },
• each worker can be hired by at most one firm, and each firm has quota m,
• each worker w has a strict preference ≻w over firms and remaining unmatched,
• each firm f has a strict preference ≻f over the subsets of workers.

Here we allow firms’ preferences to be non-responsive.

17.3 Definition: A matching µ is a function from the set F ∪ W into 2F ∪ 2W such that

• for each worker w, µ(w) ∈ 2F , |µ(w)| = 1, and µ(w) = ∅ if µ(w) ̸∈ F ,


• for each firm f , µ(f ) ⊆ W , and µ(f ) = ∅ if f does not hire any worker,
• µ(w) = f if and only if w ∈ µ(f ).

17.4 Faced with a set of workers, each firm f can determine which subset of S it would most prefer to hire.
Definition: For any subset S of W , f ’s choice set if Chf (S) = S ′ such that S ′ is contained in S and S ′ ≿f S ′′ for
all S ′′ contained in S.

213
17.1. The substitutable preferences 214

Since we have assumed that preferences are strict, there is always a single set S ′ that f most prefers to hire, out of
any set S of available workers.

17.5 A matching µ is blocked by an individual worker w if w ≻w µ(w), and by an individual firm f if µ(f ) ̸=
Chf (µ(f )).
Note that µ may be blocked by an individual firm f without being individually irrational, since it might still be that
µ(f ) ≻f ∅.

17.6 A matching µ is blocked by a worker-firm pair (w, f ) if µ(w) ̸= f , f ≻w µ(w), and w ∈ Chf (µ(f ) ∪ w).
If the firms have responsive preferences, this definition is equivalent to the one we used for the college admissions
model.

17.7 A matching µ is stable if it is not blocked by any individual worker/firm or any worker-firm pair.

17.8 Example 3.11 shows that the set of stable matchings is empty when preferences are not responsive. We shall consider
a weaker condition than responsiveness that is sufficient to preserve not only nonemptyness of the set of stable
matchings, but also many of the properties noted in Chapter 3.

17.9 Definition: A firm f ’s preferences over sets of workers has the property of substitutability if, for any set S that
contains workers w and w′ , if w is in Chf (S) then w is in Chf (S \ w′ ).
If f has substitutable preferences, then if its preferred set of employees from S includes w, so will its preferred set
of employees from any subset of S that still includes w. This is the sense in which the firm regards worker w and
the other workers in Chf (S) more substitutes than complements: It continues to want to employ w even if some
of the other workers become unavailable.

17.10 Responsive preferences are substitutable, but the converse is not true.
There are two firms {f1 , f2 } and three workers {w1 , w2 , w3 }, with preferences as follows:

≻f1 : {w1 , w2 }, {w1 , w3 }, {w2 , w3 }, {w3 }, {w2 }, {w1 }


≻f2 : {w3 }
≻w : f 1 , f 2

≻f1 is not responsive since {w1 , w2 } ≻f1 {w1 , w3 } even though w3 alone is preferred to w2 alone. But the pref-
erences are substitutable.

17.11 In Example 3.11, some kind of complementarity appears in the preference of c1 : its preference is such that Chc1 ({s1 , s3 }) =
{s1 , s2 }, but Chc1 ({w3 }) = ∅. That is, c1 would like to admit both s1 and s3 , but if s1 is not available then it is no
longer interested in s3 .

17.12 Theorem: When firms have substitutable preferences, the set of stable matchings is always nonempty.
The proof will be by means of the deferred acceptance algorithm with firms proposing.

17.13 Deferred acceptance algorithm with firms proposing:

Step 1: Each firm proposes to its most preferred set of workers, and each worker rejects all but the most preferred
acceptable firm that proposes to him or her.
Step k: Each firm proposes to its most preferred set of workers that includes all of those workers whom it previously
proposed to and who have not yet rejected it, but does not include any workers who have previously rejected
it. Each worker rejects all but the most preferred acceptable firm that has proposed so far.
17.2. A model with money and gross substitutable preferences 215

End: The algorithm stops after any step in which there are no rejections, at which point each firm is matched to
the set of workers to which it has issued proposals that have not been rejected.

17.14 Proof of Theorem:

(1) Consider a firm f and a worker w such that w ∈ Chf (µ(f ) ∪ w).
(2) At some step of the algorithm, f proposed to w and was subsequently rejected, so w prefers µ(w) to f .
(3) Thus, µ is not blocked by the pair (w, f ).
(4) Since w and f are arbitrary, and since µ is not blocked by any individual, µ is stable.

The key observation is that because firms have substitutable preferences, no firm ever regrets that it must continue
to offer employment at subsequent steps of the algorithm to workers who have not rejected its earlier offers.

17.15 Theorem: When firms have substitutable preferences and preferences are strict, the deferred acceptance algorithm
with firm proposing produces a firm-optimal stable matching.

17.16 Theorem: When firms have substitutable preferences and preferences are strict, the deferred acceptance algorithm
with worker proposing produces a worker-optimal stable matching.

17.17 Proposition: When firms have substitutable preferences and preferences are strict, the set of stable matchings is the
same as the core defined by weak domination.

17.2 A model with money and gross substitutable preferences

17.18 Literature: Kelso and Crawford (1982).

17.19 Model:

• m workers W , indexed by i = 1, 2, . . . , m,
• n firms F , indexed by j = 1, 2, . . . , n,
• each worker can be hired by at most one firm, and each firm has quota m,
• the utility to worker i of working for firm j at salary si is given by a strictly increasing function uij (si ), and
for each worker i there is a vector σ i = (σi1 , σi2 , . . . , σin ) where σij represents the lowest salary that worker
i would accept to work for firm j,
• for each firm j and each subset C of workers, there is a nonnegative number y j (C) representing the amount
of income that will accrue to the firm when its employees are precisely the set C of workers. If firm i pays sij

to worker i ∈ C, then the profit of firm j is y j (C) − i∈C sij .

17.20 Assumption: For all workers i and firms j,

(NFL) y j (∅) = 0,
(MP) y j (C ∪ i) − y j (C) ≥ σij for any set C of workers that does not contain worker i.

The second condition says that the marginal contribution of each worker to each firm is never less than the salary
that would make the worker indifferent between working or being unemployed.

17.21 Definition: A matching µ is defined as before. Here we represent it as a set {(j, C j ) : j = 1, 2, . . . , n} where C j

and C j are disjoint for the distinct j and j ′ .
17.2. A model with money and gross substitutable preferences 216

17.22 Definition: An outcome is a triple (µ, π, s), where

• µ = {(j, C j ) : j = 1, 2, . . . , n},
• s = (s1 , s2 , . . . , sm ), and for worker i ∈ C j , si is the salary to worker i paid by firm j,

• π = (π1 , π2 , . . . , πn ) and πj = y j (C j ) − i∈C j si .

17.23 An outcome (µ, π, s) is individually rational of si ≥ σiµ(i) for each worker i, and πj ≥ 0 for each firm j.

17.24 We assume that all salaries si , incomes y j (C j ) and profits πj take on only integer values.

17.25 An individually rational outcome (µ, π, s) will be called a core allocation unless there is a firm j, a subset of workers
C, and a vector r of integer salaries ri , for all workers i in C, such that

πj < y j (C) − ri and uiµ(i) (si ) < uij (ri )
i∈C

for all workers i in C.


If these two inequalities are satisfied for some (j, C, r), then the outcome (µ.π, s) is blocked by (j, C, r).
The first inequality says that firm j can make a higher profit by employing the set of workers C, with salaries ri ,
than by employing the set of workers matched to it by µ at the current salaries si . The second inequality says that
every worker i in the set C prefers to work for firm j at salary ri rather than continue to work for firm µ(i) at salary
si .

17.26 Example: The core is empty.


There are two firms j and k, and workers 1 and 2. The amounts of income y j (·) and y k (·) are given by

{1} {2} {1, 2}


yj 4 1 10
yk 8 5 9

uij (si ) = si , uik (si ) = si , and σij = σik = 0 for both workers i = 1, 2.
The only matchings at which neither worker is unemployed are
( ) ( ) ( ) ( )
j k j k j k j k
µ1 = µ2 = µ3 = µ4 = .
{1, 2} ∅ ∅ {1, 2} {1} {2} {2} {1}

We will show that there is no allocation (π, s) such that (µi , π, s) is a core outcome for any of these µi .
Consider the matching µ1 , π = (πj = 10 − (s1 + s2 ), πk = 0) and s = (s1 , s2 ). This outcome is blocked by
(k, {1}, r1 = s1 + 1) or by (k, {2}, r2 = s2 + 1). Otherwise we have 0 = πk ≥ 8 − (s1 + 1) and 0 = πk ≥
5 − (s2 + 1), and hence s1 + s2 ≥ 11, which contradicts that πj ≥ 0.
( )
Consider the matching µ2 , π = πj = 0, πk = 9 − (s1 + s2 ) and s = (s1 , s2 ). In order for this outcome not
to be blocked by (k, {1}, s1 + 1) or by (k, {2}, s2 + 1) we must have 9 − (s1 + s2 ) = πk ≥ 8 − (s1 + 1) and
( )
9 − (s1 + s2 ) = πk ≥ 5 − (s2 + 1), and so s1 + s2 ≥ 7. But then the triple j, {1, 2}, (r1 = s1 + 1, r2 = s2 + 1)
blocks (µ2 , π, s) since otherwise we would have that 0 = πj ≥ 10 − (s1 + s2 + 2) and then s1 + s2 ≥ 8.
( )
The outcome (µ3 , (πj = 4 − s1 , πk = 4 − s2 ), (s1 , s2 )) is blocked by j, {1, 2}, (r1 = s1 + 1, r2 = s2 + 1) or
( )
(k, {1}, r1 = s1 + 1). The outcome µ4 , (πj = 1 − s2 , πk = 8 − s2 ), (s1 , s2 ) is blocked by (k, {2}, r2 = s2 + 1)
( )
or j, {1, 2}, (r1 = s1 + 1, r2 = s2 + 2) .
17.2. A model with money and gross substitutable preferences 217

The technology of firm j, as reflected in the function y j , exhibits a kind of increasing returns, since with workers 1
and 2 the firm generates more income than the sum of the income from each worker separately. These increasing
returns induce some complementarity into the preferences of firm j, since, for example, it is willing to employ both
workers at salaries of s1 = s2 = 4, but if worker 1 were to demand a salary of 7, firm j would be unwilling to
employ either worker.

17.27 Let s = (s1 , s2 , . . . , sm ) be a vector of salaries. Let M j (s) denote the set of solutions to the problem:

max y j (C) − si .
C
i∈C

If we interpret s as the vector of salaries that firm j would have to pay to attract each worker i, then the firm’s
problem stated above is to choose the most profitable sets of workers.

17.28 Let s and s̄ be two distinct vectors of salaries. Let T j (C j ) = {i : i ∈ C j and s̄i = si }.
That is, T j (C j ) is the set of workers in firm j’s choice set at salaries s whose salary demands are unchanged at s̄.

17.29 Definition (The gross substitutes condition): for every firm j, if C j ∈ M j (s) and s̄ ≥ s, then there exists C̄ j ∈
M j (s̄) such that T j (C j ) is contained in C̄ j .
If a worker i is in the choice set of firm j when the salaries the firm must pay to hire each worker are given by s,
then the firm will still want to hire worker i if the salaries demanded by other workers rise, but worker i’s salary
demand does not.

17.30 In Example 17.26, the gross substitutes condition is not satisfied by firm j. Consider the two vectors of salaries
s = (4, 4) and s̄ = (7, 4): the unique preferred set of workers for firm j at salaries s is {1, 2} and at salaries s̄ is ∅.

17.31 Theorem (Kelso and Crawford (1982)): When the gross substitutes condition applies to all firms, the core is nonempty.

17.32 The deferred acceptance algorithm:

R1: Firms begin facing a set of permitted salaries sij (0) = σij . Permitted salaries at round t, sij (t), remain
constant, except as noted below. In round 0, each firm makes offers to all workers.
R2: On each round, each firm makes offers to the members of one of its favorite sets of workers, given the schedule
of permitted salaries sj (t) = (s1j (t), . . . , smj (t)).

That is, firm j makes offers to the members of C j (sj (t)), where C j (sj (t)) maximizes y j (C) − i∈C sij (t).
Firms may break ties between sets of firm j however they like, with the following exception: any offer made
by firm j in round t − 1 that was not rejected must be repeated in round t.
R3: Each worker who receives one or more offers rejects all but his or her favorite (taking salaries into account),
which he or she tentatively accepts.
R4: Offers not rejected in previous periods remain in force. If worker i rejected an offer from firm j in round t − 1,
sij (t) = sij (t−1) + 1; otherwise sij (t) = sij (t−1).
R5: The process stops when no rejections are issued in some period. Workers then accept the offers that remain in
force from the firms they have not rejected.

17.33 Lemma: Every worker has at least one offer in every round.

Proof. In round 0, every firm makes offers to all workers by R1. Since each worker tentatively accepts some offer
in each round, by R4 his or her permitted salary at that firm remains constant. By (GS) and R2, that offer must
therefore be repeated in the next round.
17.2. A model with money and gross substitutable preferences 218

17.34 Lemma: After a finite number of rounds, every worker has exactly one offer and the process stops.

Proof. By the above Lemma, each worker always has at least one offer. By R2, R3, and R4, if a worker has multiple
offers, his or her permitted salary must rise for all bidders but one. Since the numbers y j (C) are finite, each worker
eventually loses all but one offer.

17.35 Proof of Theorem:

(1) Suppose the firms proposing DA algorithm stops at period t∗ . Let the outcome be (µ = {(j, C j )}, π, s =
(siµ(i) (t∗ ))).
(2) The set of workers C j gives to j the maximum net profit it could get among all possible subsets of workers at
salaries sij (t∗ ). That is,

πj ≥ y j (C) − sij (t∗ )
i∈C

for all subsets of workers C.


(3) Suppose that (j, C, r) blocks (µ, π, s), where r is a profile of integer salaries.
(4) We should have

uij (ri ) > uiµ(i) (si ) for all i in C, and y j (C) − ri > πj .
i∈C

(5) By R3, worker i must never have received an offer from firm j at salary ri or greater, for all i in C.
(6) So sij (t∗ ) ≤ ri for all i in C.
(7) Then
∑ ∑
πj < y j (C) − ri ≤ y j (C) − sij (t∗ ),
i∈C i∈C

which leads to a contradiction.


Chapter 18
Matching with constraint

18.1 Matching with contracts: Hatfield and Milgrom (2005), Hatfield and Kojima (2010), Echenique (2012), Hatfield
and Kojima (2008), Hatfield and Kojima (2009), Hatfield, Kominers, Nichifor, Ostrovsky and Westkamp (2013)

18.2 Distributional constraints: Klaus and Klijn (2005), Klaus et al. (2009), Kojima, Pathak and Roth (2013), Kamada and
Kojima (2015), Fragiadakis and Troyan (forthcoming), Kamada and Kojima (2012), Kamada and Kojima (2015),
Kamada and Kojima (2015c), Kamada and Kojima (2016), Kojima, Tamura and Yokoo (2015), Budish et al. (2013)

219
220
Chapter 19
Matching with incomplete information

19.1 Literature: Liu, Mailath, Postlewaite and Samuelson (2014).

221
222
Bibliography

Atila Abdulkadiroğlu and Yeon-Koo Che, The role of priorities in assigning indivisible objects: A characterization of top
trading cycles, working paper, 2010.
Atila Abdulkadiroğlu, Yeon-Koo Che, and Yosuke Yasuda, Resolving conflicting preferences in school choice: The “Boston
mechanism” reconsidered, American Economic Review 101 (2011), 1–14.
Atila Abdulkadiroğlu, Yeon-Koo Che, and Yosuke Yasuda, Expanding “choice” in school choice, American Economic Jour-
nal: Microeconomics 7(1) (2015), 1–42. 180
Atila Abdulkadiroğlu, Parag A. Pathak, and Alvin E. Roth, The New York City high school match, American Economic
Review Papers and Proceedings 95:2 (2005), 364–367. 59
Atila Abdulkadiroğlu, Parag A. Pathak, and Alvin E. Roth, The Boston public school match, American Economic Review
Papers and Proceedings 95:2 (2005), 368–371.
Atila Abdulkadiroğlu, Parag A. Pathak, and Alvin E. Roth, Strategy-proofness versus efficiency in matching with indiffer-
ences: Redesigning the NYC high school match, American Economic Review 99:5 (2009), 1954–1978. 59, 60, 149, 150,
180, 181
Atila Abdulkadiroğlu, Parag A. Pathak, Alvin E. Roth, and Tayfun Sönmez, Changing the Boston school choice mecha-
nism, NBER Working Paper 11965. 147
Atila Abdulkadiroğlu and Tayfun Sönmez, Random serial dictatorship and the core from random endowments in house
allocation problems, Econometrica 66:3 (1998), 689–701. 82, 84, 93, 115, 125
Atila Abdulkadiroğlu and Tayfun Sönmez, House allocation with existing tenants, Journal of Economic Theory 88 (1999),
233–260. 95, 102, 103, 109
Atila Abdulkadiroğlu and Tayfun Sönmez, School choice: a mechanism design approach, American Economic Review 93:3
(2003), 729–747. 151, 187
Atila Abdulkadiroğlu and Tayfun Sönmez, Ordinal efficiency and dominated sets of assignments, Journal of Economic
Theory 112:1 (2003), 157–172.
Azar Abizada, Stability and incentives for college admissions with budget constraints, Theoretical Economics, forthcoming.
Mustafa Oğuz Afacan, Group robust stability in matching markets, Games and Economic Behavior 74 (2012), 394–398.
164
Nikhil Agarwal, An empirical model of the medical match, American Economic Review 105:7 (2015), 1939–1978.
Jóse Alcalde and Salvador Barberà, Top dominance and the possibility of strategy-proof stable solutions to matching
problems, Economic Theory 4 (1994), 417–435. 33, 53, 147

223
Bibliography 224

Itai Ashlagi, Mark Braverman and Avinatan Hassidim, Stability in large matching markets with complementarities, Op-
eration Research 62:4 (2014), 713–732.
Eduardo Azevedo and John William Hatfield, Existence of equilibrium in large matching markets with complementarities,
working paper, 2015.
Eduardo Azevedo and Jacob Leshno, A supply and demand framework for two-sided matching markets, Journal of Political
Economy 124:5 (2016), 1235–1268.
Sophie Bade, Serial dictatorship: the unique optimal allocation rule when information is endogenous, Theoretical Eco-
nomics, forthcoming.
Michel Balinski and Tayfun Sönmez, A tale of two mechanisms: student placement, Journal of Economic Theory 84 (1999),
73–94. 143
Charles G. Bird, Group incentive compatibility in a market with indivisible goods, Economics Letters 14 (1984), 309–313.
76
Anna Bogomolnaia and Hervé Moulin, A new solution to the random assignment problem, Journal of Economic Theory
100 (2001), 295–328. 121, 122, 125, 127, 129, 133, 136, 137
Eric Budish, The combinatorial assignment problem: approximate competitive equilibrium from equal incomes, Journal
of Political Economy 119 (2011), 1061–1103.
Eric Budish, Yeon-Koo Che, Fuhito Kojima, and Paul Milgrom, Designing random allocation mechanisms: Theory and
applications, American Economic Review 103:2 (2013), 585–623. 219
Gabriel Carroll, A general equivalence theorem for allocation of indivisible objects, Journal of Mathematical Economics
51 (2014), 163–177.
Yeon-Koo Che, Jinwoo Kim, and Fuhito Kojima, Stable matching in large economies, working paper, 2015.
Yeon-Koo Che and Youngwoo Koh, Decentralized college admissions, Journal of Political Economy 124:5 (2016), 1295–
1338.
Yeon-Koo Che and Fuhito Kojima, Asymptotic equivalence of probabilistic serial and random priority mechanisms,
Econometrica 78:5 (2010), 1625–1672. 137
Yeon-Koo Che and Olivier Tercieux, Efficiency and stability in large matching markets, working paper, July 2015.
Yeon-Koo Che and Olivier Tercieux, An analysis of top trading cycles in two-sided matching markets, working paper, July
2015.
Yeon-Koo Che and Olivier Tercieux, Payoff equivalence of efficient mechanisms in large matching markets, working paper,
June 2015.
Yan Chen, Ming Jiang, Onur Kesten, Stephane Robin and Min Zhu, Matching in the large: An experimental study, working
paper, 2016.
Yan Chen and Onur Kesten, Chinese college admissions and school choice reforms: A theoretical analysis, Journal of
Political Economy, 125:1 (2017), 99–139. 152, 153
Yan Chen and Onur Kesten, Chinese college admissions and school choice reforms: An experimental study, working
paper.
Yan Chen and Tayfun Sönmez, Improving efficiency of on-campus housing: An experimental study, American Economic
Review 92:5 (2002), 1669–1686.
Yan Chen and Tayfun Sönmez, School choice: An experimental study, Journal of Economic Theory 127 (2006), 202–231.
146
Andrei Ciupan, John William Hatfield and Scott Duke Kominers, An elementary proof of the Lone Wolf theorem, working
Bibliography 225

paper, 2015. 18
Gabrielle Demange, David Gale and Marilda Sotomayor, A further note on the stable matching problem, Discrete Applied
Mathematics 16 (1987), 217–222. 21, 37
Lester E. Dubins and David A. Freedman, Machiavelli and the Gale-Shapley algorithm, American Mathematical Monthly
88:7 (1981), 485–494. 35, 37
Umut Mert Dur and M. Utku Ünver, Two-sided matching via balanced exchange: Tuition and worker exchanges, working
paper (r&r Journal of Political Economy)
Federico Echeniquem Contracts vs. salaries in matching, American Economic Review 102:1 (2012), 594–601. 219
Federico Echenique and Juan Sebastiàn Pereyra, Strategic complementarities and unraveling in matching markets, Theo-
retical Economics, forthcoming.
Federico Echenique and M. Bumin Yenmez, How to control controlled school choice, American Economic Review, 105:8
(2015), 2679–2694.
Lars Ehlers and Aytek Erdil, Efficient assignment respecting priorities, Journal of Economic Theory 145 (2010), 1269–1282.
Lars Ehlers, Isa E. Hafalir, M. Bumin Yenmez and Muhammed A. Yildirim, School choice with controlled choice con-
straints: Hard bounds versus soft bounds, Journal of Economic Theory 153 (2014), 648–683.
Ozgun Ekici, Reclaim-proof allocation of indivisible objects, Games and Economic Behavior 81 (2013), 1–10.
Aytek Erdil, Strategy-proof stochastic assignment, Journal of Economic Theory 151 (2014), 146–162. 137, 149
Aytek Erdil and Haluk Ergin, What’s the matter with tie-breaking? Improving efficiency in school choice, American
Economic Review 98 (2008), 669–689. 149, 177, 182
Haluk Ergin, Consistency in house allocation problems, Journal of Mathematical Economics 34 (2000), 77–97. 92
Haluk Ergin, Efficient resource allocation on the basis of priorities, Econometrica 70:6 (2002), 2489–2497. 156, 161
Haluk Ergin and Tayfun Sönmez, Games of school choice under the Boston mechanism, Journal of Public Economics 90
(2006), 215–237.
Haluk Ergin, Tayfun Sönmez and M. Utku Ünver, Lung exchange, working paper, 2014.
Daniel Fragiadakis and Peter Troyan, Improving matching under hard distributional constraints, Theoretical Economics,
forthcoming. 219
David Gale and Lloyd Shapley, College admissions and the stability of marriage, American Mathematical Monthly 69
(1962:1), 9–15. 15, 46
David Gale and Marilda Sotomayor, Some remarks on the stable matching problem, Discrete Applied Mathematics 11
(1985), 223–232. 18, 22, 25, 26, 27
Dan Gusfield and Robert W. Irving, The Stable Marriage Problem: Structure and Algorithms, Cambridge, MA: MIT Press,
1989. 169
Guillaume Haeringer and Flip Klijn, Constrained school choice, Journal of Economic Theory 144 (2009), 1921–1947.
Isa E. Hafalir, M. Bumin Yenmez and Muhammed A. Yildirim, Effective affirmative action in school choice, Theoretical
Economics 8 (2013), 325–363. 190, 191
Rustamdjan Hakimov and Onur Kesten, The equitable top trading cycles mechanism for school choice, working paper,
2014. 152
Tadashi Hashimoto, Daisuke Hirata, Onur Kesten, Morimitsu Kurino, and M. Utku Ünver, Two axiomatic approaches to
the probabilistic serial mechanism, Theoretical Economics 9:1 (2014), 253–277.
John William Hatfield and Fuhito Kojima, Matching with contracts: comment, American Economic Review 98:3 (2008),
Bibliography 226

1189–1194. 219
John William Hatfield and Fuhito Kojima, Group incentive compatibility for matching with contracts, Games and Eco-
nomic Behavior 67 (2009), 745–749. 219
John William Hatfield and Fuhito Kojima, Substitutes and stability for matching with contracts, Journal of Economic
Theory 145 (2010), 1704–1723. 219
John William Hatfield, Scott Duke Kominers, Alexandru Nichifor, Michael Ostrovsky, and Alexander Westkamp, Stability
and competitive equilibrium in trading networks, Journal of Political Economy 121:5 (2013), 966–1005. 219
John William Hatfield and Paul R. Milgrom, Matching with contracts, Econometrica 95:4 (2005), 913–935. 219
J. S. Hwang, Modelling on college admissions in terms of stable marriages, working paper, Academia Sinica. 22
Aanund Hylland and Richard Zeckhauser, The efficient allocation of individuals to positions, Journal of Political Economy
87:2 (1979), 293–314. 81, 138
Robert W. Irving and Paul Leather, The complexity of counting stable marriages, SIAM Journal of Computing 15 (1986),
655–667. 19
Paula Jaramillo and Vikram Manjunath, The difference indifference makes in strategy-proof allocation of objects, Journal
of Economic Theory 147:5 (2012), 1913–1946.
SangMok Lee, Incentive compatibility of large centralized matching markets, Review of Economic Studies, forthcoming.
SangMok Lee and Leeat Yariv, On the effciency of stable matchings in large markets, working paper, 2014.
Qingmin Liu, George J. Mailath, Andrew Postlewaite and Larry Samuelson, Stable matching with incomplete information,
Econometrica 82:2 (2014), 541–587. 221
Yuichiro Kamada and Fuhito Kojima, Stability and strategy-proofness for matching with constraints: A problem in the
Japanese medical match and its solution, American Economic Review Papers and Proceedings 102:3 (2012), 366–370.
219
Yuichiro Kamada and Fuhito Kojima, Efficient matching under distributional constraints: theory and applications, Amer-
ican Economic Review 105:1 (2015), 67–99. 219
Yuichiro Kamada and Fuhito Kojima, General theory of matching under distributional constraints, working paper, 2015.
Yuichiro Kamada and Fuhito Kojima, Stability concepts in matching under distributional constraints, working paper,
2015. 219
Yuichiro Kamada and Fuhito Kojima, Stability and strategy-proofness for matching with constraints: A necessary and
sufficient condition, working paper, 2016. 219
Alexander S. Kelso and Vincent P. Crawford, Job matchings, coalition formation, and gross substitutes, Econometrica 50:6
(1982), 1483–1504. 215, 217
Onur Kesten, On two competing mechanisms for priority-based allocation problems, Journal of Economic Theory 127
(2006), 155–171.
Onur Kesten, Why do popular mechanisms lack efficiency in random environments? Journal of Economic Theory 144
(2009), 2209–2226. 136
Onur Kesten, School choice with consent, The Quarterly Journal of Economics 125 (2010), 1297–1348. 149, 166, 168, 171,
172, 183
Onur Kesten, On two kinds of manipulation for school choice problems, Economic Theory 51 (2012), 677–693. 56
Onur Kesten and Morimitsu Kurino, Do outside options matter in school choice? A new perspective on the efficiency vs.
strategy-proofness trade-off, working paper, Carnegie Mellon University, 2013.
Bibliography 227

Bettina Klaus, The coordinate-wise core for multiple-type housing markets is second-best incentive compatible, Journal
of Mathematical Economics 44 (2008), 919–924.
Bettina Klaus and Flip Klijn, Stable matchings and preferences of couples, Journal of Economic Theory 121:1 (2005), 75–
106. 219
Bettina Klaus, Flip Klijn and Toshifumi Nakamura, Corrigendum to “Stable matchings and preferences of couples”, Journal
of Economic Theory 144:5 (2009), 2227–2233. 219
Fuhito Kojima, Impossibility of stable and nonbossy matching mechanisms, Economics Letters 107 (2010), 69–70. 38
Fuhito Kojima, Robust stability in matching markets, Theoretical Economics 6 (2011), 257–267. 162, 163
Fuhito Kojima, School choice: Impossibilities for affirmative action, Games and Economic Behavior 75 (2012), 685–693.
187, 188
Fuhito Kojima, Recent Developments in Matching Theory and its Practical Applications, Advances in Economics and
Econometrics: 11th world congress of Econometric Society.
Fuhito Kojima and Mihai Manea, Incentives in the probabilistic serial mechanism, Journal of Economic Theory 145 (2010),
106–123.
Fuhito Kojima and Mihai Manea, Axioms for deferred acceptance, Econometrica 78 (2010), 633–653. 137
Fuhito Kojima and Parag Pathak, Incentives and stability in large two-sided matching markets, American Economic Review
99 (2009), 608–627. 60
Fuhito Kojima, Parag Pathak and Alvin E. Roth, Matching with couples: Stability and incentives in large markets, Quar-
terly Journal of Economics 128:4 (2013), 1585–1632. 219
Scott Duke Kominers and Tayfun Sönmez, Matching with slot-specific priorities: theory, Theoretical Economics, forth-
comeing.
Fuhito Kojima, Akihisa Tamura, and Makoto Yokoo, Designing matching mechanisms under constraints: An approach
from discrete convex analysis, working paper, 2015 219
Hideo Konishi and M. Utku Ünver, Games of capacity manipulation in hospital-intern markets, Social Choice and Welfare
27 (2006), 3–24. 56
Donald Knuth, Mariages stables et leurs relations avec d’autres problèmes combinatoires: Introduction à l’analyse mathéma-
tique des algorithmes, Les Presses de l’Université de Montréal, 1976. 16, 17
Aradhna Krishna and Yu Wang, The relationship between top trading cycles mechanism and top trading cycles and chains
mechanism, Journal of Economic Theory 132:1 (2007), 539–547. 206
Jinpeng Ma, Strategy-proofness and the strict core in a market with indivisibilities, International Journal of Game Theory
23 (1994), 75–83. 77
Mihai Manea, Asymptotic ordinal inefficiency of random serial dictatorship, Theoretical Economics 4:2 (2009), 165–197.
Giorgio Martini, Strategy-proof and fair assignment is wastful, Games and Economic Behavior 98 (2016), 172–179. 137
Andrew McLennan, Ordinal efficiency and the polyhedral separating hyperplane theorem, Journal of Economic Theory
105 (2002), 435–449. 125
D. G. McVitie and [Link], Stable marriage assignment for unequal sets, BIT Numerial Mathematics 10 (1970), 295–
309. 18
D. G. McVitie and [Link], The stable marriage problem, Communications of the ACM 14 (1971), 486–492. 19
Eiichi Miyagawa, Strategy-proofness and the core in house allocation problems, Games and Economic Behavior 38:2
(2002), 347–361.
Bibliography 228

Yusuke Narita, Efficient resource allocation on the basis of priority: a comment, working paper, Massachusetts Institute
of Technology, 2009. 158
Michael Ostrovsky, Stability in supply chain networks, American Economic Review 98:3 (2008), 897–923.
Szilvia Pápai, Strategyproof assignment by hierarchical exchange, Econometrica 68 (2000), 1403–1433. 111, 143
Parag Pathak and Jay Sethuraman, Lotteries in student assignment: An equivalence result, Theoretical Economics 6 (2011),
1–17. 116
Parag Pathak and Tayfun Sönmez (2008), Leveling the playing field: Sincere and sophisticated players in the Boston
mechanism, American Economic Review 98:4 (2013), 1636–1652.
Parag Pathak and Tayfun Sönmez (2013), School admissions reform in Chicago and England: Comparing mechanisms
by their vulnerability to manipulation, American Economic Review 103:1 (2013), 80–106.
William R. Pulleyblank, Matching and extensions, in Handbook of Combinatorics, Volume 1 (Ronald L. Graham, Martin
Grötschel and László Lovász Eds.), 179–232, MIT Press, Cambridge, Massachusetts, 1995. 137
Marek Pycia and M. Utku Ünver, Incentive compatible allocation and exchange of discrete resources, working paper, 2015.
111
Alvin E. Roth, Incentive compatibility in a market with indivisible goods, Economics Letters 9 (1982), 127–132. 72, 73
Alvin E. Roth, The economics of matching: stability and incentives, Mathematics of Operations Research 7:4 (1982), 671–
628. 20, 31, 35, 36, 53
Alvin E. Roth, The evolution of the labor market for medical interns and residents: A case study in game theory, Journal
of Political Economy 92 (1984), 991–1016. 54, 58, 59
Alvin E. Roth, The college admissions problem is not equivalent to the marriage problem, Journal of Economic Theory 36
(1985), 277–288. 53
Alvin E. Roth, Common and conflicting interests in two-sided matching markets, European Economic Review 27 (1985),
75–96. 52
Alvin E. Roth, On the allocation of residents to rural hospitals: a general property of two-sided matching markets, Econo-
metrica 54:2 (1986), 425–427. 48
Alvin E. Roth, A natural experiment in the organization of entry-level labor markets: Regional markets for new physicians
and surgeons in the United Kingdom, American Economic Review 81 (1991), 415–440. 54
Alvin E. Roth, The economist as engineer: Game theory, experimentation, and computation as tools for design economics,
Econometrica 70 (2002), 1341–1378. 30
Alvin E. Roth, What have we learned from market design?, Economic Journal 118 (2008), 285–310.
Alvin E. Roth, Deferred acceptance algorithms: history, theory, practice, and open questions, International Journal of
Game Theory 36 (2008), 537–569. 15
Alvin E. Roth, Who Gets What—and Why: The New Economics of Matchmaking and Market Design, Eamon
Dolan/Houghton Mifflin Harcourt, June 2, 2015.
2015 2
Alvin E. Roth and Elliott Peranson, The redesign of the matching market for American physicians: Some engineering
aspects of economic design, American Economic Review 89:4 (1999), 748–780. 54, 59
Alvin E. Roth and Andrew Postlewaite, Weak versus strong domination in a market with indivisible goods, Journal of
Mathematical Economics 4 (1977), 131–137. 71
Alvin E. Roth, Tayfun Sönmez, and M. Utku Ünver, Kidney exchange, The Quarterly Journal of Economics 119:2 (2004),
457–488. 198, 199, 201, 203, 204, 206
Bibliography 229

Alvin E. Roth, Tayfun Sönmez, and M. Utku Ünver, Pairwise kidney exchange, Journal of Economic Theory 125 (2005),
151–188.
Alvin E. Roth, Tayfun Sönmez, and M. Utku Ünver, Efficient kidney exchange: Coincidence of wants in markets with
compatibility-based preferences, American Economic Review 97:3 (2007), 828–851.
Alvin E. Roth and Marilda Sotomayor, The college admissions problem revisited, Econometrica 57:3 (1989), 559–570. 19,
45, 47, 48, 49
Alvin E. Roth and John Vande Vate, Random paths to stability in two-sided matching, Econometrica 58 (1990), 1475–1480.
59
Toyotaka Sakai, Market Design, Chikumashobo Ltd., 2013.
2016 2
Mark A. Satterthwaite and Hugo Sonnenschein, Strategy-proof allocation mechanisms at differentiable points, Review of
Economic Studies 48 (1981), 587–597. 38
Lloyd Shapley and Herbert Scarf, On cores and indivisibility, Journal of Mathematical Economics 1 (1974), 23–37. 63, 66
Lloyd Shapley and Martin Shubik, The assignment game I: the core, International Journal of Game Theory 1 (1972), 111–
130. 211
Tayfun Sönmez, Manipulation via capacities in two-sided matching markets, Journal of Economic Theory 77 (1997), 197–
204. 55
Tayfun Sönmez, Can pre-arranged matches be avoided in two-sided matching markets?, Journal of Economic Theory 86:1
(1999), 148–156.
Tayfun Sönmez and M. Utku Ünver, House allocation with existing tenants: an equivalence, Games and Economic Behavior
52 (2005), 153–185. 110
Tayfun Sönmez and M. Utku Ünver, House allocation with existing tenants: a characterization, Games and Economic
Behavior 69 (2010), 425–445. 110
Lars-Gunnar Svensson, Queue allocation of indivisible goods, Social Choice and Welfare 11 (1994), 223–230.
Lars-Gunnar Svensson, Strategy-proof allocation of indivisible goods, Social Choice and Welfare 19 (1999), 557–567. 88,
89, 90
Qianfeng Tang and Jingsheng Yu, A new perspective on Kesten’s school choice withconsent idea, Journal of Economic
Theory 154 (2014), 543–561. 172, 173, 174, 176, 177, 183
Chung-Piaw Teo, Jay Sethuraman, and Wee-Peng Tan, Gale-Shapley stable marriage problem revisited: Strategic issues
and applications, Management Science 47:9 (2001), 1252–1267.
William Thomson, Non-bossiness, working paper, 2014. 38
M. Utku Ünver, Dynamic kidney exchange, Review of Economic Studies 77 (2010), 372–414.
Ziwei Wang, Improving on the optimal stable matching: a trading cycles algorithm, working paper, 2015. 178
Binzhen Wu and Xiaohan Zhong, Matching mechanisms and matching quality: Evidence from a top university in China,
Games and Economic Behavior 84 (2014), 196–215. 152
Özgür Yilmaz, The probabilistic serial mechanism with private endowments, Games and Economic Behavior 69:2 (201),
475–491.
Lin Zhou, On a conjecture by Gale about one-sided matching problems, Journal of Economic Theory 52 (1990), 123–135.
137

You might also like