Two-Sided Matching with Partial Information
Baharak Rastegari, Anne Condon, and Kevin Leyton-Brown
Nicole Immorlica
CS, University of British Columbia
Vancouver, B.C., Canada
{baharak,condon,kevinlb}@cs.ubc.ca
EECS, Northwestern University
Evanston, IL
[email protected]
Abstract
preference rankings. Returning to the NRMP, in practice
time and money constraints mean that students typically
interview at only 10–15 hospitals out of the tens of thousands that participate. Under the current system, students
rank all hospitals at which they did not interview as unacceptable, allowing the algorithm to proceed as though a
full preference ordering had been declared. Prescribing the
use of this system is thus clearly suboptimal: students who
make the wrong decisions about where to interview can
remain unmatched or be matched badly. There are likewise
drawbacks from a descriptive perspective: such models
shed little light on how matching works when preference
information is incomplete.
We are aware of two threads of related work that attempt
to address this problem. First is a literature on augmenting
the preference model to allow indifference between candidates. For example, consider a school choice domain in
which high school students are matched to public schools.
Schools have some preferences over students based on
geography and legacy considerations, but many students
are equivalent according to these measures and hence it
is reasonable to say that the school is indifferent between
them. However, this literature—see, e.g., [5] and [1]—is
not intended to fully address the problem of incomplete
preferences, and indeed it does not. Furthermore, even
this simple extension to the standard model is quite tricky;
for example, depending on how stability is defined, stable
matchings are not always guaranteed to exist.
Second, some papers assume that participants have strict
preferences drawn according to a commonly known probability distribution over preference orderings, and that all
participants know their own preferences once the draw has
taken place. Such matching problems can be modeled as
Bayesian games. Work in this vein typically seeks to design
Bayes–Nash incentive compatible mechanisms or to describe the Bayes–Nash equilibria of standard mechanisms.
A very recent paper augments such Bayesian models with
interviews, which are costly and chosen in a decentralized
fashion [4]. The authors investigate equilibrium interviewing behavior and observe that “clustered interviews” yield
high social welfare.
In this paper, we propose a novel model of two-sided
matching in which agents are endowed with partially ordered preferences over candidates, but can refine these pref-
This paper introduces a model of two-sided matching markets in which agents begin with partial orders over candidates, but can learn more through interviews. We consider the algorithmic problem of performing the smallest
number of interviews necessary to find a matching that
is guaranteed to be stable with respect to the underlying
strict preferences. Our key contributions beyond the model
itself are a formalization of what it means to minimize the
number of interviews, an algorithm that performs such a
minimization, and a computationally efficient interview
minimizing algorithm for a restricted setting.
1
Introduction
Two-sided matching markets arise in many practical settings, such as corporate hiring, marriage, and university
admission. The mathematical study of such markets has
its roots in a seminal paper of Gale and Shapley [3], which
discussed “stable marriage.” A matching is called stable
if no pair of participants would prefer to leave their assigned partners to pair with each other; Gale and Shapley
proposed a tractable algorithm for identifying such matchings. A rich literature has developed since; see e.g., Roth
and Sotomayor [7] for an excellent survey. Overall, the
study of matching has made contributions in both descriptive and prescriptive senses. Descriptively, computational
models have enriched our understanding of existing social systems; for example, Gale and Shapley’s work helps
us to understand marriage markets, even though no such
markets deploy their algorithm. Prescriptively, algorithmic
tools proposed in the literature are practical enough to be
used directly in applications, and indeed have transformed
several matching markets. Perhaps most famously, the National Residency Matching Program (NRMP)—see, e.g.,
[6]—matches American medical students to internships at
hospitals, using a method quite similar to the Gale–Shapley
algorithm.
A key assumption that underlies the much of the matching literature is that all market participants know their full
(and strict) preference ordering. This assumption is often reasonable, as attested by the practical impact just
described. However, as markets grow large it quickly becomes impractical for participants to assess their precise
1
to j if i prefers being matched to j to being unmatched.
erences through interviews. Our model is “pre-Bayesian”
(see, e.g., [2]) in the sense that agents know some information with certainty, and are entirely unaware of everything
else (i.e., they have no probabilistic information). Specifically, we assume that each agent ranks candidates into
equivalence classes. We further assume that an agent’s true
preference ordering is some strict ordering consistent with
this coarse ranking. Otherwise, we assume that no other
information is available about an agent’s ranking, either to
that agent or to other market participants. To learn more
about their preferences, agents must conduct interviews.
We assume that the first interview in an equivalence class
is uninformative, and that subsequent interviews reveal the
pairwise rankings among all interviewed candidates. Our
goal is to identify a centralized interview schedule which
provably uncovers sufficient information to guarantee that
the resulting matching is stable with respect to the underlying true strict preferences of participants. Clearly, such
schedules exist; e.g., we could simply conduct all possible
interviews. However, interviews are costly, so we aim to
minimize their number. We give an intractable algorithm
that minimizes the number of interviews and a tractable
algorithm that dominates the obvious alternative, and prove
that our tractable algorithm is interview minimizing under
a restricted preference family.
2
Definition 2 (Blocking pair). A pair (aj , ei ) is a blocking
pair in matching µ if (1) aj and ei are not matched in µ,
and (2) ei aj µ(aj ) and aj ei µ(ei ).
Definition 3 (Stable matching). A matching µ is stable if
it has no blocking pair and if no agent is matched to an
unacceptable partner.
Observe that stability of a matching is defined according
to the true preference orderings, not the partial orders of
which all agents are aware. Thus, it will not generally be
possible to find a stable matching based on these partial
orders. To gather more information about their preferences,
we assume that employers can interview applicants. Each
interview pairs a single applicant a with a single employer
e, and hence is denoted by the pair e:a. We say that the
partial order p0i refines the partial order pi if, for all agents
j and k, the fact that j is preferred to k under pi implies
that j is also preferred to k under p0i . We say that partial order profile p0E,A refines partial order profile pE,A
and write p0E,A B pE,A , if for every agent i, p0i refines
the corresponding pi in pE,A . After interview e:a, e and
a’s partial preference orderings are refined, revealing the
agents’ strict preferences between all pairs of candidates
interviewed so far.1 We augment our definition of stable
matching to require that matched agents must first have
interviewed together.
Our Model
Let A = {a1 , . . . , ap } be a set of applicants and let
E = {e1 , . . . , em } be a set of employers. Each applicant a
has a strict preference ordering a over the employers, and
each employer e has a strict preference ordering e over
the applicants. However, these orderings are not known
by the agents. (We use the term agents when making
statements that apply both to applicants and employers.)
Instead, employers are initially aware only of strict partial
preference orderings pe , and likewise applicants are initially aware only of strict partial preference orderings pa .
These partial orderings are consistent with the true preferences. From Section 4 on, we will introduce the assumption that these partial orders are equivalence relations and
hence that every agent is only able to rank candidates into
different “bins”. Here, however, we allow any strict partial order. We let pE,A = (pe1 , . . . , pem , pa1 , . . . , pal ) and
call pE,A a partial order profile. Similarly we let E,A =
(e1 , e2 , . . . , em , a1 , a2 , . . . , al ). When the sets
E and A are clear, we write for E,A .
2.1
Finding stable matchings
We now consider the problem of finding a stable matching.
Informally, an algorithm for this problem starts with input
I = (E, A, pE,A ), performs a sequence of interviews, and
then outputs a matching. Interviews can be selected dynamically (i.e., based on the results of previous interviews),
and the whole procedure is centralized.
We formally represent the space of possible algorithms
on a fixed input using a decision tree. These trees alternate between nature levels, whose nodes reveal preference
ordering information, and decision levels, whose nodes correspond to interviews. We call nodes at nature and decision
levels N-nodes and D-nodes respectively. Denote the set
of children of a node x as C(x). The decision tree T (I) for
input I = (E, A, pE,A ) is as follows.
• The root is an N-node, labeled by pE,A .
• Each D-node child d ∈ C(n) of an N-node n is labeled
by an interview e:a that does not appear as the label
for any previous D-node on the path from the root to
n. Moreover, n has exactly one such D-node child for
each such interview.
Definition 1 (Matching). A matching µ : A∪E → A∪E∪
{∅} is an assignment of applicants to employers such that
each applicant is assigned to at most one employer and vice
versa. More formally, µ(aj ) = ei if and only if µ(ei ) = aj .
Furthermore, ∀aj ∈ A either ∃ei ∈ E, µ(aj ) = ei or
µ(aj ) = ∅ (the applicant is unmatched), and likewise
∀ei ∈ E either ∃aj ∈ A, µ(ei ) = aj or µ(ei ) = ∅.
• Each N-node child n0 ∈ C(d) of a D-node d is labeled
by a partial order profile n0E,A , determined as follows.
1 One way to visualize this is to imagine that the true utility value of
each candidate is revealed after an interview; such values could be used
to infer the preference ordering between interviewed candidates. Observe
that an agent learns nothing by interviewing only one candidate.
An agent i might prefer to go unmatched than to be
matched with another agent j. We say that i is acceptable
2
(E, A, pE,A ) for which B pE,A . Equivalently, algorithm
f is employer-optimal if for all inputs I, for all leaves u in
subtree T (f, I), f (u) is stable and employer-optimal with
respect to all total preference orderings that refine uE,A .
Let d’s label be e:a, let d’s parent be n and let nE,A
be the partial order profile labeling n. Then n0E,A is
a refinement of nE,A obtained from nE,A by strictly
ranking a relative to all applicants interviewed by e on
the path to n0 and ranking e relative to all employers at
which a has interviewed on the path to n0 . Moreover,
d has exactly one child n0 for each distinct pair of
such refinements.
In other words an employer-optimal algorithm is a valid
algorithm that finds the employer-optimal stable matching.
2.2
Minimizing the number of interviews
• All leaves of the tree are N-nodes n for which all
It is not hard to identify a valid algorithm: e.g., simply
partial orders in the profile nE,A are total orders.
instruct all employers to interview all applicants and then
A path from the root to a leaf of T (I) corresponds to select a stable matching by running any stable matching
a sequence of (distinct) interviews and ranking outcomes algorithm. However, this algorithm is likely to perform
that could result from those interviews. A deterministic unnecessary interviews. In practice interviews are (very)
algorithm f on I corresponds to to the following subtree costly; thus, it makes sense to seek algorithms that minT (f, I) of T (I). First, children of each D-node of T (f, I) imize their number. However, there is a problem. Beare exactly as in T (I) (representing the possible rankings cause algorithms select interview schedules dynamically,
that could result from the interview). Second, each N-node the number of necessary interviews may not only depend
n of T (f, I) has at most one D-node child: this child is the on the algorithm’s input, but can also depend on the true
node d that is labeled by the next interview performed by f , underlying preference orderings. What does it mean, then,
if any, given the interviews performed so far and the rank- to say that an algorithm performs the minimal number of
ing outcomes already obtained on the path to n; and if f interviews given an input I?
performs no more interviews then n is a leaf. Each leaf n is
We answer this question by defining interview minimizalabeled by the matching output by f when f has performed tion in terms dominance relations on algorithms. First, we
the interviews and obtained the ranking outcomes on the define two such relations. For a given I = (E, A, pE,A ),
path to v. We denote this matching by f (u). Note that let θ(f, , pE,A ) denote the number of interviews that alif e and a are matched in f (u) then some D-node on the gorithm f performs with initial information pE,A and true
path of T (f, I) to u has label e:a, because of our assump- preference ordering profile B pE,A .
tion that matches can only be made between employers
and applicants that have already interviewed. Execution Definition 6 (Very weak domination). An algorithm f very
of the algorithm f when the underlying preference order- weakly dominates another algorithm g if and only if given
ing profile is , corresponds to following a path from the any I = (E, A, pE,A ), f performs no more interviews
root to a leaf of T (f, I) along which the N-node labels are than g for any underlying preference ordering. That is,
consistent with .
θ(f, , pE,A ) ≤ θ(g, , pE,A ) for all B pE,A .
Definition 4 (Valid algorithm). Algorithm f is valid if
for all E, A and , f outputs a stable matching on any
I = (E, A, pE,A ) for which B pE,A . Equivalently,
algorithm f is valid if for all inputs I, for all leaves u
in subtree T (f, I), f (u) is stable with respect to all total
preference orderings that refine uE,A .
This dominance notion is called “very weak” because
two algorithms can very weakly dominate each other (i.e.,
if both always perform the same number of interviews for
every ). If an algorithm f very weakly dominates all
other algorithms, we call it (very weakly) dominant. One
sensible definition of an interview-minimizing algorithm
It is sometimes interesting to find a specific stable match- would be one that is dominant.
ing. Employer-optimal and applicant-optimal matchings
are particularly interesting: these are the matchings most Definition 7 (Weak domination). An algorithm f weakly
preferred by all employers (resp., applicants), as compared dominates another algorithm g if and only if f very weakly
to all other stable matchings. Such matchings always ex- dominates g and, furthermore, ∃(E, A, pE,A ) ∃0 B pE,A
ist [3]. They are important in the context of mechanism such that θ(f, 0 , pE,A ) < θ(g, 0 , pE,A ).
design; notably, they can be used to build mechanisms
A second candidate definition for an interview minimizin which truthtelling is a dominant strategy for the side
of the market favored by the matching. In what follows, ing algorithm is one that is not weakly dominated by any
we restrict our attention to employer-optimal matchings; other algorithm. Note that this condition is weaker than
however, our technical results can be made to apply to our first: a very-weakly-dominant algorithm must also be
applicant-optimal matchings by swapping every use of the non-weakly-dominated, but the reverse is not true.
terms “employer” and “applicant.”
3
Interview-Minimizing Algorithms
Definition 5 (Employer-optimal algorithm). Algorithm
f is employer-optimal if for all E, A and , f out- We now investigate the existence of interview-minimizing
puts the employer-optimal stable matching on any I = algorithms under our two candidate definitions.
3
3.1
Very weak dominance
e1
a1
a2
e2
a1
a2
a1
e1
e2
a2
e2
e1
We would most like to find a dominant algorithm. Unfortunately, even though very weak dominance is the easiest
dominance condition to satisfy, we can show that no very
Table 1: A setting with 2 employers and 2 applicants. For
weakly dominant algorithm exists.
each agent i, column i lists the strict partial preference orTheorem 8. There does not exist a valid algorithm that is dering with the most preferred option at the top. Applicants
have full knowledge of their preference orderings, as devery weakly dominant.
picted by a horizontal line between employers in applicant
Proof. Consider the setting depicted in Table 1. In Table columns (e.g., a1 ’s preferences are e1 a1 e2 ). Employers
2 all four possible strict preference orderings for the em- have no knowledge of their preference orderings (a1 and
ployers are shown. Notice that under three of them, cases a2 are incomparable under ei ’s partial preference ordering)
(a), (b), and (d), µ(e1 ) = a1 and µ(e2 ) = a2 is the only and thus no horizontal line separates applicants.
stable matching, and under only one of them, case (c),
e1 e2
e1 e2
e1 e2
e1 e2
µ(e1 ) = a2 and µ(e2 ) = a1 is the only stable matching.
a
a
a
a
a
a
a2 a2
We refer to the former matching by µ1 and the latter by µ2 .
1
1
1
2
2
1
a
a
a
a
a
a
a1 a1
Any valid algorithm must be able to differentiate between
2
2
2
1
1
2
cases (a), (b), (d) and case (c), meaning that it must perform
(a)
(b)
(c)
(d)
interviews. No information is ever learned by performing
a single interview, nor is anything learned by requiring Table 2: All four possible underlying preference orderings
each employer to perform one interview. Thus, any valid for the employers in the setting of Table 1.
algorithm must require at least one of the employers to
interview both applicants.
either Type 1 or Type 2, no valid algorithm can be very
Denote an algorithm that always requires e1 to interview
weakly dominant.
both applicants as a Type 1 algorithm. If a1 e1 a2 , then we
are either in case (a) or (b). Since in both cases µ1 is the
only stable matching the algorithm can return the outcome 3.2 Non-weak domination
with only one additional interview, e2 interviewing a2 .2 Although very weak dominance is not achievable, it is posThus 3 interviews in total are needed. Else, a2 e1 a1 and sible to design algorithms that satisfy the less demanding
thus we are either in case (c) or (d). Recall that µ2 is the property of not being weakly dominated.
only stable matching in case (c) and µ1 is the only stable
matching in case (d). Thus the algorithm needs to know Theorem 9. There exists a valid algorithm that is not
e2 ’s ranking in order to differentiate between these two weakly dominated by any other valid algorithm.
cases. Thus it must require e2 to interview both applicants,
Proof. For a given input I, let G(I) be a graph with a
resulting in 4 interviews in total.
vertex
for every valid algorithm on I (i.e., every subtree
Denote an algorithm that always requires e2 to interview
of
T
(I)),
and with a directed edge from vertex f to vertex
both applicants as a Type 2 algorithm. If a2 e2 a1 , then we
g
if
and
only
if g is weakly dominated by f . Since weak
are either in case (b) or (d). Since in both cases µ1 is the
dominance
is
a
transitive relation that is not symmetric, the
only stable matching the algorithm can return the outcome
resulting
graph
must not have any cycle. Therefore, there
with only one additional interview, e1 interviewing a1 .
must
be
at
least
one node, say f , with no incoming edge;
Thus 3 interviews in total are needed. Else, a1 e2 a2 and
this
valid
algorithm
f on I is not weakly dominated by any
thus we are either in case (a) or (c). Recall that µ1 is the
other
valid
algorithm
g on I. The theorem follows since,
only stable matching in case (a) and µ2 is the only stable
given
any
input
I,
f
can
be determined by construction and
matching in case (c). Thus the algorithm needs to know
inspection
of
G(I).
e1 ’s ranking in order to differentiate between these two
cases. Thus it must require e1 to interview both applicants,
Although the proof of Theorem 9 tells us how to conresulting in 4 interviews in total.
struct a non-weakly dominated algorithm, it requires time
We can now see that if the employers’ strict preference
doubly exponential in the input size: T (I) has size expoorderings are as in case (a), then a Type 1 algorithm pernential in I and thus the number of subtrees of T (I) that
forms only 3 interviews, whereas a Type 2 algorithm percorrespond to valid algorithms may be doubly exponential
forms 4 interviews. However, if the employers’ strict prefin the size of I. The next theorem shows that we can do
erence orderings are as in case (d), then a Type 2 algorithm
better, describing an exponential-time algorithm. The alperforms only 3 interviews, whereas a Type 1 algorithm
gorithm uses the following lemma, whose proof follows
performs 4 interviews. Since a valid algorithm must be
directly from the definition of weak dominance. Intuitively,
2 This last interview is needed because of our requirement that employ- it says that an algorithm is not weakly dominated if it miners can only hire applicants they have interviewed.
imizes the sum of the number of interviews performed,
4
where the sum is taken over all preference orderings under- of interviews performed in a subtree rooted at a child of n.
lying the input partial order profile.
Formally, if SMn is nonempty then xn is 0. Otherwise,
Lemma 10. A valid algorithm f ∗ is not weakly domiX
X
X
xn = min
1+
xn0 . (1)
nated by any other valid algorithm if for all inputs I =
d∈C(n)
0 ∈C(d) Bn0
0 ∈C(d)
n
n
(E, A, pE,A ),
E,A
X
BpE,A
θ(f ∗ , , pE,A ) = min
f
X
Recall that Lemma 10 encouraged us to look for algorithms that minimize the sum of the number of interviews
performed . The xn ’s are helpful in constructing such an
algorithm because of the next lemma.
θ(f, , pE,A ),
BpE,A
with the min taken over all valid algorithms f on input I.
Lemma 13. For all N-nodes n of T (I),
X
xn ≤ min
θ(f, , nE,A ),
Theorem 11. There exists an exponential-time valid algorithm that is not weakly dominated by any other valid
algorithm.
f
Proof. We describe an algorithm f ∗ and show that it satisfies the theorem. To do this we will annotate nodes of T (I)
with sets of stable matchings and with numbers.
Associate with each N-node leaf n of T (I) the set SMn
of all matchings µ such that (i) µ is stable with respect to all
total preference orderings B nE,A and (ii) if µ matches
employer e with applicant a then the interview e:a labels
some node on the path from the root to n. Inductively
associate with each internal N-node n the set of matchings
µ that (i) are in the intersection of the sets SMn0 taken
over all grandchildren n0 of n and (ii) are such that if µ
matches e with a then the interview e:a labels some node
on the path from the root to n. As will become clear
later, a key idea of our algorithm f ∗ is that if SMn is
nonempty for some N-node n in T (f ∗ , I) then f ∗ can stop
interviewing when node n is reached and can output any
matching in SMn . However, if SMn is empty, f ∗ must
perform more interviews. The following lemma will be
useful in establishing these facts.
BnE,A
where the min is taken over all valid algorithms f on I.
Proof. By induction on the value of xn . The lemma is
trivially true in the base case when xn = 0. Let xn =
k > 0 and suppose that the inequality holds for N-nodes
n with xn < k. Since xn > 0, the set of matchings SMn
is empty and so by Lemma 12 there is no matching that
(i) is stable with respect to all total preference orderings
that refine nE,A and (ii) is such that µ matches e with a
then the interview e:a labels some node on the path from
the root to u. Thus, any valid algorithm f must perform
at least one further interview, upon reaching node n of the
decision tree. Suppose that the next interview of f , upon
reaching n, is e:a, and denote the set of grandchildren of
node n as G(n). Then the sum of the interviews performed
by f , taken over all B nE,A , is
X
X
X
X
1+
θ(f, , n0E,A ). (2)
n0 ∈G(n) Bn0E,A
n0 ∈G(n) Bn0E,A
Here, the first summation counts all interviews of the pair
e:a performed by f (i.e., under different underlying preference orderings), and the second counts all other interviews (note that e:a labels the child of node n and the
parent of the nodes n0 in T (f, I)). Correctness of the second double-sum of Equation (2) follows because the set
of ’s with B nE,A is the union of the disjoint sets
{ | B n0E,A }. By the induction hypothesis, Equation
(2) is at least
X
X
X
1+
x n0 ,
(3)
Lemma 12. Let n be any N-node of T (I). The set SMn
is exactly the set of matchings µ that (i) are stable with
respect to all total preference orderings B nE,A and (ii)
are such that if µ matches e with a then the interview e:a
labels some node on the path from the root to n.
Proof. By induction. The statement is true by definition at
the leaves of T (I). Let n be an internal N-node. Condition
(ii) is true of the matchings in SMn by definition. The set
of preference orderings B nE,A is the union of all preference orderings that refine the labels of n’s grandchildren.
Since each matching µ in the set SMn is in the intersection
of the matching sets of n’s grandchildren, µ is consistent
with all preference orderings B nE,A by the induction
hypothesis. Furthermore, no other stable matching µ0 can
be consistent with all preference orderings that refine the
labels of n’s grandchildren, or µ0 would also be in all of
the SM -sets of the grandchildren.
n0 ∈G(n) Bn0 E,A
n0 ∈G(n)
In turn, Equation (3) is at least xn , by definition of xn in
Equation (2), completing the proof of the lemma.
We can now define algorithm f ∗ : on input I it is the
subtree of T (I) with the following properties. The leaves
are N-nodes n with xn = 0 and with no N-node ancestor
n0 for which xu0 = 0. For each internal N-node n (i.e.
with xn > 0), starting from the root, n’s D-node child is
Using our sets SMn , we next associate with each N- any child d of T (I) that minimizes the expression in Equanode n in T (I) a number xn , counting the smallest number tion (1). The subtree T (f ∗ , I) can be constructed in time
5
exponential in I and thus f ∗ ’s output can be determined in schedule, adapting to information revealed in the tentative
time at most exponential in its input size. By definition of matching component. To schedule interviews, the algothe xn ’s, it is straightforward to show the following.
rithm repeatedly chooses an employer and instructs it to
interview all plausible applicants, i.e., those in the chosen
Lemma 14. For any N-node n in T (f ∗ , I),
employer’s (current) top equivalence class who are achievX
able in the sense that they have not yet received better offers.
xn =
θ(f ∗ , , nE,A ).
After these interviews have been performed, the algorithm
BnE,A )
transitions to the tentative matching component, in which
∗ the employer initiates a sequence of proposals, in order,
It follows directly from Lemmas 10, 13 and 14 that f
to its newly interviewed candidates. Applicants receive
is not weakly dominated by any valid algorithm.
To complete our proof of Theorem 11, it remains to proposals and reject employers who are provably inferior
show that f ∗ is valid. To see this, note that f ∗ only outputs to their best proposed match. This rejection can occur even
a matching at N-nodes n with xn = 0. By construction, when employers have not yet interviewed the applicant; insince xn = 0, SMn is nonempty, where by Lemma 12 deed, this fact is the key idea behind our algorithm’s weak
SMn is the set of matchings µ such that (i) µ is stable dominance of the trivial alternative.
A formal statement of the algorithm appears as Algowith respect to all total preference orderings B nE,A
rithm
1 overleaf. Function Next Class(ei ) returns ei ’s
and (ii) if µ matches employer e with applicant a then the
top
equivalence
class with an achievable applicant, if any,
interview e:a labels some node on the path from the root
and
returns
0
otherwise.
Function Pick (E u ) chooses an
∗
to n. Therefore, f is valid.
employer from the set of unmatched employers E u ⊆ E.
This function can be instantiated in different ways; this will
4 Finding Optimal Matchings
affect the algorithm’s performance, but all of our results
In the remainder of the paper we sharpen our focus in hold regardless of how Pick() is instantiated. PS, IS, JS,
two senses. First, we consider the problem of finding TS, and DS denote the proposal, interview, job offer, tenta(e.g., employer-) optimal matchings rather than arbitrary tive acceptance and denial phases of Algorithm 1. Any run
matchings. Our main results presented so far hold for this of the outer loop is referred to as a round of Algorithm 1.
problem as well.
We say that an employer ei has been denied by an applicant
aj under Algorithm 1 if, either aj has rejected a job offer
Theorem 15. Theorems 8, 9, and 11 still hold if we replace from e , or we had a removed from e ’s list. An applicant
i
j
i
“valid” by “employer-optimal.”
aj is said to be still achievable to an employer ei if aj has
Proof. In the proof of Theorem 8 replace “valid” by “em- not yet denied ei .
ployer-optimal” and “stable matching” by “employer-optimal stable matching;” the argument goes through as
before. In the proof of Theorem 9 replace “valid” by
“employer-optimal;” likewise, the argument is unchanged.
In the proof of Theorem 11 associate with each N -node
leaf the employer-optimal matching instead of the set of
stable matchings.
Example 16. Assume that Pick selects an unmatched
employer that is “popular” among the applicants who
have received interview proposals, i.e. it is highly
ranked even by the achievable applicant that likes
it least.
Formally speaking, let Pick(E u ) =
arg mined ∈E u (max(Rankaj (ed )|aj ∈ Ped )), breaking
ties in favor of the smallest indexed employer, where
Rankaj (ei ) returns k where ei ∈ caj ,k . Consider the
setting given in Table 3. Running Algorithm 1 on this setting, with the Pick function we just defined, returns stable
matching µ, µ(ei ) = ai , after 4 rounds and 5 interviews.
To save space we refer to Rank by R.
Second, we consider a special case of our preference
model in which agents partition candidates into equivalence
classes. We assume that the partial order pi of each
agent i is a partition of the set of its acceptable partners
into strictly ranked equivalence classes. We denote the
equivalence classes of ei and aj that are ranked kth in this
strict ranking by cei ,k and caj ,k , respectively. We let cE,A
denote the partial order (i.e., equivalence class) profile for
all employers and applicants.
4.1
Round 1 PS: e1 and e2 both propose to interview
a1 and a2 , e3 proposes to interview a2 and a3 , and
e4 proposes to interview a2 and a4 . IS: Ra1 (e1 ) =
Ra2 (e1 ) = 1, Ra1 (e2 ) = 2, Ra2 (e2 ) = 1, Ra2 (e3 )
= 2, Ra3 (e3 ) = 1, Ra2 (e4 ) = Ra4 (e4 ) = 2. Thus,
max(Ra1 (e1 ), Ra2 (e1 )) = 1, max(Ra1 (e2 ), Ra2 (e2 )) =
2, max(Ra2 (e3 ), Ra3 (e3 )) = 2, max(Ra2 (e4 ), Ra4 (e4 ))
= 2. Therefore, e1 is picked and it interviews a1 and a2 .
JS: e1 offers a position to a1 . TS: a1 accepts the position
offered by e1 and they get tentatively matched. DS: a1 is
removed from e2 ’s and e4 ’s lists. As a result, a1 is removed
from ce2 ,1 and ce4 ,2 .
An employer-optimal algorithm
We now introduce a tractable, employer-optimal algorithm.
These properties also hold for the trivial algorithm that performs all interviews; however, the algorithm we introduce
in this section weakly dominates that trivial algorithm. Our
algorithm alternates between two main components, an
interview scheduling component and a tentative matching
component. It thereby dynamically constructs the interview Round 2
6
IS:
max(Ra2 (e2 )) = 1, max(Ra2 (e3 ),
e1
a1
a2
a4
a3
Algorithm 1:
Input: E, A, cE,A
Output: Matching µ
Initialize
ωei = 0, ∀ei ∈ E ; // Initialize the current
equivalence class number for each employer ei
Pei ← ∅, ∀ei ∈ E ; // Initialize the set of
achievable applicants with outstanding
proposals from ei
µ(ei ) ← ∅, µ(aj ) ← ∅, ∀ei ∈ E, ∀aj ∈ A ;
// Initialize the current tentative matching µ
cei = cei \ {aj |ei ∈
/ caj }, ∀ei ∈ E ; // Remove from
cei those applicants for whom ei is not
acceptable
Outer Loop
PS
Inner Loop
JS
TS
DS
e3
a2
a3
a1
a4
e4
a2
a4
a1
a3
a1
e1
e3
e2
e4
a2
e2
e1
e3
e4
a3
e3
e2
e1
e4
a4
e2
e1
e3
e4
Table 3: A setting with 4 employers and 4 applicants. We
assume that each column lists the underlying preference
ordering (which is of course not known a priori) with
the most preferred option at the top and horizontal lines
separate (known) equivalence classes.
repeat
foreach ei ∈ E do // Ensure that each
unmatched employer makes interview
proposals, if possible
if µ(ei ) = 0 and Pei = ∅ and Next Class(ei )> 0
then
ωi ← Next Class(ei );
Pei ← cei ,ωi ; // ei proposes to interview
4.2
Correctness
Algorithm 1 performs at least one interview in each round.
Furthermore, in each run of the inner loop at least one
employer offers a job to an applicant. So the following theorem immediately follows (formal proof in the appendix).
applicants in cei ,ωi
IS
e2
a1
a2
a3
a4
Theorem 17. Algorithm 1 returns an outcome in polynomial time.
ei = Pick(E u ) where E u is the set of unmatched employers
ed with nonempty Ped
foreach aj ∈ Pei do
ei interviews aj
The following lemmas (with proofs again appearing in
the appendix) are useful for proving our main claim, that
Algorithm 1 is employer optimal.
P ei ← ∅ ;
repeat
foreach ei ∈ E do
if µ(ei ) = 0 and Pei = ∅ then
ei offers a position to the achievable applicant it
prefers the most, if such an applicant exists ;
Lemma 18. Under Algorithm 1, an employer ei offers a
position to an applicant aj if and only if aj is achievable to
ei and ei has been denied by all applicants that it prefers
to aj under any underlying strict preference ordering that
refines the current information state.
Each applicant who has received one or more job offers
tentatively accepts the offer from the employer she most
prefers and rejects the rest; matching µ is updated
accordingly;
Each tentatively matched applicant aj is removed from
the lists of those employers that are in the equivalence
classes ranked lower than the one µ(aj ) belongs to; cei
and Pei are updated accordingly for all ei ∈ E;
until there is no unmatched employer ei who has interviewed
all achievable applicants in its current class—i.e.
Pei = ∅—and has not yet been denied by all of them;
until each employer is either tentatively matched or is denied by all
its acceptable applicants;
return µ ; // The current tentative matching is
Lemma 19. If an employer ei is denied by an applicant aj
under Algorithm 1, then in the outcome aj must be matched
to an employer she prefers to ei .
We are now ready to prove our main claim, that Algorithm 1 is employer optimal. We do so by showing that,
for any underlying preference ordering , Algorithm 1
outputs the same matching as Gale–Shapley on input ,
returned as the outcome
which is the employer-optimal matching [3]. Gale–Shapley
works as follows: Until there is an unmatched employer, (i)
each unmatched employer proposes to the most preferred
Ra3 (e3 )) = 2, max(Ra2 (e4 ), Ra4 (e4 )) = 2. Thus e2 is applicant on its list to whom it hasn’t yet proposed, and
picked and interviews a2 . JS: e2 offers a position to a2 . TS: (ii) each applicant keeps her most preferred proposal, and
a2 accepts the position offered by e2 . DS: a2 is removed rejects the rest. We refer to each run of (i) and (ii) as a
from e3 ’s and e4 ’s list. As a result, a2 is removed from ce3 ,1 phase of Gale–Shapley. At the end of each phase we have
a (temporary) matching among some employers and some
and ce4 ,1 .
Round 3 IS:max(Ra3 (e3 )) = 1 and max(Ra4 (e4 )) = applicants.
2. Thus e3 is picked and interviews a3 . JS: e3 offers a
Theorem 20. Algorithm 1 is employer optimal.
position to a3 . TS: a3 accepts the position offered by e3 .
DS: a3 is removed from e1 ’s and e4 ’s lists. As a result, a3 Proof. The claim is easy to prove if there is only 1 emis removed from ce1 ,2 and ce4 ,2 .
ployer or only 1 applicant (see appendix for the detailed
Round 4 IS max(Ra4 (e4 )) = 2. Thus e4 is picked and explanation). So assume that there are at least 2 employinterviews a4 JS: e4 offers a position to a4 . TS: a4 accepts ers and 2 applicants. Assume for contradiction that there
exists a preference ordering B cE,A under which the
the position offered by e4 .
employer-optimal stable matching is different from the
Output µ(ei ) = ai , ∀1 ≤ i ≤ 4, is returned.
matching Algorithm 1 returns. Let µso and µalg denote
7
the employer-optimal stable matching and the outcome of
Algorithm 1 over , respectively.
We’ve assumed that µso and µalg are not identical; thus
either (a) there exists an employer that is matched in µalg to
an applicant, and in µso it is either unmatched or matched
to an applicant that it likes less than its match in µalg ; or
(b) case (a) does not hold and there exists an employer that
is matched in µso to an applicant, and under µalg it is either
unmatched or matched to an applicant that it likes less than
its match in µso .
Recall that the employer-proposal version of GaleShapley returns the employer-optimal stable matching. Let
µso
l denote the tentative matching created after phase l of
Gale-Shapley.
If Case (a) holds: Any such employer must have, under
Gale–Shapley, proposed to and consequently been rejected
by its match under µalg . Take the first phase of Gale–
Shapley, say phase l, in which some employer, say e1 , is
rejected by its match in a1 = µalg (e1 ). Since a1 rejects e1
in phase l, then in µso
l she must be paired with an employer
she prefers to e1 , say e2 . In µalg , e2 is not paired to a1 , so
either (i) e2 is matched to an applicant it prefers to a1 , or
(ii) e2 has been denied by a1 (by Lemma 18).
e1
a1
a2
e2
a2
a1
e3
a2
a1
a1
e2
e3
e1
a2
e1
e2
e3
Table 4: A setting with 3 employers and 2 applicants. Employers have full knowledge of their preference orderings.
(ii) Under Gale–Shapley, a2 rejects e1 . So in µso , a2
must be matched to some employer it prefers to e1 ,
a contradiction (since a2 is matched to e2 and we
already established that a2 prefers e1 to e2 ).
4.3
Weak dominance
Lemma 21. Under Algorithm 1 no employer ei interviews
applicants in equivalence classes ranked lower than the
one µopt (ei ) belongs to.
Proof. Recall that Next Class(ei ) returns ei ’s top
equivalence class with an achievable applicant. Thus ei
never proposes to interview, and thus never interviews, applicants in an equivalence class unless he is denied by all
(i) In µalg , e2 is matched to an applicant it prefers to a1 , applicants in higher ranked equivalence classes. The proof
is straightforward then, since µopt (ei ) never denies ei .
say a2 . Since e2 is matched to a1 in µso
l , it can not be
so
matched to any applicant it prefers to a1 in µ . As
It directly follows from this result that Algorithm 1
a2 e2 a1 , it must have proposed to, and consequently
weakly
dominates the obvious alternative which instructs
rejected by, a2 in a phase of Gale–Shapley earlier than
all
employers
to interview all applicants. However, Algophase l, a contradiction (since we assumed that phase
rithm
1
is
itself
weakly dominated.
l is the first phase of Gale–Shapley in which some
employer is rejected by its match in Algorithm 1)
Theorem 22. Algorithm 1 is weakly dominated.
(ii) In some step of Algorithm 1, e2 has been denied by a1 .
Thus, by Lemma 19, a1 must be matched in µalg to an
employer she prefers to e2 , a contradiction (since a1
is matched to e1 in µalg and we already established
that a1 prefers e2 to e1 ).
Proof. Consider the setting given in Table 4. Running
Algorithm 1 on this example requires at least the following
5 interviews, regardless how Pick chooses an employer:
both e2 and e3 interviewing a2 , e1 interviewing a2 , and
both e2 and e3 interviewing a1 . (Depending on Pick the
algorithm may or may not require e1 to interview a1 ).
It is easy to verify that under any possible strict preference ordering, in the employer-optimal stable matching a2
is always matched to e1 and a1 is matched to the employer
she prefers between e2 and e3 .
Therefore, an algorithm which only imposes the following 3 interviews is student-optimal: e1 interviewing a2
and both e2 and e3 interviewing a1 . Thus Algorithm 1 is
weakly dominated by that algorithm.
If Case (b) holds: Any such employer must have been,
under Algorithm 1, denied by its match in µso (by Lemma
18). Take the first phase of Algorithm 1, say phase l, in
which some employer is denied by its match in µso . Assume without loss of generality that in phase l employer e2
is denied by its match in µso , say a2 . Thus, at the end of
phase l, a2 must be matched to an employer, say e1 , that
she likes better than e2 . In the employer-optimal stable
matching a2 and e1 are not matched, so either (i) e1 is
matched to an applicant it prefers to a2 , or (ii) e1 has been
Note that for an algorithm to realize that e2 and e3 interrejected by a2 under Gale-Shapley.
viewing a2 are “unnecessary” interviews, it must do some
(i) In µso , e1 is matched to an applicant it prefers to a2 , reasoning on the input before performing any interviews.
say a1 . Since e1 prefers a1 to a2 , its match at the end We conjecture that identifying all such “unnecessary” inof phase l, thus, by Lemma 18, e has been denied terviews requires exponential time.
1
by a1 in an earlier phase of Algorithm 1 (and by the
5 A Restricted Setting
time it offered a position to a2 ), a contradiction (since
we assumed that l is the first phase of Algorithm 1 in In many two-sided matching markets, there is some dewhich some employer is denied by its match in µso ). gree of positive correlation between the preferences of the
8
agents on each side of the market. In corporate hiring,
companies typically have similar coarse information sets
regarding workers (past employment history, education levels, etc), and so have nearly common a priori information.
In the same vein, in university admissions, employers initially screen applicants based on standardized test scores,
grade-point averages, and the like. Applicants also categorize employers based on publicly available rankings like
the US News and World Report. Taken to the extreme, this
means that agents on at least one side of the market may
have common a priori information (albeit perhaps different
underlying preferences). Formally, assume that cai ,k =
caj ,k for all pairs of applicants ai and aj and all k; we
allow ai 6= aj . In this restricted setting, Algorithm 1
greatly simplifies and is in fact very weakly dominant.
We first observe that in this setting, Algorithm 1 with
function Pick defined as in Example 16 schedules the
interviews of employers in higher equivalence classes first.
We assume that Pick is so defined for the rest of this
section. For convenience we restate the definition here:
Pick(E u ) = arg mined ∈E u (maxaj ∈Ped Rankaj (ed );
ties are broken in favor of the smallest indexed employer,
where Rankaj (ei ) returns the k such that ei ∈ caj ,k .
7. Return the current tentative matching.
Furthermore, in our restricted setting, Algorithm 1 is
not weakly dominated. In fact, we show something even
stronger: Algorithm 1 is very weakly dominated. The basic
idea of the proof is to show that any interview performed by
Algorithm 1 must be performed by any employer-optimal
algorithm. If an employer-optimal algorithm skips an interview performed by Algorithm 1 then it fails to distinguish
between two consistent underlying preferences that result
in different employer-optimal matchings. The following
three lemmas contain the crux of the proof.
Lemma 24. Under the restricted setting, when Algorithm
1 permits an employer in equivalence class ranked l + 1st
to interview applicants, or make job offers, all employers
in equivalence classes ranked higher are either matched
to their employer-optimal match, if exists, or have been
denied by all their acceptable applicants otherwise.
Proof. By Lemma 23, all employers in equivalence classes
ranked lth or higher must be either tentatively matched or
denied by all their acceptable applicants. If none of the
matched employer makes a new offer, their current matches
would be their employer-optimal matches. If any of the
matched employers makes a new offer, it could be only
because it has been denied by its current match. Let s∗ be
the first employer in class l or higher that gets denied by its
current match in a round in which employers in equivalence
classes ranked l + 1st or lower are interviewing. Then s∗ ’s
tentative match must have received a better offer from some
other employer in class l or higher, s0∗ . This could be only
possible if the latter employer, s0∗ , has been denied by its
match in an even earlier round, a contradiction (since we
assumed that s∗ is the first employer that gets denied).
Lemma 23. In the restricted setting, Algorithm 1 never
permits an employer in an equivalence class ranked lth
to interview applicants, or make job offers, unless each
employer in equivalence classes ranked higher is either
tentatively matched or is denied by all its acceptable applicants.
Proof. Rankaj (ei ) = k for each employer ei in equiva
lence class ranked kth. Thus, max Rankaj (ei )|aj ∈ Pei
= k too. Therefore an employer in equivalence class
ranked lth would not be picked in the interview step if there
is an unmatched employer e∗ in a higher ranked equivaLet be a preference ordering that refines the input.
lence class with Pe∗ 6= ∅. Note that Pe∗ is nonempty only if Let µ be the employer-optimal matching under preference
e∗ has not been denied by all its acceptable applicants.
ordering . Let Il be the partial information available to
Algorithm
1 when it first instructs an employer in class l
This lemma allows us to greatly simplify the statement
to
perform
interviews.
(Note that I1 is the input, the initial
of Algorithm 1. Under the restricted setting, Algorithm 1
partial
information.)
reduces to the following algorithm:
Lemma 25. The only interviews Algorithm 1 requires under preference ordering is for each ei in class l to in2. Pick the smallest indexed unmatched employer ei in terview all the applicants they rank in equivalence classes
ca,l . Let ei interview all the applicants in its ωei th ranked higher or the same as µ(ei ) and who are achievable
to it w.r.t. Il .
equivalence class.
1. Let l = 1. Let ωei = 1 for all ei .
Proof. Assume that ei is in class l. Take any applicant aj
who is achievable to ei w.r.t. Il . Thus, when Algorithm 1
first instructs an employer in class l perform interviews,
aj is not matched to an employer in an equivalence class
higher than l. Furthermore, she will not receive a job
offer from such an employer (by Lemma 24). Therefore
aj must be achievable to ei whenever ei is picked, and
shall be interviewed by ei if he wishes to. Note that no
employer does any interview while it is tentatively matched.
Furthermore no employer proposes to interview applicants
3. Run the inner loop
4. If all the employers in equivalences classes ranked l
(and lower) are matched then increase l.
5. Let ωei = Next Class(ei ) for each unmatched employer ei which has been denied by all the applicants
in its ωei th equivalence class.
6. If there is an unmatched employer that is not denied
by all its acceptable applicants, jump to 2.
9
in an equivalence class unless it has been denied by all
applicants in higher ranked equivalence classes. Since
ei never gets denied by µ(ei ), he does not interview any
applicant in lower equivalence classes.
Lemma 26. Any employer-optimal algorithm must, under
a given preference ordering , requires all employers ei in
class l to interview all applicants they rank in equivalence
classes ranked higher or the same as µ(ei ) and who are
achievable to it w.r.t. Il .
Proof. By Lemma 24, under Algorithm 1 all employers in
higher equivalence classes (if any such classes exist, i.e.,
if l > 1) are already matched to their employer-optimal
matches, and these matched applicants have already denied
employers in lower classes (including l). So the employers
in higher equivalence classes are no longer achievable to
the remaining applicants, and their matches are no longer
achievable to the remaining employers (the ones in equivalence classes ranked l or lower).
Take any employer ei in class l. We show that for each
aj who is achievable to ei w.r.t. Il and who is ranked by
ei in the same equivalence class as µ(ei ) or higher, there
exists a preference ordering 0 that refines Il which is
the same as except on how ei and aj rank each other,
under which ei and aj should get matched. So in order for
an employer-optimal algorithm f to distinguish between
and 0 it must ensure that ei interviews aj . (There is
no partial information state in which ei and aj haven’t
interviewed that can distinguish and 0 .)
Let 0 be such that aj ranks ei at the top of its class
(class l), and ei ranks aj at the top of her class. Note that
since µ is the employer-optimal matching under , thus
under each ei must have been denied by the applicants
it ranks above µ(ei ). Since nothing else, except on how ei
and aj rank each other, has changed in 0 compared to ,
ei must still get rejected by the applicants in equivalence
classes it ranks higher than the one aj belongs to. Now
since aj is at the top of her class ei prefers her to the
rest of its achievable applicants, and thus as ei is aj ’s top
achievable choice they must get matched under 0 .
depends on the underlying preference ordering, which it
does not receive as part of its input. We showed that our
first notion, very weak dominance, is unachievable, and
that our second, non weak domination, can be achieved
in exponential time. We proposed a nontrivial, tractable
algorithm, but showed that it is weakly dominated. Finally,
we showed that this algorithm is non-weakly dominated in
a restricted setting.
In future work, we plan either to prove that in the general setting there is no polynomial-time employer-optimal
algorithm that is not weakly dominated, or to find one that
is. We also intend to explore the consequences of dropping the requirement that agents must interview before
they can be matched; this assumption is important to a few
of our technical results, particularly in Section 5. Finally,
we plan to identify special settings under which we can
bound the number of interviews our proposed algorithm
performs (e.g., w.r.t. the number of equivalence classes and
the number of agents in each equivalence class).
References
[1] A. Abdulkadiroglu and T. Smez. School choice:
A mechanism design approach. Discussion papers,
Columbia University, Department of Economics, 2003.
[2] I. Ashlagi, D. Monderer, and M. Tennenholtze. Resource selection games with unknown number of players. AAMAS, pages 819–825, 2006.
[3] D. Gale and L.S. Shapley. College admission and the
stability of marriage. The American Mathematical
Monthly, 69(1):9–15, 1962.
[4] R.S. Lee and M. Schwarz. Interviewing in two-sided
matching markets. NBER Working Paper No. 14922,
2009.
[5] P.A. Pathak. Lotteries in student assignment. Unpublished mimeo, Harvard University, 2006.
[6] A.E. Roth. The national residency matching program
as a labor market. Journal of the American Medical
Association, 275(13):1054–1056, 1996.
The main claim of this section then follows directly from
[7] A.E. Roth and M.A.O. Sotomayor. Two-Sided MatchTheorem 17 and Lemmas 25 and 26.
ing: A Study in Game-Theoretic Modeling and AnalyTheorem 27. Under the restricted setting, Algorithm 1
sis. Cambridge University Press, 1992.
is very weakly dominant, polynomial time, and employer
optimal.
6
Conclusions
We introduced a model of two-sided matching markets
in which agents begin with partially ordered preference
information, and can refine these preferences through interviews. We defined two dominance notions to capture
the idea of finding a stable matching while minimizing the
number of interviews, accommodating the complication
that the number of interviews performed by an algorithm
10
A
Proofs of theorems and lemmas
Lemma 28. At the beginning of any given round r, Pei =
∅ for an unmatched employer ei if and only if ei has been
Theorem 17. Algorithm 1 returns an outcome in polyno- denied by all applicants in its ω th equivalence class and in
ei
mial time.
the equivalence classes ranked higher than eei ,ωei , if such
Proof. We break the proof into two parts. We first prove equivalence classes exist.
that (i) the Inner Loop breaks in polynomial time, and then, Proof. If direction: An interview proposal is removed
(ii) we complete the proof by showing that the Outer Loop from Pe whenever the interview takes place, in the ini
too breaks in polynomial time.
terview step, or the corresponding applicant denies ei , in
(i) The Inner Loop breaks in polynomial time: We the denial step. Since ei is denied by all applicants in its
prove that the Inner Loop break condition, “Until there is current equivalence class, ωe , thus Pe = ∅ .
i
i
no unmatched employer ei which has interviewed all the
Only if direction: Proof by induction on ωei .
achievable applicants in its current class—i.e. Pei = ∅—
Base case (ωei = 0): There is no equivalence class
and has not yet been denied by all of them”, is equivalent
ranked 0 or higher, so the theorem statement obviously
to the following condition, Condition 1: “Until no new
holds for ωei = 0.
job offer is going to be made if we run the loop another
Inductive step: Assume that the statement holds for
time”,Then we conclude that, since each employer can at
0 ≤ ωei ≤ k − 1, k > 1. We prove that it also holds for
most make n job offers, the Inner Loop should break in
ωei = k. We break the proof into two parts. We first prove
polynomial time.
that ei has been denied by all applicants in the equivalence
Assume that there exist an unmatched employer ei ,
classes ranked higher than kth. Then we complete the proof
Pei = ∅, that has not yet been denied by all of its achievby showing that it has also been denied by all applicants in
able applicants in its current class. Therefore, ei is going
the equivalence class ranked kth.
to make an offer to the achievable applicant it prefers the
The first time we run the proposal step, in round 1, for
most in the next round. Thus, Condition 1 implies the
all ei ∈ E : µ(ei ) = 0, N ext Class(ei ) = 1 (as lei > 0),
Inner Loop condition. Now, assume that no job offer is
and Pei = ∅. Thus all employers propose to interview
going to be made if we run the loop another time. Thus,
the applicants in their first equivalence class, and ωei =
according to the tentative acceptance step, each unmatched
1, ∀ei ∈ E in the first round right after running the proposal
employer either has not yet interviewed all achievable apstep. Therefore, r > 1 since k ≥ 1. It is only in the
plicants in its current class, or have been denied by all of
proposal step that ωei could be increased. Therefore, there
them. Therefore, Condition 1 is implied.
must be an earlier round r0 in which Pei = ∅ just before
(ii) The Outer Loop breaks in polynomial time: We
running the proposal step, and ωei is increased from k 0 < k
prove that the Outer Loop break condition, “Until each
to k in the proposal step. Thus, by the assumption, ei must
employer is either tentatively matched or is denied by all
have been then denied by all applicants in the equivalence
its acceptable applicants ”, is equivalent to the following
classes ranked k 0 th or higher earlier than round r0 . If k >
condition, Condition 2: “Until no new interview is going
k 0 +1 then ei must have been denied by all applicants in the
to occur if we run the loop another time”.Then we conequivalence classes ranked k 00 th, k 0 < k 00 < k, earlier than
clude that, since each employer can at most interview n
round r0 and thus earlier than round r (by the definition of
applicants, the Outer Loop should break in polynomial
N ext Class(ei ).
It is easy to see, from the proposal step, that the Outer
The algorithm does not finish round r −1 and start round
Loop break condition implies Condition 2. We now prove,
r if there is an unmatched employer who has interviewed
by contradiction, that Condition 2 also implies the Outer
all achievable applicants in its current class, and has not
Loop break condition. Assume that Condition 2 holds at
been denied by them all (by the loop-break condition of
the end of round r but the Outer Loop break condition does
the Inner Loop). Thus, since Pei = ∅ by assumption, it
not hold. Therefore, no interview takes place if we run the
must have been the case that ei is denied by all achievable
loop one more time, but there is at least one unmatched
applicants in its current equivalence class, eei ,k .
employer, say ei , who is not denied by all its acceptable
applicants. Assume that we run the loop one more time. Lemma 29. Under Algorithm 1, an employer ei proposes
Either Pei = ∅ before we run the proposal step or not. If to interview applicants in a given equivalence class eei ,k ,
Pei = ∅ before we run the proposal step, since ei is not 1 ≤ k ≤ lei , if and only if (i) ei is unmatched, (ii) ei has
yet denied by all its acceptable applicants, there must be been denied by all applicants in the equivalence classes
applicants who are still achievable to ei and to whom ei ranked higher than kth, and (iii) there exists at least one
has not yet proposed to interview; i.e. N ext Class(ei ) > applicant in eei ,k who has not yet denied ei .
0. Therefore, Pei must be nonempty after the proposal
step. Thus at least one unmatched employer gets picked in Proof. If direction: employer ei is unmatched, thus
the interview step to perform interviews and at least one µ(ei ) = 0. There exists at least one applicant in eei ,k who
has not yet denied ei , so Return N ext Class(ei ) = k.
interview takes place.
ei has been denied by all applicants in the equivalence
Two new lemmas are needed for what follows.
classes ranked higher than kth, including eei ,ωei . Thus,
11
since an applicant is removed from Pei whenever she denies ei (in the denial step), Pei = ∅. Therefore, according
to the proposal step, ei proposes to interview applicants in
eei ,k .
has not yet denied ei , thus, again by Lemma 29, ei has
not yet proposed to interview applicants in the equivalence
classes ranked lower than the one aj belongs to. Therefore
aj ∈ eei ,ωei , or in other words, k = ωei . Thus (ii) is
Only if direction: Interview proposals are only made in inferred.
Since Pei = ∅, thus ei has interviewed all achievable
the proposal step. According to the proposal step, ei can
applicants
in its current equivalence class, eei ,k . Since
only propose interviews if
ei prefers aj the most among its achievable applicants
(a) µ(ei ) = 0: thus ei is unmatched;
thus it must have been denied by those it ranks above aj .
Therefore, (iii) is inferred.
(b) Pei = ∅: thus, by Lemma 28 ei has been denied by
all applicants in the equivalence classes ranked ωei th Lemma 19. If an employer ei is denied by an applicant aj
or higher;
under Algorithm 1, then in the outcome aj must be matched
to an employer she prefers to ei .
(c) k = N ext Class(ei ): thus, by the description of
N ext Class(), ei must have been denied by appli- Proof. An applicant may deny an employer either in the
cants in the equivalence classes ranked between ωei th tentative acceptance step or the denial step. In the tentative
and kth; and
acceptance step, an applicant always accepts an offer she
prefers the most and rejects the rest, thus if ei is denied
(d) N ext Class(ei ) = k > 0: thus there is at least one
by aj in the tentative acceptance step then she must have
achievable applicant in eei ,k .
accepted a job offer from an employer she prefers to ei .
Notice that (i) is implied by (a), (ii) is implied by (b) and If ei is denied by aj in the denial step then it must be the
case that she was matched to an employer she prefers to
(c), and (iii) is implied by (iii).
ei . Since employers never withdraw their offer, once aj is
Lemma 18. Under Algorithm 1, an employer ei offers a matched to an employer she always improves her match
position to an applicant aj if and only if aj is achievable to and will not get matched to an employer she likes less.
ei and ei has been denied by all applicants that it prefers Thus aj must be matched in the outcome to an employer
to aj under any underlying strict preference ordering that she prefers to ei .
refines the current information state.
Theorem 20. Algorithm 1 is employer-optimal.
Proof. Assume that aj ∈ eei ,k . We can restate the claim
as the following: ei offers a position to an aj if and only if Proof. The claim is easy to prove if there is only 1 employer or only 1 applicant. If there is only 1 employer, that
(i) ei is unmatched and aj is achievable to ei ;
employer, say e1 , in the proposal step of the first round
(ii) ei is denied by all applicants in higher ranked equiv- proposes to interview all applicants in its first equivalence
alence classes, i.e. it is denied by every applicant class and interviews them all in the interview step. It then
offers a position to its most preferred applicant, say aj , in
ar ∈ eei ,k0 , k 0 < k; and
the job offer step; and aj accepts the offer and they get
(iii) ei has interviewed all achievable applicants in eei ,k matched. Algorithm 1 then returns this matching, which
is the employer-optimal matching, as outcome. If there
and is denied by those whom it ranks above aj .
is only 1 applicant, that applicant, say a1 , in the proposal
If direction: From (i), (ii), and Lemma29 we can infer step of the first round receives interview proposals from
that ei has proposed to interview applicants in eei ,k . By all employers. a1 then in each round gets interviewed by
(i) and Lemma 29, ei has not yet proposed to interview one of the employers in her first equivalence class and
applicants in the equivalence classes ranked lower than kth. consequently is offered a position in the job offer step of
Thus, ωei = k. By (iii), ei has interviewed all achievable the same round, which then she accepts or rejects based
applicants in eei ,k , thus Pei = ∅. Therefore, since ei is on how she compares the offer to the one she has already
unmatched and by (iii), ei offers a position to applicant aj . tentatively accepted. By the end, she accepts the offer
Only if direction: An employer may only offer a po- she most prefers. Algorithm 1 then returns this matching,
sition in the job offer step. According to the tentative which is the employer-optimal matching—and also the
acceptance step an employer ei can only offer a position applicant-optimal matching—as outcome.
to ai if ei is unmatched, Pei = ∅, and aj is achievable to
Assume that there are at least 2 employers and 2 appliei (hence (i) is inferred) and ei prefers her the most among cants. Assume for contradiction that there exists a preferits achievable applicants.
ence ordering B cE,A under which the employer-optimal
As ei knows that it prefers aj the most among its achiev- stable matching is different from the matching Algorithm
able applicants, so it must have interviewed her. Thus, by 1 returns. Let µso and µalg denote the employer-optimal
Lemma 29, ei must have been denied by all applicants in stable matching and the outcome of Algorithm 1 over ,
the equivalence classes ranked higher than kth. Since aj respectively.
12
We’ve assumed that µso and µalg are not identical; thus
either (a) there exists an employer that is matched in µalg to
an applicant, and in µso it is either unmatched or matched
to an applicant that it likes less than its match in µalg ; or
(b) case (a) does not hold and there exists an employer that
is matched in µso to an applicant, and under µalg it is either
unmatched or matched to an applicant that it likes less than
its match in µso .
Recall that the employer-proposal version of GaleShapley returns the employer-optimal stable matching. Let
µso
l denote the tentative matching created after phase l of
Gale-Shapley.
If Case (a) holds: Any such employer must have, under
Gale–Shapley, proposed to and consequently been rejected
by its match under µalg . Take the first phase of Gale–
Shapley, say phase l, in which some employer, say e1 , is
rejected by its match in a1 = µalg (e1 ). Since a1 rejects e1
in phase l, then in µso
l she must be paired with an employer
she prefers to e1 , say e2 . In µalg , e2 is not paired to a1 , so
either (i) e2 is matched to an applicant it prefers to a1 , or
(ii) e2 has been denied by a1 (by Lemma 18).
(i) In µalg , e2 is matched to an applicant it prefers to a1 ,
say a2 . Since e2 is matched to a1 in µso
l , it can not be
matched to any applicant it prefers to a1 in µso . As
a2 e2 a1 , it must have proposed to, and consequently
rejected by, a2 in a phase of Gale–Shapley earlier than
phase l, a contradiction (since we assumed that phase
l is the first phase of Gale–Shapley in which some
employer is rejected by its match in Algorithm 1)
(ii) In some step of Algorithm 1, e2 has been denied by a1 .
Thus, by Lemma 19, a1 must be matched in µalg to an
employer she prefers to e2 , a contradiction (since a1
is matched to e1 in µalg and we already established
that a1 prefers e2 to e1 ).
If Case (b) holds: Any such employer must have been,
under Algorithm 1, denied by its match in µso (by Lemma
18). Take the first phase of Algorithm 1, say phase l, in
which some employer is denied by its match in µso . Assume without loss of generality that in phase l employer e2
is denied by its match in µso , say a2 . Thus, at the end of
phase l, a2 must be matched to an employer, say e1 , that
she likes better than e2 . In the employer-optimal stable
matching a2 and e1 are not matched, so either (i) e1 is
matched to an applicant it prefers to a2 , or (ii) e1 has been
rejected by a2 under Gale-Shapley.
(i) In µso , e1 is matched to an applicant it prefers to a2 ,
say a1 . Since e1 prefers a1 to a2 , its match at the end
of phase l, thus, by Lemma 18, e1 has been denied
by a1 in an earlier phase of Algorithm 1 (and by the
time it offered a position to a2 ), a contradiction (since
we assumed that l is the first phase of Algorithm 1 in
which some employer is denied by its match in µso ).
(ii) Under Gale–Shapley, a2 rejects e1 . So in µso , a2
must be matched to some employer it prefers to e1 ,
13
a contradiction (since a2 is matched to e2 and we
already established that a2 prefers e1 to e2 ).
© Copyright 2026 Paperzz