The Complexity of Fairness through Equilibrium

Abraham Othman, Christos Papadimitriou, Aviad Rubinstein

Introduction

University classes have limited capacity, and some are more popular than others. This creates an interesting allocation problem. Imagine that each student has ordered all possible bundles of courses from most desirable to least desirable, and the capacities of classes are known. What is the best way to allocate class seats to students? There are several desiderata for a course allocation mechanism:

Are all possible seats in courses allocated?

Are students motivated to honestly report their preferences to the mechanism?

Can the allocation be computed from the data in polynomial time?

Competitive Equilibrium from Equal Incomes (CEEI) (Foley, 1967; Varian, 1974; Thomson and Varian, 1985) is a venerable mechanism with many attractive properties: In CEEI all agents are allocated the same amount of “funny money”, next they declare their preferences, and then a price equilibrium is found that clears the market. The market clearing guarantees efficiency and feasibility. The mechanism has a strong, albeit technical, ex post fairness guarantee that emerges from the notion that agents who miss out on a valuable, competitive item will have extra funny money to spend on other items at equilibrium. Truthfulness is problematic — as usual with market mechanisms — even though the problem is mitigated by the large number of agents. However, CEEI works when the resources to be allocated are divisible and the utilities relatively benign. It is easy to construct examples in which a CEEI does not exist when preferences are complex or the resources being allocated are not divisible. Indeed, both issues arise in practice in a variety of allocation problems, including shifts to workers, landing slots to airplanes, and our favorite, courses to students. (Varian, 1974; Budish, 2011).

It was recently shown in Budish (2011) that an approximation to a CEEI solution, called A-CEEI, exists even when the resources are indivisible and agent preferences are arbitrarily complex, as required by the course allocation problems one sees in practice. The approximate solution guaranteed to exist is approximately fair (in that the agents are given almost the same budget), and approximately efficient and feasible (in that all classes are filled close to capacity, with the possible exception of very unpopular classes). This result seems to be wonderful news for the class allocation problem. However, there is a catch: Budish’s proof is non-constructive as it relies on Kakutani’s fixed-point theorem.

A heuristic algorithm for solving A-CEEI was introduced in Othman et al. (2010). The algorithm is a modified search analogue to the traditional tâtonnement process, where the prices of courses that are oversubscribed are increased, and the prices of courses that are undersubscribed are decreased. This heuristic algorithm is currently used by the Wharton School (University of Pennsylvania) to assign their MBA students to courses. It has been documented that the heuristic algorithm often produces much tighter approximations than the theoretical bound; yet, on some instances it fails to find even the guaranteed approximation (Budish, 2011, Section 9).

Thus A-CEEI is a problem where practical interest motivates theoretical inquiry. We have a theorem that guarantees the existence of an approximate equilibrium — the issue is finding it. Can the heuristic of Othman et al. (2010) be replaced by a fast and rigorous algorithm for finding an approximate CEEI? Or are there complexity obstacles to approximating CEEI?

In this paper, we show that finding the guaranteed approximation to CEEI is an intractable problem:

Theorem 2, informal statement. The problem of finding an A-CEEI as guaranteed by Budish (2011) is \PPAD\PPAD-complete.

We also show an essentially optimal \NP\NP-hardness result for determining whether a better approximation exists.

Theorem 3, informal statement. It is \NP\NP-hard to distinguish between an instance where an exact CEEI exists, and one in which there is no A-CEEI tighter than guaranteed in Budish (2011).

The Course Allocation Problem

Even though the A-CEEI and the existence theorem in (Budish, 2011) are applicable to a broad range of allocation problems, we shall describe our results in the language of the course allocation problem.

We are given a set of MM courses with integer capacities (the supply) (qj)j=1M(q_{j})_{j=1}^{M}, and a set of NN students, where each student ii has a set Ψi2M\Psi_{i}\subseteq 2^{M} of permissible course bundles, with each bundle containing at most kMk\leq M courses. The set Ψi\Psi_{i} encodes both scheduling constraints (e.g., courses that meet at the same time) and any constraints specific to student ii (e.g. prerequisites).

Each student ii has a strict ordering over her permissible schedules, denoted by i\preccurlyeq_{i}. We allow arbitrarily complex preferences — in particular, students may regard courses as substitutes or complements. More formally:

Course Allocation Problem The input to a course allocation problem consists of:

For each student ii a set of course bundles (Ψi)i=1N\left(\Psi_{i}\right)_{i=1}^{N}.

The students’ reported preferences, (i)i=1N\left(\preccurlyeq_{i}\right)_{i=1}^{N},

The course capacities, (qj)j=1M\left(q_{j}\right)_{j=1}^{M}, and

The output to a course allocation problem consists of:

Prices for each course (pj)j=1M(p_{j}^{*})_{j=1}^{M},

Allocations for each student(xi)i=1N(x_{i}^{*})_{i=1}^{N}, and

Budgets for each student (bi)i=1N\left(b_{i}^{*}\right)_{i=1}^{N}.

How is an allocation evaluated? The clearing error of a solution to the allocation problem, is the L2\mathcal{L}_{2} norm of the length-MM vector of seats oversubscribed in any course, or undersubscribed seats in courses with positive price.

The clearing error α\alpha of an allocation is

We can now define the notion of approximate CEEI. The quality of approximation is characterized by two parameters: α\alpha, the clearing error (how far is our solution from a true competitive equilibrium?) and β\beta, the bound on the difference in budgets (how far from equal are the budgets?). Informally, α\alpha can be thought of as the approximation loss on efficiency, and β\beta can be thought of as the approximation loss on fairness.

An allocation is a (α,β)(\alpha,\beta)-CEEI if:

Each student is allocated their most preferred affordable bundle. Formally

Total clearing error is at most α\alpha.

In Budish (2011) it is proved that an (α,β)(\alpha,\beta)-approximate CEEI always exists, for some quite favorable (and as we shall see, essentially optimal) values of α\alpha and β\beta:

Budish (2011) For any input preferences, there exists a (α,β)(\alpha,\beta)-CEEI with α=kM/2\alpha=\sqrt{kM/2} and any β>0\beta>0.

Recall that kk is the maximum bundle size. α=kM/2\alpha=\sqrt{kM/2} means that, for large number of students and course capacities, the market-clearing error converges to zero quite fast as a fraction of the endowment. It is also shown in Budish (2011) that the mechanism which allocates courses according to such an A-CEEI satisfies attractive criteria of approximate fairness, approximate truthfulness, and approximate Pareto efficiency. The reader may consult Budish (2011) for the precise definitions of the economic properties of the A-CEEI mechanism.

