# each college c i C has a capacity q i - the maximum number of students it will admit

Size: px
Start display at page:

Download "each college c i C has a capacity q i - the maximum number of students it will admit"

## Transcription

1 n colleges in a set C, m applicants in a set A, where m is much larger than n. each college c i C has a capacity q i - the maximum number of students it will admit each college c i has a strict order i over applicants, j i j means college i would strictly prefer to admit applicant j eqivalentlyi j i means that applicantj would strictly prefer to be admitted to college i write i j when college i just doesn t want to admit applicant i let B be a subset of applicants containing less than q i elements college preferences are responsive if if and only if j j B {j} B (j ) means that colleges preferences over students are independent of any other students they have admitted 0-0

2 a matching is a correspondence µ : C A 2 C A satisfying 1. i C, µ(i) q i ; 2. j A, either µ(j) C or µ(j) = 3. j µ(i) = µ(j) = i a matching is stable if 1. for each i C, µ(i) i µ(i) {j} for each j µ(i); 2. µ(j) j ; 3. there is no pair {i,j} such that i j µ(j) and either µ(i) < q i and µ(i) {j} µ(i) or there is a j such that µ(i)+{j} {j } µ(i) finite many to one matching problem with responsive preferences (note that part of this formulation is the assumption that applicants don t care who they are matched with, only where they are matched). Theorem: a stable matching for a many to one matching problem with responsive preferences is pareto optimal provided preferences are strict (i.e., i j implies!(j i) 0-1

3 PROOF: suppose not. Then there is an alternative matching µ which makes some applicant or college better off without hurting anyone else if that is true, then either µ (i) µ(i) for some college i or µ (j) µ(j) for some applicant j. All we need to prove is either one of these statements is true, some college or applicant must be made strictly worse off. the second possibility is easiest, because preferences are strict, applicant j must be matched to a different college inµ than inµand it must be one that he or she strictly prefers. Since µ is stable, whatever college i j is matched with underµ (i.e., µ (j)) must prefer (strictly) each of the applicants matched with it under µ to j (the set of applicants matched to it under µ ( formallyµ(µ (j)) µ (j) µ(µ (j)) + {j} {j } j ) otherwise the pair would be a blocking pair. so addingj toµ(µ (j)) either by displacing another applicant or forcing i to take an applicant he doesn t want makes college µ (j) worse off. If µ (j) is worse off than it was under µ then 0-2

4 that is the end of the story, the new matching µ doesn t pareto dominate µ because it makes µ (j) worse off. however, it could be that µ (j) is made better off in the new matching anyway because he is compensated with a bunch of different applicants that he likes If that is true he must be matched to at least one applicant who he strictly prefers to some applicant inµ(µ (j)). This new applicant must be worse off than he is under µ otherwise µ (j) and this new applicant would be a blocking pair. Hence if both j and µ (j) are better off in the new matching, then at least one of the applicants in µ (µ (j)) is worse off. Proof is similar if it is the college that is initially better off END PROOF. with strict preferences, a lot of matchings are pareto optimal, and most of them aren t stable e.g College A, College B each with one slot, applicant 1, applicant 2. both colleges prefer 1 to 2, both applicants strictly prefer A to B, µ(a) =

5 this matching isn t stable because A wants 1 and 1 wants A, but moving 1 from B to A makes B worse off so it is pareto optimal. Deferred Acceptance Algorithm every finite many to one matching problem with responsive preferences has a stable matching a stable matching can be computed algorithmically in a manner that is computationally efficient - meaning that you can find a stable matching more quickly with the algorithm than you can by enumerating all the possibilities then checking them for stability. the algorithm is called the deferred acceptance algorithm. 0-4

6 Applicant Try Again a b c d e f Colleges F T T F T T Rejected Mark College as False Application from j reject if j is worse than z College j is better than z, place in stack Appliant Stack a b z pop z out of the stack and rejec 0-5

7 Init - Applicant: create a register for each applicant containing a state value for each college. Set the state for each college to true an applicant has an input function that adjusts the states in the register, and an output function that sends a message to a college Init - College: create a stack to contain the names of admitted applicants, this stack is initially empty a college has an input function that processes an application message. If it wants to accept the applicant it puts the name in its stack. If it wants to reject an applicant it sends the applicants name to the output function, that sends a rejection message to that applicant. START (A0) - each applicant receives the start message picks its favorite college, the output function sends the an application to that college, then waits for another message. APPLICANT RECIEVES A REJECTION (A1): if it receives a rejection from college i, it marks the state for college i as false, picks its favorite college from the remaining open colleges, sends 0-6

8 that college an application, then waits for another message; COLLEGE RECEIVES AN APPLICATION (C1): if an application is received from applicant j, then add j to the stack if j is acceptable, and there are fewer than q i applicants in the stack, then wait for another application; if there are already q i applicants in the stack, check whether j is preferred to an existing applicant. If he is, put j in the stack, remove the less desired applicant, send him a rejection message and wait for more applications. If all applicants in the stack are better that j send a rejection to applicant j. the algorithm ends when there are no more messages the state of the applicants registers after all messages are sent defines the matching an applicant stops sending messages when he/she has been rejected by every college, or when he/she receives no rejection messages if applicant j stops and there are open colleges in his register, his match is his favorite open college - µ (j) 0-7

9 college i stops when it receives no new applications. Its match is equal to the q i or fewer applicants A i in its stack - µ (i) = A i. notice that each applicant sends at mostnmessages, there are m applicants, meaning that at most nm messages will be sent to colleges each message received by a college causes it to do a finite number of calculations: compare j with z, reorder the elements in a list, send a message if there are K operations needed to process a message, then there are at most Kmn operations needed to compute a matching (each applicant will send at most one message, leading to K calculations, there are n applicants) to exhaustively check each matching for stability when the number of colleges and student is the same and each student is matched to one college requires at most K 2 N computations, where K 2 is the number of computations needed to check whether a particular matching is stable and N is the total number of matchings (in the case where all applicants must be matched with some college and n = m, N = n! 0-8

10 since applicant 1 can be matched with n possible schools, once he is done, applicant 2 can be matched wtih n 1 possible schools, and so on. heuristically this means that when the number of colleges and applicants is large, the deferred acceptance algorithm will normally define a matching with fewer calculations that brute force checking Theorem 1: The matching µ defined by the deferred acceptance algorithm is stable. Proof: Suppose to the contrary that µ isn t stable. If there is a blocking pair, then some applicant j has a college i that she would prefer to µ (j), while i prefers j to at least one of the applicants in µ (i ). Since j always applies to the best open school by (A1), college i must have rejected the application from j at some point. By (C1) college i only rejects j if its worst applicant is better than j. Again using (C1) any subsequent applicant accepted by j will be preferred to its worst applicant, which implies that each applicant in µ(i ) is preferred to j, a contradition. 0-9

11 implicitly. a matching is an algorithm that takes as inputs, a set of preferences{ j, i } i=1,m;j=1, and produces a stable matching so we could write the matching asµ(j,{ j, j }) following the convention that for any applicant j, the algorithm produces a stable matching using preferences { j, j } (here j means the preferences of all the other applicants and colleges) Theorem 2: Let µ be the matching supported by the deferred acceptance algorithm. For any applicant j and any preference j, µ(j,{ j, j }) j µ ( j, { j, j }) provided the two assignments are different. Proof: see Roth and Sotomayer there are typically many stable matchings. For some applicant j, say i is attainable by j if there is some stable matching in which j is matched with i. Lemma 2: suppose that at some point during the operation of the deferred acceptance 0-10

12 algorithm, j sends an application to an attainable partner i. Then i will either prefer j to some applicant i has already accepted, or will be willing to accept j into an empty slot. Proof: Since i and j are matched in some stable allocation, j must be acceptable to i. So if fewer than q i applications have been accepted, then i will tentatively accept j. Suppose the assertion of the theory is true after k applications have been submitted and that i has already accepted q i applicants. Suppose that, contrary to the assertion in the lemma, j is no longer acceptable to attainable college i after the k +1 st application has been submitted. Then i must prefer all q i of his existing applications to j. By the induction hypothesis and the properties of the deferred acceptance algorithm, any applicant accepted already by i after k + 1 applicants have been submitted, prefers i to any college that is attainable for them. Since i is attainable for j, consider some matching µ in which j is accepted by i. Since there are q i applicants who prefer i to any college that is attainable to them, they prefer i to their match in µ, and i prefers each of these applicants to j. So there must be at least one 0-11

13 blocking pair for µ. Corollary: In the (applicant proposing version of the) deferred acceptance algorithm, each applicant weakly prefers his match to the match he receives in any other stable allocation. Proof: if he prefers the school in the other application, then he should just apply, by lemma 2 he would be accepted. Corollary: the allocation produced by the daa is in the core. Since any alternative allocation is pairwise stable, this follows from the last Corollary. Example a b c d SFU 1,3 2,2 3,2 4,3 UBC 2,1 1,1 3,1 4,1 UT 4,2 2,3 1,3 3.2 SFu prefers a to b to c to d, student a prefers UBC to UT to SFU a b c d SFU 1,3 2,2 3,2 4,3 UBC 2,1 1,1 3,1 4,1 UT 4,2 2,3 1,3 3,2 0-12

14 a b c d SFU 1,3 2,2 3,2 4,3 UBC 2,1 1,1 3,1 4,1 UT 4,2 2,3 1,3 3,2 a b c d SFU 1,3 2,2 3,2 4,3 UBC 2,1 1,1 3,1 4,1 UT 4,2 2,3 1,3 3,2 a b c d SFU 1,3 2,2 3,2 4,3 UBC 2,1 1,1 3,1 4,1 UT 4,2 2,3 1,3 3,2 a b c d SFU 1,3 2,2 3,2 4,3 UBC 2,1 1,1 3,1 4,1 UT 4,2 2,3 1,3 3,2 a b c d SFU 1,3 2,2 3,2 4,3 UBC 2,1 1,1 3,1 4,1 UT 4,2 2,3 1,3 3,2 0-13

15 Indifference - schools may not care what students they admit. As there is excess demand they will have a lottery which determines preferences. Then this outcome is not pareto optimal because a and c can trade places. top trading cycle Interviewing n schools, m applicants, k interview slots many to many matching problem with additional constraints imposed by interviews a matching is a correspondence µ : C A 2 C A satisfying 1. i C, µ(i) k; 2. j A, µ(j) k; 3. j A, either µ(j) C or µ(j) = 4. i C, either µ(i) A or µ(i) = 5. j µ(i) i µ(j) a matching is stable if 1. for each i C, µ(i) i µ(i) {j} for each j µ(i); 0-14

16 2. for each j A, µ(j) j µ(j) {i} for each i µ(j); 3. there is no pair {i,j} such that µ(j) + {i} j µ(j) while µ(j) < k or µ(k) + {i} {i } for some i in µ(j); while at the same time µ(i) < k and µ(i) {j} µ(i) or there is a j such that µ(i)+{j} {j } µ(i). the deferred acceptance algorith needs only a minor modification for colleges the set up is the same as in the original case for applicants, they begin with an array of truth values as before, one element for each college, each initialized to true. They also have a register consisting of exactly k elements START (A0) - each applicant receives the start message picks his or her k favorite colleges, places each of them in the register, then sends an application to each of the colleges in the register and then waits for another message. APPLICANT RECIEVES A REJECTION (A1): if it receives a rejection from college i, it marks 0-15

17 the state for college i as false, and removes college i from its register. He or she then picks their favorite college from the group of colleges that still have value true, sends that college an application, then waits for another message; COLLEGE RECEIVES AN APPLICATION (C1): if an application is received from applicant j, then add j to the register if j is acceptable, and there are fewer than k applicants in the register, then wait for another application; if there are already k applicants in the register, check whether j is preferred to one of the applicants who is already there. If he is, put j in the stack, remove the less desired applicant, send him a rejection message and wait for more applications. If all applicants in the stack are better that j send a rejection to applicant j. exactly as in the other mechanism, an applicant can t send more than n messages, a college can t receive more than m messages, so the process has to stop in finite time. the matching is given by the state of each applicant and school s register Theorem: if both applicants and schools have 0-16

18 responsive strict preferences, the matching µ generated by the deferred acceptance algorithm as decribed above is pairwise stable. Proof: the proof is the same as in the many to one case. To make things slightly simpler, we ll assume that µ (t) = k for all t = i,j. Suppose not. Then there is a blocking pair consisting of some college i and some applicant j, i.e. there is some applicant j such that µ (i) {j }+{j} µ (i) and some college i such that µ (j) {i }+{i} µ (j). since applicants apply in order of their preference to colleges and j prefers i to some school that he was matched with, j must have applied to i at some point and been rejected. Since i and j are a blocking pair, j must be acceptable to i, so i must have had applications from applicants that it preferred to j. Since all applicants that i accepted subsequently are preferred to applicants that are preferred to j, j must also be worse than every applicant interviewed by i in the matching µ, which is a contradiction.end Proof: Now we have a second problem - we have a 0-17

19 matching, but how do we know we can feasibly schedule interviews another algorithm - the reason the matching is constrained to contain exactly k elements is that there are exactly k interview slots - for example k consecutive half hour time slots. given a matching µ, a schedule is a mapping s : C A K, where K is the set of time slots a schedule is feasible for µ if s(i,j) s(i,j ) for each j µ(i) and j µ(i) s(i,j) s(i,j) for each i µ(j) and i µ(j). Theorem: There is a feasible schedule for each a matching µ. This follows from something called Vizing s Theorem a graph is a finite collection of vertices V and a collection of edges E that connect the vertices. The degree of a vertex is the number of 0-18

20 edges connected to that vertex. The degree of a graph is the maximum number of edges connected to any vertex. Edges are adjacent when they connect to the same vertex. A graph is bipartite when the set of vertices V can be divided into two subsets U and V in such a way that every edge connected to a vertex in U is also connected to a vertex in V and conversely. Every many to many matching can be represented as a bipartite graph. C is a collection of colors. A graph coloring c is a mapping from E C (literally each edge is colored) Vizings Theorem: every bipartite graph of degree can be colored in such a way that no two adjacent edges have the same color, and such that the range of the coloring contains only distinct colors. 0-19

21 u 1 U edge V v 1 u 2 v 2 u 3 v 3 u 4 v 4 u 5 v 5 v 6 Colleges UBC SFU UT UA UC interview Applicant a b c d e f 0-20

22 Colleges UBC SFU UT UA UC interview Applicant a b c d e f in the diagrams above, there are at most three edges emanating from any vertex, i.e., three interviews. So label the interview slots{1, 2, 3} and match this with the set of colors {Red, Green,Blue}. The theorem says that edges can be colored either red green or blue in such a way that no two adjacent edges have the same color, To see the analogy, just think of each vertex as either a college or an applicant, and each edge a match between a college and applicant. The colors are the interview slots. So the theorem says that we can assign the k interview slots to 0-21

23 college applicant pairs in such a way that for every college, no pair of applicants that it is matched with is given the same interview time, and for each applicant, the applicant never has interviews scheduled with two colleges at the same time. Proof of Vizings Theorem for interviews (a special case): You can use the pictures above to follow the logic. Suppose we select an arbitrary subset E of the edges in this graph. If E < k we can trivially assign each edge to a different interview slot. So lets proceed inductively and suppose that for any subset E containing t edges, we can assign interview times to each of those edges so that no two adjacent edges have the same interview time. This means that no college interviews two students at the same time, and no student has two or more interviews scheduled at the same time. the next step is to take a collection of edges E such that E = t + 1. By the induction hypothesis, if we were to choose any edge in E arbitrarily and take it out, we would be able to devise a feasible interview schedule for the 0-22

24 remaining edges. Lets do that, so that we have a feasible interview schedule for everyone but the pair consisting of college u i and applicant v j who are connected by the edge e that we took out of E. Since no applicant can have more than k matches, the number of interviews the applicant v j has left after we take out e is at most k 1 - meaning that there is an interview slot that j hasn t yet used, lets call it s j. We might try to use the slot s j to schedule an interview for v j with college u i. The complication, of course, is that college u i might be using the slot s j already in the interview schedule we created for the other slots. If u i isn t using that slot, we can schedule the extra interview. If college u i is using slot s j, there must still be some interview slot u i isn t using, for the same reason that v j had a free interview slot. Let s i be the slot that that college i isn t using. So lets create a chain of edges starting with college u i that continues until we find a free slot. If u i is using s j, identify the applicant who is scheduled to interview with u i in slot 0-23

25 s j. In the figure, this is applicant v 3. The s j along the edge indicates that applicant u 3 is currently scheduled to interview with college u i in slot s j (the one v j has open). u i v j u 2 s j v 2 u 3 v 3 u 4 v 4 u 5 v 5 v 6 Check to see if the conflicted applicant has slot s i free. If s i is free, then we can reschedule her into slot s i then schedule u j in slot s j, which would be a feasible schedule. But we might not be able to do this if u 3 in the diagram is already scheduled in slot s i. In this second figure, we draw an edge between v 3 and u 3 to indicate that we have already scheduled them in slot s i. 0-24

26 u i v j u 2 s j v 2 u 3 s i v 3 u 4 v 4 u 5 v 5 v 6 the next thing to check is whether school u 3 is using slot s j (the one that our original applicant has free). If it does, then we can reschedule. The way to do it is to move applicant u 3 from her current slot s i with college u 3 into the slot s j with college u 3. To restore her interview with college u i we could move her from slot s j to slot s i with college u i. What would be do if college u 3 already has an interview scheduled in slot s j? Just repeat, find the applicant who is scheduled to interview with u 3 in slot s j and ask them if they can move their interview to slot s i. If they can, here is what we would do - move their interview in slot s j to slot s i. Of course, 0-25

27 u 3 is currently scheduled to interview applicant v 3 in slot s i, so we can instead switch their interview with college u i from slot s j to s i. Then applicant u 3 ends up with the same two interview slots being filled, but with the colleges interchanged. This would free up slot s j for applicant v j. u i v j u 2 s j v 2 u 3 u 4 s i s j v 3 v 4 u 5 v 5 v 6 Lets do one more - if applicant v 3 doesn t have s i free, we ll find the college with whom she is scheduled to interview in slot s i, and check whether that college has s j free. 0-26

28 u i v j u 2 s j v 2 u 3 u 4 s i s j v 3 v 4 u 5 s i v 5 v 6 It might say no, in which case we would repeat. But eventually someone has to say yes. The reason is that if it kept repeating, we only have a finite number of colleges. So eventually we would have to loop back and hit either college u i or one of the others we had encountered before. It could never be u i because we can only get to u i if u i is scheduled with some applicant in slot i, but we started with the fact that u i has slot s i free. looping back to a college other than u i (without hitting u i first) is also impossible because the loop takes us through an interview scheduled in slot s i. Since the original schedule was feasible, each college has only one applicant scheduled in slot s i, so we would be looping 0-27

29 back through an applicant scheduled in slot j, which ultimately leads back to u i. to complete everything, lets just explain the rescheduling that occurs when college u 5 says that it has slot s j free. First v 5 is rescheduled from slot s i with u 5 to slot s j with u 5. His interview with u 3 is rescheduled to slot s i. So v 5 and u 5 end up with the same interviews (though at different times). Now u 3 has a conflict, because v 3 was originally schedule in slot s i with u 3, so move his slot to s j then move his interview with u i to slot s i which we know u i has free. This opens up slot s j with college u i so we can accomodate v j. This complete the induction. End Proof: notice that this proceedure is basically an algorithm. Start with an arbitrary but incomplete interview schedule, add a new interview that has to be rescheduled, then reshuffle the other interviews to make way. Our argument above shows that this will eventually schedule all the interviews. 0-28

### Two-Sided Matching Theory

Two-Sided Matching Theory M. Utku Ünver Boston College Introduction to the Theory of Two-Sided Matching To see which results are robust, we will look at some increasingly general models. Even before we

### Graph Theory Problems and Solutions

raph Theory Problems and Solutions Tom Davis tomrdavis@earthlink.net http://www.geometer.org/mathcircles November, 005 Problems. Prove that the sum of the degrees of the vertices of any finite graph is

### 136 CHAPTER 4. INDUCTION, GRAPHS AND TREES

136 TER 4. INDUCTION, GRHS ND TREES 4.3 Graphs In this chapter we introduce a fundamental structural idea of discrete mathematics, that of a graph. Many situations in the applications of discrete mathematics

### Small Maximal Independent Sets and Faster Exact Graph Coloring

Small Maximal Independent Sets and Faster Exact Graph Coloring David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science The Exact Graph Coloring Problem: Given an undirected

### Determination of the normalization level of database schemas through equivalence classes of attributes

Computer Science Journal of Moldova, vol.17, no.2(50), 2009 Determination of the normalization level of database schemas through equivalence classes of attributes Cotelea Vitalie Abstract In this paper,

### Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique

### THE ROOMMATES PROBLEM DISCUSSED

THE ROOMMATES PROBLEM DISCUSSED NATHAN SCHULZ Abstract. The stable roommates problem as originally posed by Gale and Shapley [1] in 1962 involves a single set of even cardinality 2n, each member of which

### Tiers, Preference Similarity, and the Limits on Stable Partners

Tiers, Preference Similarity, and the Limits on Stable Partners KANDORI, Michihiro, KOJIMA, Fuhito, and YASUDA, Yosuke February 7, 2010 Preliminary and incomplete. Do not circulate. Abstract We consider

### Two Algorithms for the Student-Project Allocation Problem

Two Algorithms for the Student-Project Allocation Problem David J. Abraham 1, Robert W. Irving 2, and David F. Manlove 2 1 Computer Science Department, Carnegie-Mellon University, 5000 Forbes Ave, Pittsburgh

### Last time we had arrived at the following provisional interpretation of Aquinas second way:

Aquinas Third Way Last time we had arrived at the following provisional interpretation of Aquinas second way: 1. 2. 3. 4. At least one thing has an efficient cause. Every causal chain must either be circular,

### Cycles in a Graph Whose Lengths Differ by One or Two

Cycles in a Graph Whose Lengths Differ by One or Two J. A. Bondy 1 and A. Vince 2 1 LABORATOIRE DE MATHÉMATIQUES DISCRÉTES UNIVERSITÉ CLAUDE-BERNARD LYON 1 69622 VILLEURBANNE, FRANCE 2 DEPARTMENT OF MATHEMATICS

### Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs Kousha Etessami U. of Edinburgh, UK Kousha Etessami (U. of Edinburgh, UK) Discrete Mathematics (Chapter 6) 1 / 13 Overview Graphs and Graph

### Online Supplement for Maximizing throughput in zero-buffer tandem lines with dedicated and flexible servers by Mohammad H. Yarmand and Douglas G.

Online Supplement for Maximizing throughput in zero-buffer tandem lines with dedicated and flexible servers by Mohammad H Yarmand and Douglas G Down Appendix A Lemma 1 - the remaining cases In this appendix,

### 3. Mathematical Induction

3. MATHEMATICAL INDUCTION 83 3. Mathematical Induction 3.1. First Principle of Mathematical Induction. Let P (n) be a predicate with domain of discourse (over) the natural numbers N = {0, 1,,...}. If (1)

### Diversity Coloring for Distributed Data Storage in Networks 1

Diversity Coloring for Distributed Data Storage in Networks 1 Anxiao (Andrew) Jiang and Jehoshua Bruck California Institute of Technology Pasadena, CA 9115, U.S.A. {jax, bruck}@paradise.caltech.edu Abstract

### Approximation Algorithms

Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

### Analysis of Algorithms, I

Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadth-first search (BFS) 4 Applications

### JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004

Scientiae Mathematicae Japonicae Online, Vol. 10, (2004), 431 437 431 JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS Ondřej Čepeka and Shao Chin Sung b Received December May 12, 2003; revised February

### The Role of Priorities in Assigning Indivisible Objects: A Characterization of Top Trading Cycles

The Role of Priorities in Assigning Indivisible Objects: A Characterization of Top Trading Cycles Atila Abdulkadiroglu and Yeon-oo Che Duke University and Columbia University This version: November 2010

### SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS. Nickolay Khadzhiivanov, Nedyalko Nenov

Serdica Math. J. 30 (2004), 95 102 SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS Nickolay Khadzhiivanov, Nedyalko Nenov Communicated by V. Drensky Abstract. Let Γ(M) where M V (G) be the set of all vertices

### What s the Matter with Tie-breaking? Improving Efficiency in School Choice

What s the Matter with Tie-breaking? Improving Efficiency in School Choice By Aytek Erdil and Haluk Ergin Abstract In several school choice districts in the United States, the student proposing deferred

### Class One: Degree Sequences

Class One: Degree Sequences For our purposes a graph is a just a bunch of points, called vertices, together with lines or curves, called edges, joining certain pairs of vertices. Three small examples of

### Scheduling Shop Scheduling. Tim Nieberg

Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations

### Reading 13 : Finite State Automata and Regular Expressions

CS/Math 24: Introduction to Discrete Mathematics Fall 25 Reading 3 : Finite State Automata and Regular Expressions Instructors: Beck Hasti, Gautam Prakriya In this reading we study a mathematical model

### [2], [3], which realize a time bound of O(n. e(c + 1)).

SIAM J. COMPUT. Vol. 4, No. 1, March 1975 FINDING ALL THE ELEMENTARY CIRCUITS OF A DIRECTED GRAPH* DONALD B. JOHNSON Abstract. An algorithm is presented which finds all the elementary circuits-of a directed

### Answer: (a) Since we cannot repeat men on the committee, and the order we select them in does not matter, ( )

1. (Chapter 1 supplementary, problem 7): There are 12 men at a dance. (a) In how many ways can eight of them be selected to form a cleanup crew? (b) How many ways are there to pair off eight women at the

### Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

### Midterm Practice Problems

6.042/8.062J Mathematics for Computer Science October 2, 200 Tom Leighton, Marten van Dijk, and Brooke Cowan Midterm Practice Problems Problem. [0 points] In problem set you showed that the nand operator

### Stationary random graphs on Z with prescribed iid degrees and finite mean connections

Stationary random graphs on Z with prescribed iid degrees and finite mean connections Maria Deijfen Johan Jonasson February 2006 Abstract Let F be a probability distribution with support on the non-negative

### COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH ZACHARY ABEL 1. Introduction In this survey we discuss properties of the Higman-Sims graph, which has 100 vertices, 1100 edges, and is 22 regular. In fact

### CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010

CS 598CSC: Combinatorial Optimization Lecture date: /4/010 Instructor: Chandra Chekuri Scribe: David Morrison Gomory-Hu Trees (The work in this section closely follows [3]) Let G = (V, E) be an undirected

### Solutions to Homework 6

Solutions to Homework 6 Debasish Das EECS Department, Northwestern University ddas@northwestern.edu 1 Problem 5.24 We want to find light spanning trees with certain special properties. Given is one example

### FIBRATION SEQUENCES AND PULLBACK SQUARES. Contents. 2. Connectivity and fiber sequences. 3

FIRTION SEQUENES ND PULLK SQURES RY MLKIEWIH bstract. We lay out some foundational facts about fibration sequences and pullback squares of topological spaces. We pay careful attention to connectivity ranges

### 6.852: Distributed Algorithms Fall, 2009. Class 2

.8: Distributed Algorithms Fall, 009 Class Today s plan Leader election in a synchronous ring: Lower bound for comparison-based algorithms. Basic computation in general synchronous networks: Leader election

### 2.3 Convex Constrained Optimization Problems

42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

### ! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

### Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline Goals Computation of Problems Concepts and Definitions Complexity Classes and Problems Polynomial Time Reductions Examples

### Lecture 7: NP-Complete Problems

IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 7: NP-Complete Problems David Mix Barrington and Alexis Maciel July 25, 2000 1. Circuit

### Unraveling versus Unraveling: A Memo on Competitive Equilibriums and Trade in Insurance Markets

Unraveling versus Unraveling: A Memo on Competitive Equilibriums and Trade in Insurance Markets Nathaniel Hendren January, 2014 Abstract Both Akerlof (1970) and Rothschild and Stiglitz (1976) show that

### Max Flow, Min Cut, and Matchings (Solution)

Max Flow, Min Cut, and Matchings (Solution) 1. The figure below shows a flow network on which an s-t flow is shown. The capacity of each edge appears as a label next to the edge, and the numbers in boxes

### ! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

### An Alternative Characterization of Top Trading Cycles

An Alternative Characterization of Top Trading Cycles Thayer Morrill December 2011 Abstract This paper introduces two new characterizations of the Top Trading Cycles algorithm. The key to our characterizations

### Chapter 7: Products and quotients

Chapter 7: Products and quotients Matthew Macauley Department of Mathematical Sciences Clemson University http://www.math.clemson.edu/~macaule/ Math 42, Spring 24 M. Macauley (Clemson) Chapter 7: Products

### CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory Allan Borodin November 15, 2012; Lecture 10 1 / 27 Randomized online bipartite matching and the adwords problem. We briefly return to online algorithms

### SHORT CYCLE COVERS OF GRAPHS WITH MINIMUM DEGREE THREE

SHOT YLE OVES OF PHS WITH MINIMUM DEEE THEE TOMÁŠ KISE, DNIEL KÁL, END LIDIKÝ, PVEL NEJEDLÝ OET ŠÁML, ND bstract. The Shortest ycle over onjecture of lon and Tarsi asserts that the edges of every bridgeless

### 17.6.1 Introduction to Auction Design

CS787: Advanced Algorithms Topic: Sponsored Search Auction Design Presenter(s): Nilay, Srikrishna, Taedong 17.6.1 Introduction to Auction Design The Internet, which started of as a research project in

### 4. CLASSES OF RINGS 4.1. Classes of Rings class operator A-closed Example 1: product Example 2:

4. CLASSES OF RINGS 4.1. Classes of Rings Normally we associate, with any property, a set of objects that satisfy that property. But problems can arise when we allow sets to be elements of larger sets

### CHAPTER 7 GENERAL PROOF SYSTEMS

CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes

### INCIDENCE-BETWEENNESS GEOMETRY

INCIDENCE-BETWEENNESS GEOMETRY MATH 410, CSUSM. SPRING 2008. PROFESSOR AITKEN This document covers the geometry that can be developed with just the axioms related to incidence and betweenness. The full

Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

### The Student-Project Allocation Problem

The Student-Project Allocation Problem David J. Abraham, Robert W. Irving, and David F. Manlove Department of Computing Science, University of Glasgow, Glasgow G12 8QQ, UK Email: {dabraham,rwi,davidm}@dcs.gla.ac.uk.

### SUBGROUPS OF CYCLIC GROUPS. 1. Introduction In a group G, we denote the (cyclic) group of powers of some g G by

SUBGROUPS OF CYCLIC GROUPS KEITH CONRAD 1. Introduction In a group G, we denote the (cyclic) group of powers of some g G by g = {g k : k Z}. If G = g, then G itself is cyclic, with g as a generator. Examples

### Mean Ramsey-Turán numbers

Mean Ramsey-Turán numbers Raphael Yuster Department of Mathematics University of Haifa at Oranim Tivon 36006, Israel Abstract A ρ-mean coloring of a graph is a coloring of the edges such that the average

### MATH10040 Chapter 2: Prime and relatively prime numbers

MATH10040 Chapter 2: Prime and relatively prime numbers Recall the basic definition: 1. Prime numbers Definition 1.1. Recall that a positive integer is said to be prime if it has precisely two positive

### The Trip Scheduling Problem

The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems

### A Sublinear Bipartiteness Tester for Bounded Degree Graphs

A Sublinear Bipartiteness Tester for Bounded Degree Graphs Oded Goldreich Dana Ron February 5, 1998 Abstract We present a sublinear-time algorithm for testing whether a bounded degree graph is bipartite

### Minimally Infeasible Set Partitioning Problems with Balanced Constraints

Minimally Infeasible Set Partitioning Problems with alanced Constraints Michele Conforti, Marco Di Summa, Giacomo Zambelli January, 2005 Revised February, 2006 Abstract We study properties of systems of

### 6.3 Conditional Probability and Independence

222 CHAPTER 6. PROBABILITY 6.3 Conditional Probability and Independence Conditional Probability Two cubical dice each have a triangle painted on one side, a circle painted on two sides and a square painted

### Guessing Game: NP-Complete?

Guessing Game: NP-Complete? 1. LONGEST-PATH: Given a graph G = (V, E), does there exists a simple path of length at least k edges? YES 2. SHORTEST-PATH: Given a graph G = (V, E), does there exists a simple

### If A is divided by B the result is 2/3. If B is divided by C the result is 4/7. What is the result if A is divided by C?

Problem 3 If A is divided by B the result is 2/3. If B is divided by C the result is 4/7. What is the result if A is divided by C? Suggested Questions to ask students about Problem 3 The key to this question

### Mathematical Induction

Mathematical Induction (Handout March 8, 01) The Principle of Mathematical Induction provides a means to prove infinitely many statements all at once The principle is logical rather than strictly mathematical,

### 1 Approximating Set Cover

CS 05: Algorithms (Grad) Feb 2-24, 2005 Approximating Set Cover. Definition An Instance (X, F ) of the set-covering problem consists of a finite set X and a family F of subset of X, such that every elemennt

### Large induced subgraphs with all degrees odd

Large induced subgraphs with all degrees odd A.D. Scott Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, England Abstract: We prove that every connected graph of order

### SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH

31 Kragujevac J. Math. 25 (2003) 31 49. SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH Kinkar Ch. Das Department of Mathematics, Indian Institute of Technology, Kharagpur 721302, W.B.,

### What s next? Reductions other than kernelization

What s next? Reductions other than kernelization Dániel Marx Humboldt-Universität zu Berlin (with help from Fedor Fomin, Daniel Lokshtanov and Saket Saurabh) WorKer 2010: Workshop on Kernelization Nov

### Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson

Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement

### Kevin James. MTHSC 412 Section 2.4 Prime Factors and Greatest Comm

MTHSC 412 Section 2.4 Prime Factors and Greatest Common Divisor Greatest Common Divisor Definition Suppose that a, b Z. Then we say that d Z is a greatest common divisor (gcd) of a and b if the following

### Best Monotone Degree Bounds for Various Graph Parameters

Best Monotone Degree Bounds for Various Graph Parameters D. Bauer Department of Mathematical Sciences Stevens Institute of Technology Hoboken, NJ 07030 S. L. Hakimi Department of Electrical and Computer

### WRITING PROOFS. Christopher Heil Georgia Institute of Technology

WRITING PROOFS Christopher Heil Georgia Institute of Technology A theorem is just a statement of fact A proof of the theorem is a logical explanation of why the theorem is true Many theorems have this

### Fairness in Routing and Load Balancing

Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria

### The Goldberg Rao Algorithm for the Maximum Flow Problem

The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }

### Lecture 17 : Equivalence and Order Relations DRAFT

CS/Math 240: Introduction to Discrete Mathematics 3/31/2011 Lecture 17 : Equivalence and Order Relations Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT Last lecture we introduced the notion

Computational Learning Theory Spring Semester, 2009/10 Lecture 11: Sponsored search Lecturer: Yishay Mansour Scribe: Ben Pere, Jonathan Heimann, Alon Levin 11.1 Sponsored Search 11.1.1 Introduction Search

### Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs

CSE599s: Extremal Combinatorics November 21, 2011 Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs Lecturer: Anup Rao 1 An Arithmetic Circuit Lower Bound An arithmetic circuit is just like

### Graphs without proper subgraphs of minimum degree 3 and short cycles

Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract

### 6.2 Permutations continued

6.2 Permutations continued Theorem A permutation on a finite set A is either a cycle or can be expressed as a product (composition of disjoint cycles. Proof is by (strong induction on the number, r, of

### MINITAB ASSISTANT WHITE PAPER

MINITAB ASSISTANT WHITE PAPER This paper explains the research conducted by Minitab statisticians to develop the methods and data checks used in the Assistant in Minitab 17 Statistical Software. One-Way

### ON THE COMPLEXITY OF THE GAME OF SET. {kamalika,pbg,dratajcz,hoeteck}@cs.berkeley.edu

ON THE COMPLEXITY OF THE GAME OF SET KAMALIKA CHAUDHURI, BRIGHTEN GODFREY, DAVID RATAJCZAK, AND HOETECK WEE {kamalika,pbg,dratajcz,hoeteck}@cs.berkeley.edu ABSTRACT. Set R is a card game played with a

### Notes from Week 1: Algorithms for sequential prediction

CS 683 Learning, Games, and Electronic Markets Spring 2007 Notes from Week 1: Algorithms for sequential prediction Instructor: Robert Kleinberg 22-26 Jan 2007 1 Introduction In this course we will be looking

### On Integer Additive Set-Indexers of Graphs

On Integer Additive Set-Indexers of Graphs arxiv:1312.7672v4 [math.co] 2 Mar 2014 N K Sudev and K A Germina Abstract A set-indexer of a graph G is an injective set-valued function f : V (G) 2 X such that

### NP-Completeness I. Lecture 19. 19.1 Overview. 19.2 Introduction: Reduction and Expressiveness

Lecture 19 NP-Completeness I 19.1 Overview In the past few lectures we have looked at increasingly more expressive problems that we were able to solve using efficient algorithms. In this lecture we introduce

V. Adamchik 1 Graph Theory Victor Adamchik Fall of 2005 Plan 1. Basic Vocabulary 2. Regular graph 3. Connectivity 4. Representing Graphs Introduction A.Aho and J.Ulman acknowledge that Fundamentally, computer

### The Minimum Consistent Subset Cover Problem and its Applications in Data Mining

The Minimum Consistent Subset Cover Problem and its Applications in Data Mining Byron J Gao 1,2, Martin Ester 1, Jin-Yi Cai 2, Oliver Schulte 1, and Hui Xiong 3 1 School of Computing Science, Simon Fraser

### Labeling outerplanar graphs with maximum degree three

Labeling outerplanar graphs with maximum degree three Xiangwen Li 1 and Sanming Zhou 2 1 Department of Mathematics Huazhong Normal University, Wuhan 430079, China 2 Department of Mathematics and Statistics

### School Timetabling in Theory and Practice

School Timetabling in Theory and Practice Irving van Heuven van Staereling VU University, Amsterdam Faculty of Sciences December 24, 2012 Preface At almost every secondary school and university, some

### Exponential time algorithms for graph coloring

Exponential time algorithms for graph coloring Uriel Feige Lecture notes, March 14, 2011 1 Introduction Let [n] denote the set {1,..., k}. A k-labeling of vertices of a graph G(V, E) is a function V [k].

### Practical Guide to the Simplex Method of Linear Programming

Practical Guide to the Simplex Method of Linear Programming Marcel Oliver Revised: April, 0 The basic steps of the simplex algorithm Step : Write the linear programming problem in standard form Linear

### The Graphical Method: An Example

The Graphical Method: An Example Consider the following linear program: Maximize 4x 1 +3x 2 Subject to: 2x 1 +3x 2 6 (1) 3x 1 +2x 2 3 (2) 2x 2 5 (3) 2x 1 +x 2 4 (4) x 1, x 2 0, where, for ease of reference,

### The Design of School Choice Systems in NYC and Boston: Game-Theoretic Issues

The Design of School Choice Systems in NYC and Boston: Game-Theoretic Issues Alvin E. Roth joint work with Atila Abdulkadiroğlu, Parag Pathak, Tayfun Sönmez 1 Outline of today s class NYC Schools: design

### Sudoku puzzles and how to solve them

Sudoku puzzles and how to solve them Andries E. Brouwer 2006-05-31 1 Sudoku Figure 1: Two puzzles the second one is difficult A Sudoku puzzle (of classical type ) consists of a 9-by-9 matrix partitioned

### Network (Tree) Topology Inference Based on Prüfer Sequence

Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 vanniarajanc@hcl.in,

### 0.0.2 Pareto Efficiency (Sec. 4, Ch. 1 of text)

September 2 Exercises: Problem 2 (p. 21) Efficiency: p. 28-29: 1, 4, 5, 6 0.0.2 Pareto Efficiency (Sec. 4, Ch. 1 of text) We discuss here a notion of efficiency that is rooted in the individual preferences

### Some Polynomial Theorems. John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom.

Some Polynomial Theorems by John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom.com This paper contains a collection of 31 theorems, lemmas,

### Online Appendix (not for publication) College Admissions as Non-Price Competition: The Case of South Korea Index

Online Appendix (not for publication) College Admissions as Non-Price Competition: The Case of South Korea By Christopher Avery, Soohyung Lee, and Alvin E. Roth Index 1. Additional Background on the Korean

### Lecture 16 : Relations and Functions DRAFT

CS/Math 240: Introduction to Discrete Mathematics 3/29/2011 Lecture 16 : Relations and Functions Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT In Lecture 3, we described a correspondence

### This chapter is all about cardinality of sets. At first this looks like a

CHAPTER Cardinality of Sets This chapter is all about cardinality of sets At first this looks like a very simple concept To find the cardinality of a set, just count its elements If A = { a, b, c, d },

### This puzzle is based on the following anecdote concerning a Hungarian sociologist and his observations of circles of friends among children.

0.1 Friend Trends This puzzle is based on the following anecdote concerning a Hungarian sociologist and his observations of circles of friends among children. In the 1950s, a Hungarian sociologist S. Szalai

### CHAPTER 3. Methods of Proofs. 1. Logical Arguments and Formal Proofs

CHAPTER 3 Methods of Proofs 1. Logical Arguments and Formal Proofs 1.1. Basic Terminology. An axiom is a statement that is given to be true. A rule of inference is a logical rule that is used to deduce