Theorem 1 is an example of a non-constructive existential result; such theorems are common in mathematics, and are quite often related to economics (recall Nash’s theorem, Arrow-Debreu theorem, etc.). It is often important to determine whether there is a polynomial algorithm for finding the solution guaranteed by such a theorem; computational problems of this nature are called total, because they correspond to total functions from inputs to solutions.

In exploring the difficulty of total problems, applying the methodology of \NP\NP-completeness is problematic. The intuitive reason is that, for example, a reduction from 3SAT relies heavily on the fact that the starting 3SAT instance may be unsatisfiable. Therefore 3SAT cannot be reduced in any meaningful way to a total problem such as A-CEEI (see Chapter 2 of Nisan et al. (2007) for a discussion of this point). \NP\NP-completeness does not seem to be an option. But there is an alternative: Total problems can often be proved complete for certain complexity classes between \P and \NP\NP. For example, during the past decade several game-theoretic problems have been proved complete for the complexity class \PPAD\PPAD, containing difficult problems related to fixed point theorems such as Brouwer’s, Nash’s, competitive equilibria, and so on (Papadimitriou (1994); Abbott et al. (2005); Codenotti et al. (2006); Huang and Teng (2007); Chen et al. (2009); Chen and hua Teng (2009); Daskalakis et al. (2009); Kintali et al. (2009); Palvolgyi (2009); Chen and Teng (2011); Vazirani and Yannakakis (2011); Chen et al. (2013)).

There are several interesting and subtle ways of defining \PPAD\PPAD, but for our purposes it is most convenient to define it as the class of all total problems that are reducible to the problem Gcircuit, the problem of finding the fixed point of a continuous function specified by a “generalized circuit”. Gcircuit is defined in the next section.

A-CEEI is \PPAD\PPAD\PPAD-Complete

Computing a (kM2,β)\left(\sqrt{\frac{kM}{2}},\beta\right)-CEEI is \PPAD\PPAD-complete, for some polynomially small β>0.\beta>0.

The rest of this section is devoted to the proof of this theorem.

We first establish that the problem belongs to the class \PPAD\PPAD; this proof is much harder than usual (see Appendix A). We follow the steps of the existence proof in Budish (2011), and show that each one can be carried out either in polynomial time, or through a fixed point. One difficulty is that certain steps of Budish’s proof are randomized, and we must be derandomized in polynomial time.

The problem Gcircuit

The reduction is from the PPAD-complete problem Gcircuit, alluded to in the previous section.

Generalized circuits are similar to the standard algebraic circuits, the main difference being that generalized circuits contain cycles, which allow them to verify fixed points of continuous functions. Formally,

A generalized circuit SS is a pair (V,T)(V,\cal{T}), where VV is a set of nodes and T\cal{T} is a collection of gates. Every gate TTT\in\cal{T} is a 5-tuple T=(G,v1,v2,v)T=(G,v_{1},v_{2},v), in which G{G/2,G12,G+,G,G<,G,G,G¬}G\in\{G_{/2},G_{\frac{1}{2}},G_{+},G_{-},G_{<},G_{\wedge},G_{\vee},G_{\neg}\}Chen et al. (2009) define slightly different gates, whose ϵ\epsilon-approximation can be simulated by O(log1/ϵ)O(\log 1/\epsilon) of our gates: GζG_{\zeta} can be simulated using G12G_{\frac{1}{2}} and G+G_{+}; and G×ζG_{\times\zeta} and G=G_{=} can be simulated using G/2G_{/2} and G+G_{+}. is the type of the gate; v1,v2V{nil}v_{1},v_{2}\in V\cup\{nil\} are the first and second input nodes of the gate; vVv\in V is the output node.

The collection T\cal{T} of gates must satisfy the following important property: For every two gates T=(G,v1,v2,v)T=(G,v_{1},v_{2},v) and T=(G,v1,v2,v)T^{\prime}=(G^{\prime},v^{\prime}_{1},v^{\prime}_{2},v^{\prime}) in T\cal{T}, vvv\neq v^{\prime}.

Given a generalized circuit, we are interested in the computational problem of finding an assignment that simultaneously satisfies all the constraints defined by the gates.

VALUE: fG1212f_{G_{\frac{1}{2}}}\equiv\frac{1}{2}

SUM: fG+(x,y)=min(x+y,1)f_{G_{+}}\left(x,y\right)=\min\left(x+y,1\right)

DIFF: fG(x,y)=max(xy,0)f_{G_{-}}\left(x,y\right)=\max\left(x-y,0\right)

LESS: fG<(x,y)={1x>y+β0y>x+βf_{G_{<}}\left(x,y\right)=\begin{cases}1&x>y+\beta\\ 0&y>x+\beta\end{cases}

AND: fG(x,y)={1(x>12+β)(y>12+β)0(x<12β)(y<12β)f_{G_{\wedge}}\left(x,y\right)=\begin{cases}1&\left(x>\frac{1}{2}+\beta\right)\wedge\left(y>\frac{1}{2}+\beta\right)\\ 0&\left(x<\frac{1}{2}-\beta\right)\vee\left(y<\frac{1}{2}-\beta\right)\end{cases}

OR: fG(x,y)={1(x>12+β)(y>12+β)0(x<12β)(y<12β)f_{G_{\vee}}\left(x,y\right)=\begin{cases}1&\left(x>\frac{1}{2}+\beta\right)\vee\left(y>\frac{1}{2}+\beta\right)\\ 0&\left(x<\frac{1}{2}-\beta\right)\wedge\left(y<\frac{1}{2}-\beta\right)\end{cases}

Given a generalized circuit S=(V,T)\cal{S}=(V,\cal{T}), ϵ\epsilon-Gcircuit is the problem of finding an assignment that ϵ\epsilon-approximately satisfies it. It is shown in Chen et al. (2009) to be \PPAD\PPAD-complete for ϵ=1\poly(V)\epsilon={1\over\poly(|V|)}.

Overview of the Reduction

We shall reduce the ϵ\epsilon-Gcircuit problem to that of finding an (α,β)(\alpha,\beta)-CEEI, with approximation parameters α=Θ(N/M)\alpha=\Theta(N/M) and ϵ=β/2\epsilon=\beta/2. (Note that, by increasing NN, we can make α\alpha arbitrarily large as a function of MM; in particular, α>kM/2\alpha>\sqrt{kM/2}.)

We will construct gadgets (that is, small sets of courses, students, capacities and preferences) for the various types of gates in the generalized circuit. Each gadget that we construct has one or more dedicated “input course(s)”, a single “output course”, and possibly some “interior courses”. An output course of one gadget can (and will) be an input to another. The construction will guarantee that in any A-CEEI the price of the output course will be approximately equal to the gate applied to the prices of the input courses.

Gate gadgets

To illustrate what needs to be done, we proceed to construct a gate for the function fG¬(x)=1xf_{G_{\neg}}\left(x\right)=1-x; in particular, this implements a logic NOT.

Let nx>4αn_{x}>4\alpha and suppose that the economy contains the following courses:

c1xc_{{1-x}} with capacity q1x=nx/2q_{{1-x}}=n_{x}/2 (the “output course”);

nxn_{x} students interested only in the schedule {cx,c1x}\left\{c_{x},c_{{1-x}}\right\};

and suppose further that at most n1x=nx/4n_{{1-x}}=n_{x}/4 other students are interested in course c1xc_{{1-x}}.

Then in any (α,β)\left(\alpha,\beta\right)-CEEI

If p1x>1px+βp_{{1-x}}^{*}>1-p_{x}^{*}+\beta, then none of the nxn_{x} students will be able to afford the bundle {cx,c1x}\left\{c_{x},c_{{1-x}}\right\}, and therefore there will be at most n1x=nx/4n_{{1-x}}=n_{x}/4 students enrolled in the c1xc_{{1-x}} - much less than the capacity nx/2n_{x}/2. Therefore z1xnx/4z_{{1-x}}\geq n_{x}/4.

On the other hand, if p1x<1pxp_{{1-x}}^{*}<1-p_{x}^{*}, then all nxn_{x} students can afford the bundle {cx,c1x}\left\{c_{x},c_{{1-x}}\right\} - therefore the class will be overbooked by nx/2n_{x}/2; thus, z1xnx/2z_{{1-x}}\geq n_{x}/2.

Therefore if p1x[1px,1px+β]p_{{1-x}}^{*}\notin\left[1-p_{x}^{*},1-p_{x}^{*}+\beta\right], then z2nx/4>α\left\|z\right\|_{2}\geq n_{x}/4>\alpha - a contradiction to (α,β)\left(\alpha,\beta\right)-CEEI. ∎

Similarly, we construct gadgets that simulate all the gates of the generalized circuit:

Let nx28αn_{x}\geq 2^{8}\cdot\alpha and suppose that the economy has courses cxc_{x} and cyc_{y}. Then for any of the gate functions fGf_{G} in the definition of ϵ\epsilon-Gcircuit, we can add: a course czc_{z}, and at most nxn_{x} students interested in each of cxc_{x} and cyc_{y}, such that in any (α,β)\left(\alpha,\beta\right)-CEEI pz[f(px,py)2β,fG(px,py)+2β]p_{z}^{*}\in\left[f\left(p_{x}^{*},p_{y}^{*}\right)-2\beta,f_{G}\left(p_{x}^{*},p_{y}^{*}\right)+2\beta\right].

In particular, pzp_{z}^{*} continue to satisfy the above inequalities in every (α,β)\left(\alpha,\beta\right)-CEEI even if up to nznx/28n_{z}\leq n_{x}/2^{8} additional students (beyond the ones needed in the proof) are interested in course czc_{z}.

We defer the proof of Lemma 2 to the appendix.

Course-size amplification

So far, we have constructed gadgets that compute all the gates necessary for the circuit in the reduction from ϵ\epsilon-Gcircuit. What happens when we try to concatenate them to form a circuit? Recall the last sentence in the statement of Lemma 2: It says that the prices continue to behave like the gate that is simulated, as long as there are not too many additional students that try to take the output course. (If there are more students, they may raise the price of the course beyond what we expect.) In particular, the number of additional students that may want the output course is smaller than the number of students that want the input course.

If we concatenated the gadgets without change, we would need to have larger class sizes as we increase the depth of the simulated circuit. This increase in class size is exponential in the depth of the circuit. Things get even worse- since we reduce from generalized circuits, our gates form cycles. If the class size must increase at every gate it would have to be infinite!

To overcome this problem we construct a COPY gadget that preserves the price from the input course, but is robust to twice as many additional students:

Let nx100αn_{x}\geq 100\alpha and suppose that the economy contains the following courses:

for i=1,10i=1,\dots 10, cic_{i} with capacities qi=0.5nxq_{i}=0.5\cdot n_{x} (“interior courses”);

cxc_{x^{\prime}} with capacity qxq_{x^{\prime}}, s.t. qxqx4nxq_{x}\leq q_{x^{\prime}}\leq 4n_{x} (“output course”);

nxn_{x} students interested in schedules ({cx,ci})i=110\left(\left\{c_{x},c_{i}\right\}\right)_{i=1}^{10} (in this order);

ni=0.49nxn_{i}=0.49\cdot n_{x} students (i\forall i) interested in schedules ({cx,ci},{ci},{ci+1},,{c10})\left(\left\{c_{x^{\prime}},c_{i}\right\},\left\{c_{i}\right\},\left\{c_{i+1}\right\},\dots,\left\{c_{10}\right\}\right) (in this order);

and suppose further that at most nx=2nxn_{x^{\prime}}=2n_{x} other students are interested in course cxc_{x^{\prime}}.

Then in any (α,β)\left(\alpha,\beta\right)-CEEI

In particular, notice that the price of cxc_{x^{\prime}} is guaranteed to approximate the price of cxc_{x}, even in the presence of additional nx=2nxn_{x^{\prime}}=2n_{x} students - twice as many students as we added to cxc_{x}.

We start by proving that all the cic_{i}’s simulate NOT gadgets simultaneously, i.e. for every ii and every (α,β)\left(\alpha,\beta\right)-CEEI, pi[1px,1px+β]p_{i}^{*}\in\left[1-p_{x}^{*},1-p_{x}^{*}+\beta\right].

If pi>1px+βp_{i}^{*}>1-p_{x}^{*}+\beta, assume wlog that it is the first such ii, i.e. pj1px+β<pip_{j}^{*}\leq 1-p_{x}^{*}+\beta<p_{i}^{*} for every j<ij<i.

None of the nxn_{x} students can afford buying both cxc_{x} and cic_{i}. Furthermore, for every j<ij<i, none of the njn_{j} students will prefer cic_{i} over cjc_{j}. Therefore at most nin_{i} students will take this course: zi0.01nxz_{i}^{*}\geq 0.01n_{x}.

If, on the other hand, pi<1pxp_{i}^{*}<1-p_{x}^{*}, then all nxn_{x} students will buy course cic_{i} or some previous course cjc_{j} (for jij\leq i); additionally for every jij\leq i, each of the njn_{j} corresponding students will buy some course ckc_{k} for jkij\leq k\leq i. Therefore the total overbooking of classes 1,,i1,\dots,i will be at least jizjnx(10.01i)\sum_{j\leq i}z_{j}^{*}\geq n_{x}\cdot\left(1-0.01i\right) - a contradiction to (α,β)\left(\alpha,\beta\right)-CEEI.

Now that we established that pi[1px,1px+β]p_{i}^{*}\in\left[1-p_{x}^{*},1-p_{x}^{*}+\beta\right], we shall prove the main claim, i.e. that px[pxβ,px+β]p_{x^{\prime}}^{*}\in\left[p_{x}^{*}-\beta,p_{x}^{*}+\beta\right].

If px>px+βp_{x^{\prime}}^{*}>p_{x}^{*}+\beta, then none of the nin_{i} students, for any nin_{i}, can afford buying both cxc_{x^{\prime}} and cic_{i}. Therefore, even in the presence of additional nx=2nxn_{x^{\prime}}=2n_{x} students who want to take cxc_{x^{\prime}}, the class will be undersubscribed by zxqxnx=2nxz_{x^{\prime}}^{*}\geq q_{x^{\prime}}-n_{x^{\prime}}=2n_{x}

If px<x+βp_{x^{\prime}}^{*}<x+\beta, then all nin_{i} students, for each ii, can afford to buy their top schedule - both {ci,cx}\left\{c_{i},c_{x^{\prime}}\right\}. Therefore cxc_{x^{\prime}} will be oversubscribed by at least zx0.9nxz_{x^{\prime}}^{*}\geq 0.9\cdot n_{x} - a contradiction to (α,β)\left(\alpha,\beta\right)-CEEI.

Finally, given an instance of ϵ\epsilon-Gcircuit, we can use the gadgets we constructed in Lemmata 1-3 to construct an instance of (α,β)(\alpha,\beta)-CEEI that simulates the generalized circuit.

\NP\NP\NP hardness

Budish (2011) shows that his existence theorem is tight, that is, there exist economies in which it is impossible to achieve less than Ω(kM)\Omega\left(\sqrt{kM}\right) market clearing error. One may hope that on instances encountered in practice, a better approximation may be possible, and finding it may not be prohibitively hard. We next show that even in economies that admit an exact CEEI, it is \NP\NP-hard to find even a constant factor improvement over the Ω(kM)\Omega\left(\sqrt{kM}\right) bound.

It is \NP\NP-hard to distinguish between an economy that has an exact CEEI, and an economy that does not have a (Ω(N+M),β)\left(\Omega\left(\sqrt{N+M}\right),\beta\right)-CEEI for any 0β<10\leq\beta<1.

In particular, since our reduction uses a constant kk, it means that it is \NP\NP-complete to find an (Ω(kM),β)\left(\Omega\left(\sqrt{kM}\right),\beta\right)-CEEI — an approximation factor smaller only by a multiplicative constant than the approximation guaranteed by the existence theorem of Budish (2011).

Theorem 2 is in some sense stronger than Theorem 3 in that it applies to a larger market clearing error. In turn, Theorem 3 is stronger in two ways: (1) it gives \NP\NP-hardness, as opposed to \PPAD\PPAD-hardness; and (2) it applies to any 0β<10\leq\beta<1, as opposed to a polynomially small β\beta.

1 Proof

We reduce from 3SAT-5, i.e., a SAT instance in which every clause contains exactly 3 variables, and each variable appears in exactly 5 clauses. Feige (1998) proved that it is \NP\NP-hard to distinguish between a satisfiable 3SAT-5 instance, and a 3SAT-5 instance where at most 1ϵ1-\epsilon can be satisfied, for some ϵ>0\epsilon>0In fact, an equivalent result for 3SAT-BB for any constant BB would suffice for our techniques. Hardness of approximation with perfect completeness for 3SAT-BB was proven by Papadimitriou and Yannakakis (1991); Arora and Safra (1998); Arora et al. (1998)..

Given a 3SAT-5 formula, we construct a gadget for each variable and each clause. The gadgets are constructed so that for any assignment that completely satisfies the formula there exists an exact CEEI in the economy.

Furthermore, given an approximate CEEI for the economy which exactly clears the courses in a subset of the gadgets, one can recover an assignment for the 3SAT-5 formula that satisfies all the clauses corresponding to the same subset. Informally, this means that for every clause that we are unable to satisfy in the 3SAT-5 formula, there must be a deviation from exact market clearing in the gadget corresponding to either that clause, or one of its variables.

Because we use a sparse 3SAT, each deviation from market clearing can affect at most 5 clauses. Each variable gadget uses 1313 courses, and each clause gadget uses only 11 more. For an instance with nn clauses and 35n\frac{3}{5}n variables, we have exactly M=445nM=\frac{44}{5}n courses. Finally, if ϵn\epsilon n of the clauses are unsatisfied, then the market clearing error must be at least 15ϵn=ϵ44M\sqrt{\frac{1}{5}\cdot\epsilon n}=\sqrt{\frac{\epsilon}{44}\cdot M}. Since N<MN<M and ϵ>0\epsilon>0 is a constant, we get \NP\NP-hardness with α=Ω(M+N)\alpha=\Omega\left(\sqrt{M+N}\right).

For each variable xix_{i}, we have a variable gadget that forces a consistent assignment to xix_{i}. The gadget contains 55 pairs of “output courses” OTj,OFjO_{T}^{j},O_{F}^{j}; each of these pairs is also part of the “input courses” of a clause gadget. Additionally, the gadget has three inner courses: DL,DC,DRD_{L},D_{C},D_{R}. The gadget also has two students: sTs_{T} has preference list: {DL,DC}\left\{D_{L},D_{C}\right\}, {DL,OT1,OT5}\left\{D_{L},O_{T}^{1},\dots O_{T}^{5}\right\}, {DR}\left\{D_{R}\right\}; and sFs_{F} has preference list: {DR,DC}\left\{D_{R},D_{C}\right\}, {DR,OF1,,OF5}\left\{D_{R},O_{F}^{1},\dots,O_{F}^{5}\right\}, {DL}\left\{D_{L}\right\}.

Soundness: It is easy to see that, in any CEEI, xix_{i} cannot be assigned more than one value: otherwise neither student will be assigned DCD_{C}; yet if DCD_{C} has price zero, then both students would prefer the respective bundles that contain it.

If, on the other hand, neither OTjO_{T}^{j} nor OFjO_{F}^{j} is assigned, we must again have a nonzero market clearing error for the courses in this gadget:

If all the inner courses have price zero, then DCD_{C} will be over demanded;

If DLD_{L} and DRD_{R} have price zero, then under any assignment either one of the three will be over demanded, or DCD_{C} will be under demanded;

If p(DC)=0p\left(D_{C}\right)=0, p(DL)>0p\left(D_{L}\right)>0, and, wlog, p(DL)p(DR)p\left(D_{L}\right)\geq p\left(D_{R}\right), then either DCD_{C} will be over demanded, or DLD_{L} will be under demanded;

Finally, since β<1\beta<1, if DCD_{C} has nonzero price, then either it is under demanded, or one of the three inner courses must be over demanded.

Completeness: For an assignment with xi=\mboxTruex_{i}=\mbox{True}, let the prices of OTj,OFj,DL,DC,DRO_{T}^{j},O_{F}^{j},D_{L},D_{C},D_{R} be 16,0,16,1,0\frac{1}{6},0,\frac{1}{6},1,0, respectively. Under these prices, student sTs_{T} will prefer bundle {DL,OT1,OT4}\left\{D_{L},O_{T}^{1},\dots O_{T}^{4}\right\}Recall that in the completeness we show the existence of exact CEEI, so all the budgets are exactly 11., while student SFS_{F} will choose bundle {DR,DC}\left\{D_{R},D_{C}\right\}.

Clause gadget

For each clause containing variables {X,Y,Z}\left\{X,Y,Z\right\}, consider seven courses: six input courses XT,XF,YT,YF,ZT,ZFX_{T},X_{F},Y_{T},Y_{F},Z_{T},Z_{F} (where each pair is the output courses of a variable gadget), and a single “budget diluting” course DD. We also have a single gadget student, who is interested in any of the seven bundles corresponding to a satisfying assignment.

For example if the clause is (X¬YZ)\left(X\vee\neg Y\vee Z\right), the gadget student would be interested in the bundles: {XF,YF,ZF,D}\left\{X_{F},Y_{F},Z_{F},D\right\}, {XF,YF,ZT,D}\left\{X_{F},Y_{F},Z_{T},D\right\}, {XF,YT,ZF,D}\left\{X_{F},Y_{T},Z_{F},D\right\}, {XF,YT,ZT,D}\left\{X_{F},Y_{T},Z_{T},D\right\}, {XT,YF,ZF,D}\left\{X_{T},Y_{F},Z_{F},D\right\}, {XF,YT,ZF,D}\left\{X_{F},Y_{T},Z_{F},D\right\}, {XT,YT,ZT,D}\left\{X_{T},Y_{T},Z_{T},D\right\}. In particular, the student is not interested in the bundle {XT,YF,ZT,D}\left\{X_{T},Y_{F},Z_{T},D\right\}, which corresponds to assigning (X=\mboxFalse,Y=\mboxTrue,Z=\mboxFalse)\left(X=\mbox{False},\,Y=\mbox{True},\,Z=\mbox{False}\right)

Soundness: Observe that the variable gadgets students are assigned courses XaX_{a}, YbY_{b}, and ZcZ_{c}, then in any exact CEEI, the clause gadget student must be assigned the bundle {X¬a,Y¬b,Z¬c,D}\left\{X_{\neg a},Y_{\neg b},Z_{\neg c},D\right\}.

Completeness: Suppose that the variable gadgets students are assigned courses XaX_{a}, YbY_{b}, and ZcZ_{c}, each with price at least 16\frac{1}{6}, while courses X¬aX_{\neg a}, Y¬bY_{\neg b}, and Z¬cZ_{\neg c} are all unassigned. Then if we set the price of DD to be 11, the only affordable bundle for the clause gadget student is indeed {X¬a,Y¬b,Z¬c,D}\left\{X_{\neg a},Y_{\neg b},Z_{\neg c},D\right\}.

Discussion

In this work we classified the computational complexity of finding an approximate CEEI as a function of the precision parameter α\alpha of the approximation, the market clearing error. We showed that finding (α,β)(\alpha,\beta)-CEEI is \PPAD\PPAD-complete when α\alpha is large enough to guarantee existence, while finding a better approximation to CEEI is \NP\NP-complete.

One potential way around these intractability results could be to restrict the input language of preferences. This has been a fruitful line of research in combinatorial auctions (Nisan, 2006; Sandholm and Boutilier, 2006). However, in contrast to that space, we do not anticipate limiting language complexity in the course allocation problem to be fruitful either in theory or in practice. Recall that the student preferences used in the \PPAD\PPAD-hardness proof are already very simple. Furthermore, in practice there are significant inherent complexities in students’ preferences: for example, courses meeting at the same time and courses with multiple sections.

Despite the negative results shown in this paper, a heuristic search algorithm exists that finds practical solutions to A-CEEI. Interestingly, in both laboratory experiments as well as real course allocation problems, this heuristic often finds solutions that are an order of magnitude better than the theoretical kM2\sqrt{\frac{kM}{2}} guarantee on the clearing error (Othman et al., 2010) — a performance which we have shown NP-hard to guarantee. Once again we are faced with a familiar conundrum: What are the characteristics of the instances appearing in practice that enable this favorable performance? And how can one develop a rigorous fast algorithm for them?

References

Appendix A A-CEEI ∈\PPADabsent\PPAD\in\PPAD

We show that computing a (σM2,β)\left(\frac{\sqrt{\sigma M}}{2},\beta\right)-CEEI is in \PPAD\PPAD, for σ=min{2k,M}\sigma=\min\{2k,M\}.

We assume that the student preferences (i)\left(\succsim_{i}\right) are given in the form of an ordered list of all the bundles in Ψi\Psi_{i} (i.e., all the bundles that student ii prefers over the empty bundle). In particular, we assume that the total number of permissible bundles is polynomial.

In fact, we prove that the following, slightly more general problem, is in \PPAD\PPAD: Given any β,ϵ>0\beta,\epsilon>0 and initial approximate-budgets vector b[1,1+β]N\mathbf{b}\in\left[1,1+\beta\right]^{N}, find a (σM2,β)\left(\frac{\sqrt{\sigma M}}{2},\beta\right)-CEEI with budgets b\mathbf{b^{*}} such that bibi<ϵ|b_{i}-b^{*}_{i}|<\epsilon for every ii.

Our proof will follow the steps of the existence proof by Budish . We will use the power of \PPAD\PPAD to solve the Kakutani problem, and derandomize the other nonconstructive ingredients.

Our algorithm receives as input an economy ((qj)j=1M,(Ψi)i=1N,(i)i=1N)\left(\left(q_{j}\right)_{j=1}^{M},\left(\Psi_{i}\right)_{i=1}^{N},\left(\succsim_{i}\right)_{i=1}^{N}\right), parameters β,ϵ>0\beta,\epsilon>0, and an initial approximate-budgets vector b[1,1+β]N\mathbf{b}\in\left[1,1+\beta\right]^{N}. We denote βˉ=min{β,ϵ}/2\bar{\beta}=\min\{\beta,\epsilon\}/2.

Given the total demand of all the students, we can define the excess demand to be:

A.2 Deterministically finding a “general position” perturbation (step 1)

In this section, we show how to deterministically choose these taxes.

There exists a polynomial-time algorithm that finds a vector of taxes τ=(τi,x)iS,xΨi\mathbf{\tau}=\left(\tau_{i,x}\right)_{i\in{\cal S},x\in\Psi_{i}} such that:

ϵ<τi,x<ϵ-\epsilon<\tau_{i,x}<\epsilon (taxes are small)

τi,x>τi,x\tau_{i,x}>\tau_{i,x^{\prime}} if xixx\succ_{i}x^{\prime} (taxes prefer more-preferred bundles)

1mini,x{bi+τi,x}maxi,x{bi+τi,x}1+β1\leq\min_{i,x}\left\{b_{i}+\tau_{i,x}\right\}\leq\max_{i,x}\left\{b_{i}+\tau_{i,x}\right\}\leq 1+\beta (inequality bound is preserved)

bi+τi,xbi+τi,xb_{i}+\tau_{i,x}\neq b_{i^{\prime}}+\tau_{i^{\prime},x^{\prime}} for (i,x)(i,x)\left(i,x\right)\neq\left(i^{\prime},x^{\prime}\right) (no two perturbed prices are equal)

Assume wlog that b\mathbf{b} is rounded to the nearest βˉMM\bar{\beta}M^{-M}: otherwise we can include this rounding in the taxes.

We proceed by induction on the pairs (i,x)\left(i,x\right) of students and bundles: at each step let τi,x\tau_{i,x} be much smaller than all the taxes introduced so farAssume wlog that for each ii we consider the (i,x)\left(i,x\right)’s in order reversed with respect to i\succsim_{i}, so that property 2 is guaranteed..

More precisely, if (i,x)\left(i,x\right) is the ν\mboxth\nu^{\mbox{th}} pair to be considered, then we set

where the sign is chosen such that condition 3 in the statement of the lemma is preserved.

Assume further, wlog, that this is the first such kk-tuple, with respect to the order of the induction. In particular, this means that {x1,,xk1}\left\{x_{1},\dots,x_{{}_{k-1}}\right\} are linearly independent. Now consider the system

Notice that it has rank k1k-1. We can now take k1k-1 linearly independent rows j1,jk1j_{1},\dots j_{k-1} such that the following system has the same unique solution α\alpha:

Since XX is a square matrix of full rank it is invertible, so we have that

where Xi,jX_{i,j} is the (i,j)\left(i,j\right)-cofactor of XX. Finally, since XX is a Boolean matrix, its determinant and all of its cofactors are integers of magnitude less than (k1)k1\left(k-1\right)^{k-1}. The entries of α\alpha are therefore rational fractions with numerators and denominators of magnitude less than (k1)k1\left(k-1\right)^{k-1}.

However, if (ik,xk)\left(i_{k},x_{k}\right) is the ν\mboxth\nu^{\mbox{th}} pair added by the induction, then the following is an integer:

but M(2ν1)Mβˉ(bik+τik,xk)\frac{M^{\left(2\nu-1\right)M}}{\bar{\beta}}\cdot\left(b_{i_{k}}+\tau_{i_{k,}x_{k}}\right) is not an integer, a contradiction to Equation (1). ∎

A.3 Finding a fixed point (steps 2-4)

This subsection describes the price adjustment correspondence of Budish , and is brought here mostly for completeness.

We first define the price adjustment function:

Instead, we define an upper hemicontinuous, set-valued “convexification” of ff:

The correspondence FF is upper hemicontinuous, non-empty, and convex; therefore, by Kakutani’s fixed point theorem it has a fixed point.

Finally, by Papadimitriou finding this fixed point of FF is in PPAD.

We round all price vectors to a (βˉM122(νmax+1)M)\left(\bar{\beta}M^{\frac{1}{2}-2\left(\nu_{\max}+1\right)M}\right)-grid (this precision suffices to implement the algorithm in lemma 4).

From the proof of Papadimitriou it follows that it suffices to compute just a single point in F(p)F\left(\mathbf{p}\right) for every p\mathbf{p} (this is important because the number points in F(p)F\left(\mathbf{p}\right) on the grid may be exponential). At any point on the grid, the price of any bundle is an integer multiple of (βˉM122(νmax+1)M)\left(\bar{\beta}M^{\frac{1}{2}-2\left(\nu_{\max}+1\right)M}\right). In particular, any budget-constraint hyperplane which does not contain p\mathbf{p}, must be at distance at least (βˉM122(νmax+1)M)\left(\bar{\beta}M^{\frac{1}{2}-2\left(\nu_{\max}+1\right)M}\right). Therefore, we can take any point p\mathbf{p^{\prime}} at distance 12(βˉM122(νmax+1)M)\frac{1}{2}\left(\bar{\beta}M^{\frac{1}{2}-2\left(\nu_{\max}+1\right)M}\right) from p\mathbf{p}, and which does not lie on any of the hyperplanes that contain p\mathbf{p}. Because no budget-constraint hyperplanes lie between p\mathbf{p^{\prime}} and p\mathbf{p}, it follows that f(p)F(p)f\left(\mathbf{p^{\prime}}\right)\in F\left(\mathbf{p}\right).

A.4 From a fixed point to approximate CEEI (steps 5-9)

Given a fixed point p\mathbf{p^{*}} of FF, we can find in polynomial time a vector of prices pϕ\mathbf{p^{\phi^{\prime}}} such that z(pϕ,b,τ)2σM2\left\|\mathbf{z}\left(\mathbf{p^{\phi^{\prime}}},\mathbf{b},\mathbf{\tau}\right)\right\|_{2}\leq\frac{\sqrt{\sigma M}}{2}

We use the method of conditional expectation to derandomize Step 8 of Budish .

Recall that by remark 3, there exists a neighborhood around p\mathbf{p^{*}} which does not intersect any budget-constraint hyperplanes (beyond those that contain p\mathbf{p^{*}}). Let 1,,L1,\dots,L^{\prime} be the indices of students whose budget-constraint hyperplanes intersect at p\mathbf{p^{*}}. For student i[L]i\in\left[L^{\prime}\right], let wiw_{i} be the number of corresponding hyperplanes H(i,xi1,τi,xi1),H(i,xiwi,τi,xiwi)H\left(i,x_{i}^{1},\tau_{i,x_{i}^{1}}\right),\dots H\left(i,x_{i}^{w_{i}},\tau_{i,x_{i}^{w_{i}}}\right) intersecting at p\mathbf{p^{*}}, and assume wlog that the superindices of xi1,xiwix_{i}^{1},\dots x_{i}^{w_{i}} are ordered according to i\succsim_{i}.

Let di0d_{i}^{0} be agent ii’s demand when prices are slightly perturbed from p\mathbf{p^{*}} such that all xijx_{i}^{j}’s are affordable. Such a perturbation exists and is easily computable because the hyperplanes are linearly independentThis appears to be a slight inaccuracy in the proof in Budish . Similarly, let di1d_{i}^{1} denote agent ii’s demand when xi2,xiwix_{i}^{2},\dots x_{i}^{w_{i}} are affordable, but xi1x_{i}^{1} is not, and so on. Finally, let zS[L](p,b,τ)=dS[L](p,b,τ)qz_{S\setminus\left[L^{\prime}\right]}\left(\mathbf{p^{*}},\mathbf{b},\mathbf{\tau}\right)=d_{S\setminus\left[L^{\prime}\right]}\left(\mathbf{p^{*}},\mathbf{b},\mathbf{\tau}\right)-\mathbf{q} be the market clearing error when considering the rest of the students. (The demands of S[L]S\setminus\left[L^{\prime}\right] is constant in the small neighborhood p\mathbf{p^{*}} which does not intersect any additional hyperplanes.)

By Lemma 3 of Budish , there exist distributions aifa_{i}^{f} over difd_{i}^{f}:

such that the clearing error of the expected demand is :

We first find such aifa_{i}^{f} in polynomial time using linear programming.

The existence proof then considers, for each ii, a random vector Θi=(Θi1,,Θiwi)\Theta_{i}=\left(\Theta_{i}^{1},\dots,\Theta_{i}^{w_{i}}\right): the vectors are independent and in any realization θi\theta_{i} satisfy f=0wiθif=1\sum_{f=0}^{w_{i}}\theta_{i}^{f}=1, while the variables each have support \mboxsupp(Θif)={0,1}\mbox{supp}\left(\Theta_{i}^{f}\right)=\left\{0,1\right\}, and expectation \mboxE[Θif]=aif\mbox{E}\left[\Theta_{i}^{f}\right]=a_{i}^{f}.

By Lemma 4 of Budish , the expected clearing error is bounded by:

We now proceed by induction on the students. For each ii, if the conditional expectation on (θ^j)j<i\left(\hat{\theta}_{j}\right)_{j<i} satisfies

then at least one θ^i\hat{\theta}_{i} must also satisfy the above bound. We can find such θ^i\hat{\theta}_{i} in polynomial time by computing the conditional expectation for every feasible θ^i\hat{\theta}_{i}^{{}^{\prime}}:

The chosen (θ^i)i=1L\left(\hat{\theta}_{i}\right)_{i=1}^{L^{\prime}} define an allocation x\mathbf{x^{*}} with bounded clearing error. We now follow step 9 of Budish in order to define budgets b\mathbf{b^{*}} such that x\mathbf{x^{*}} is the preferred consumption by all the students at price p\mathbf{p^{*}}.

We define, for every ii, bi=bi+τi,xib_{i}^{*}=b_{i}+\tau_{i,x_{i}^{*}}. For i>Li>L^{\prime} we have xi=di(p,bi,τi)x_{i}^{*}=d_{i}\left(\mathbf{p^{*}},b_{i},\tau_{i}\right). By requirement 2 of lemma 4, every bundle that student ii prefers over xix_{i}^{*} had a greater tax and was still unaffordable at p\mathbf{p^{*}}; it now costs more than bi+τi,xib_{i}+\tau_{i,x_{i}^{*}}.

For iLi\leq L^{\prime} notice that every bundle xix_{i}^{\perp} that ii prefers over xix_{i}^{*} and was exactly affordable at p\mathbf{p^{*}} with taxes τ\mathbf{\tau} and budget b\mathbf{b}, xx^{\perp} must cost strictly more than ii’s new budget bib_{i}^{*}. Therefore, (x,b,p)\left(\mathbf{x^{*}},\mathbf{b^{*}},\mathbf{p^{*}}\right) is a (σM2,β)\left(\frac{\sqrt{\sigma M}}{2},\beta\right)-CEEI

Appendix B Additional gadgets for Theorem 2

Lemma 2. Let nx28αn_{x}\geq 2^{8}\cdot\alpha and suppose that the economy has courses cxc_{x} and cyc_{y}. Then for any of the functions ff listed below, we can add: a course czc_{z}, and at most nxn_{x} students interested in each of cxc_{x} and cyc_{y}, such that in any (α,β)\left(\alpha,\beta\right)-CEEI pz[f(px,py)2β,f(px,py)+2β]p_{z}^{*}\in\left[f\left(p_{x}^{*},p_{y}^{*}\right)-2\beta,f\left(p_{x}^{*},p_{y}^{*}\right)+2\beta\right]

VALUE: fG1212f_{G_{\frac{1}{2}}}\equiv\frac{1}{2}

SUM: fG+(x,y)=min(x+y,1)f_{G_{+}}\left(x,y\right)=\min\left(x+y,1\right)

DIFF: fG(x,y)=max(xy,0)f_{G_{-}}\left(x,y\right)=\max\left(x-y,0\right)

LESS: fG<(x,y)={1x>y+β0y>x+βf_{G_{<}}\left(x,y\right)=\begin{cases}1&x>y+\beta\\ 0&y>x+\beta\end{cases}

AND: fG(x,y)={1(x>12+β)(y>12+β)0(x<12β)(y<12β)f_{G_{\wedge}}\left(x,y\right)=\begin{cases}1&\left(x>\frac{1}{2}+\beta\right)\wedge\left(y>\frac{1}{2}+\beta\right)\\ 0&\left(x<\frac{1}{2}-\beta\right)\vee\left(y<\frac{1}{2}-\beta\right)\end{cases}

OR: fG(x,y)={1(x>12+β)(y>12+β)0(x<12β)(y<12β)f_{G_{\vee}}\left(x,y\right)=\begin{cases}1&\left(x>\frac{1}{2}+\beta\right)\vee\left(y>\frac{1}{2}+\beta\right)\\ 0&\left(x<\frac{1}{2}-\beta\right)\wedge\left(y<\frac{1}{2}-\beta\right)\end{cases}

In particular, pz[f(px,py)2β,f(px,py)+2β]p_{z}^{*}\in\left[f\left(p_{x}^{*},p_{y}^{*}\right)-2\beta,f\left(p_{x}^{*},p_{y}^{*}\right)+2\beta\right] in every (α,β)\left(\alpha,\beta\right)-CEEI even if up to nznx/28n_{z}\leq n_{x}/2^{8} additional students (beyond the ones specified in the proofs below) are interested in course czc_{z}.

Notice, that like in similar gadget reductions from \PPAD\PPAD-complete problems, LESS, AND, and OR are brittle comparators (see discussion in Daskalakis et al. for more details).

Let czc_{z} have capacity qz=nx/8q_{z}=n_{x}/8, let nz=qz/2n_{z}=q_{z}/2, and consider three auxiliary courses c1c_{1}, c2c_{2}, and cxc_{\overline{x}} of capacities q1=q2=qzq_{1}=q_{2}=q_{z} and qx=nx/2q_{\overline{x}}=n_{x}/2. Using lemma 1 add nxn_{x} students that will guarantee px[1px,1px+β]p_{\overline{x}}\in\left[1-p_{x}^{*},1-p_{x}^{*}+\beta\right]. Additionally, consider nx=nx/4n_{\overline{x}}=n_{x}/4 students with preference list: ({cz,c1,cx},{cz,c2,cx},{c1,c2,cx})\left(\left\{c_{z},c_{1},c_{\overline{x}}\right\},\left\{c_{z},c_{2},c_{\overline{x}}\right\},\left\{c_{1},c_{2},c_{\overline{x}}\right\}\right) (in this order), then:

If the total price pi+pjp_{i}^{*}+p_{j}^{*} of any pair i,j{1,2,z}i,j\in\left\{1,2,z\right\} is less than pxβp_{x}^{*}-\beta, then all nxn_{\overline{x}} students will be able to afford some subset in their preference list, leaving a total overbooking of at least zz+z1+z22nx3qz=nx/8z_{z}^{*}+z_{1}^{*}+z_{2}^{*}\geq 2n_{\overline{x}}-3q_{z}=n_{x}/8, which violates the (α,β)\left(\alpha,\beta\right)-CEEI conditions

If the total price of any of the pairs above (wlog, p1+p2p_{1}^{*}+p_{2}^{*}) is greater than px+βp_{x}^{*}+\beta, then none of the nxn_{\overline{x}} students will be able to afford the subset {c1,c2,cx}\left\{c_{1},c_{2},c_{\overline{x}}\right\}. Therefore the number of students taking czc_{z} will be at least the sum of students taking c1c_{1} or c2c_{2}. Therefore, even after taking into account nzn_{z} additional students, we have that zz+z1+z2qznz=nx/16z_{z}^{*}+z_{1}^{*}+z_{2}^{*}\geq q_{z}-n_{z}=n_{x}/16.

Similarly to the HALF gadget, consider two auxiliary courses c1c_{1} and c2c_{2}, and let nxn_{x} students have preferences: ({cz,c1},{cz,c2},{c1,c2})\left(\left\{c_{z},c_{1}\right\},\left\{c_{z},c_{2}\right\},\left\{c_{1},c_{2}\right\}\right). Then, following the argument for the HALF gadget, it is easy to see that pz[12,12+β]p_{z}^{*}\in\left[\frac{1}{2},\frac{1}{2}+\beta\right] in any (α,β)\left(\alpha,\beta\right)-CEEI, with nz=nx/8n_{z}=n_{x}/8.

Let cxc_{\overline{x}} be a course with price px[1px,1px+β]p_{\overline{x}}^{*}\in\left[1-p_{x}^{*},1-p_{x}^{*}+\beta\right], qx=nx/2q_{\overline{x}}=n_{x}/2, and consider nx=nx/4n_{\overline{x}}=n_{x}/4 students willing to take {cx,cy,cz}\left\{c_{\overline{x}},c_{y},c_{z}\right\}. Then it is easy to see that

Concatenating NOT and DIFF gadgets, we have:

Let cxc_{\overline{x}} be a course with price px[1px,1px+β]p_{\overline{x}}^{*}\in\left[1-p_{x}^{*},1-p_{x}^{*}+\beta\right], qx=nx/2q_{\overline{x}}=n_{x}/2; let qz=nx/8q_{z}=n_{x}/8 and nz=nx/16n_{z}=n_{x}/16. Consider nx/4n_{x}/4 students wishing to take ({cx,cy}{cz})\left(\left\{c_{\overline{x}},c_{y}\right\}\left\{c_{z}\right\}\right), in this order:

If py>px+βp_{y}^{*}>p_{x}^{*}+\beta, then px+py>1+βp_{\overline{x}}^{*}+p_{y}^{*}>1+\beta, and therefore none of the nx/4n_{x}/4 students will be able to afford the first pair; they will all try to sign up to czc_{z} which will be overbooked unless pz>1p_{z}^{*}>1

If px>py+βp_{x}^{*}>p_{y}^{*}+\beta, then all nx/4n_{x}/4 students will sign up for the first pair, forcing pz=0p_{z}^{*}=0 in any (α,β)\left(\alpha,\beta\right)-CEEI.

Let c12c_{\frac{1}{2}} be a course with price p12[12,12+β]p_{\frac{1}{2}}^{*}\in\left[\frac{1}{2},\frac{1}{2}+\beta\right] and n12=nx/8n_{\frac{1}{2}}=n_{x}/8, as guaranteed by gadget VALUE; let qz=nx/32q_{z}=n_{x}/32 and nz=nx/64n_{z}=n_{x}/64. Consider nx/16n_{x}/16 students wishing to take ({cx,c12},{cy,c12},{cz})\left(\left\{c_{x},c_{\frac{1}{2}}\right\},\left\{c_{y},c_{\frac{1}{2}}\right\},\left\{c_{z}\right\}\right), in this order.

If (px>12+β)(py>12+β)\left(p_{x}^{*}>\frac{1}{2}+\beta\right)\wedge\left(p_{y}^{*}>\frac{1}{2}+\beta\right), then the nx/16n_{x}/16 students can afford neither pair. They will all try to sign up for czc_{z}, forcing pz>1p_{z}^{*}>1, in any (α,β)\left(\alpha,\beta\right)-CEEI.

If (x<12β)(y<12β)\left(x<\frac{1}{2}-\beta\right)\vee\left(y<\frac{1}{2}-\beta\right), then the nx/16n_{x}/16 students can afford at least one of the pairs and will register for those courses. Thus pz=0p_{z}^{*}=0.

Similar to the AND gadget; students will want ({cx,cy,c12},{cz})\left(\left\{c_{x},c_{y},c_{\frac{1}{2}}\right\},\left\{c_{z}\right\}\right), in this order.