Econometrica, Vol. 77, No. 3 (May, 2009), 933–952 NOTES AND COMMENTS A DOUBLE-TRACK ADJUSTMENT PROCESS FOR DISCRETE MARKETS WITH SUBSTITUTES AND COMPLEMENTS BY NING SUN AND ZAIFU YANG1 We propose a new Walrasian tâtonnement process called a double-track procedure for efficiently allocating multiple heterogeneous indivisible items in two distinct sets to many buyers who view items in the same set as substitutes but items across the two sets as complements. In each round of the process, a Walrasian auctioneer first announces the current prices for all items, buyers respond by reporting their demands at these prices, and then the auctioneer adjusts simultaneously the prices of items in one set upward but those of items in the other set downward. It is shown that this procedure converges globally to a Walrasian equilibrium in finitely many rounds. KEYWORDS: Adjustment process, auction, substitute, complement, indivisibility. 1. INTRODUCTION TÂTONNEMENT PROCESSES or auctions are fundamental instruments for discovering market-clearing prices and efficient allocations. The study of such processes provides one way of addressing the question of price formation and has long been a major issue of economic research. In 1874, Leon Walras formulated the first tâtonnement process—a type of auction. Samuelson (1941) and Arrow and Hurwicz (1958) were among the first to study the convergence of certain tâtonnement processes. They proved that such processes converge globally to an equilibrium for any economy with divisible goods when the goods are substitutable. This study then generated great hope that such processes might also work for a larger class of economies with divisible goods, but Scarf (1960) soon dashed such hopes by showing that when goods exhibit complementarity, such processes can oscillate and will never tend toward equilibrium. Later it was Scarf (1973) who developed a remarkable process that can find an equilibrium in any reasonable economy with divisible goods. The study on tâtonnement processes for markets with indivisible goods began in the early 1980s. In a seminal paper, Kelso and Crawford (1982) de1 We are deeply grateful to Atsushi Kajii and Larry Samuelson for many insightful comments and constructive suggestions, and to five anonymous referees for very useful feedback. In particular, a referee suggested we strengthen Theorem 2 from if to if and only if. We also thank Tommy Andersson, Vince Crawford, Mamoru Kaneko, Gerard van der Laan, Michael Ostrovsky, LarsGunnar Svensson, Dolf Talman, Walter Trockel, and many seminar and conference participants for their helpful comments. All errors are our own. This research was financially supported by KIER, Kyoto University (Sun), and by the Ministry of Education, Science and Technology of Japan, the Netherlands Organization for Scientific Research (NWO), and CentER, Tilburg University (Yang). © 2009 The Econometric Society DOI: 10.3982/ECTA6514 934 N. SUN AND Z. YANG veloped an adjustment process that allows each firm to hire several workers.2 They showed that their process efficiently allocates workers with competitive salaries to firms, provided that every firm views all the workers as substitutes. This condition is called gross substitutes (GS) and has been widely used in auction, matching, and equilibrium models. Gul and Stacchetti (2000) devised an elegant ascending auction that finds a Walrasian equilibrium in finitely many steps when all goods are substitutes. While their analysis is mathematically sophisticated and quite demanding, Ausubel (2006) significantly simplified the analysis by developing a simpler and more elegant dynamic auction. Based on his auction, he also proposed a novel strategy-proof dynamic procedure that yields a Vickrey–Clarke–Groves (VCG) outcome. Milgrom (2000) presented an ascending auction with an emphasis on the sale of radio spectrum licenses in the United States. However, all these processes were designed and work only for substitutes. In contrast, it is widely recognized3 that complementarities pose a challenge for designing dynamic mechanisms for discovering market-clearing prices and efficient allocations. The current paper explores a tâtonnement process for markets with indivisible goods which exhibit a typical pattern of complementarities. More specifically, we study a market model where a seller wishes to sell two distinct sets S1 and S2 of several heterogeneous items to a number of buyers. In general, buyers view items in the same set as substitutes but items across the two sets as complements. This condition is called gross substitutes and complements (GSC), generalizing the GS condition. Many typical situations fit this general description, stretching from the sale of computers and software packages to consumers, the allocation of workers and machines to firms, takeoff and landing slots to airliners, and so forth.4 In our earlier analysis (Sun and Yang (2006b)), we showed that if all agents in an exchange economy have GSC preferences, the economy has a Walrasian equilibrium. But the method is nonconstructive, and so, in particular, the important issue of how to find the equilibrium 2 Special but well studied unit-demand models typically assume that every consumer demands at most one item or every person needs only one opposite sex partner. See Gale and Shapley (1962), Shapley and Scarf (1974), Crawford and Knoer (1981), and Demange, Gale, and Sotomayor (1986) among others. 3 The current state of the art is well documented in Milgrom (2000), Jehiel and Moldovanu (2003), Klemperer (2004), and Maskin (2005). We quote from Milgrom (2000, p. 258): “The problem of bidding for complements has inspired continuing research both to clarify the scope of the problem and to devise practical auction designs that overcome the exposure problem.” The socalled exposure problem refers to a phenomenon concerning an ascending auction that at the earlier stages of the auction, all items were over-demanded, but as the prices are going up, some or all items may be exposed to the possibility that no bidder wants to demand them anymore, because complementary items have become too expensive. As a result, the ascending auction will get stuck in disequilibrium. 4 Ostrovsky (2008) independently proposed a similar condition for a supply chain model where prices of goods are fixed and a non-Walrasian equilibrium solution is used. See also Shapley (1962), Samuelson (1974), Rassenti, Smith, and Bulfin (1982), Krishna (2002), and Milgrom (2007) for related work. DOUBLE-TRACK ADJUSTMENT PROCESS 935 prices and allocation is not dealt with. The existing auction processes, however, are hindered by the exposure problem and cannot handle this situation. In contrast, in this paper we propose a new Walrasian tâtonnement process— a double-track procedure that circumvents the exposure problem and can discover a Walrasian equilibrium. This procedure works as follows. In each round of the process, a Walrasian auctioneer first calls out the current prices for all items, buyers are asked to report their demands at these prices, and then according to buyers’ reported demands the auctioneer adjusts the prices of overdemanded items in one set S1 (or S2 ) upward but those of under-demanded items in the other set S2 (or S1 ) downward. We prove that this procedure finds a Walrasian equilibrium in finitely many rounds. Unlike traditional tâtonnement processes that typically adjust prices continuously, this procedure adjusts prices only in integer or fixed quantities. The proposed procedure differs markedly from the existing auctions in that it adjusts simultaneously prices of items in S1 and S2 , respectively, in opposite directions, whereas the existing auctions typically adjust all prices simultaneously only in one direction (either ascending or descending). When all items are substitutes (i.e., either S1 = ∅ or S2 = ∅), the proposed procedure coincides with Ausubel’s (2006) auction and is similar to Gul and Stacchetti (2000). In general the proposed procedure deals with the circumstances including complements that go beyond the existing models with substitutes. Unlike sealedbid auction mechanisms, the proposed procedure is informationally efficient in the sense that it only requires buyers to report their demands at several price vectors along a finite path to equilibrium, and it is also privacy-preserving in the sense that buyers need not report their demands beyond that finite path and can avoid exposing their values over all possible bundles. This property is important, because in reality businessmen are generally unwilling to reveal their values or costs. To design this new procedure, it is crucial to introduce a new characterization of the GSC condition called generalized single improvement (GSI), generalizing the single improvement (SI) property of Gul and Stacchetti (1999). This paper proceeds as follows. Section 2 introduces the market model and Section 3 presents the main results. Section 4 concludes. 2. THE MARKET MODEL A seller wishes to sell a set N = {β1 β2 βn } of n indivisible items to a finite group I of buyers. The items may be heterogeneous and can be divided into two sets S1 and S2 (i.e., N = S1 ∪ S2 and S1 ∩ S2 = ∅). For instance, one can think of S1 as computers and of S2 as software packages. Items in the same set can also be heterogeneous. Every buyer i has a value function ui : 2N → R specifying his valuation ui (B) (in units of money) on each bundle B with ui (∅) = 0, where 2N denotes the family of all bundles of items. It is standard to assume that ui is weakly increasing, every buyer can pay up to his 936 N. SUN AND Z. YANG value and has quasilinear utilities in money, and the seller values each bundle at zero. Note, however, that weak monotonicity can be dropped; see Sun and Yang (2006a, 2006b). A price vector p = (p1 pn ) ∈ Rn specifies a price ph for each item βh ∈ N. Buyer i’s demand correspondence Di (p), the net utility function vi (A p), and the indirect utility function V i (p), are defined, respectively, by i i (1) D (p) = arg max u (A) − ph A⊆N vi (A p) = ui (A) − βh ∈A ph βh ∈A i V (p) = max u (A) − ph i A⊆N βh ∈A It is known that for any value function ui : 2N → R, the indirect utility function V i is a decreasing, continuous, and convex function. An allocation of items in N is a partition π = (π(i) i ∈ I) of items among all buyers in I, that is, π(i) ∩ π(j) = ∅ for all i = j and i∈I π(i) = N. Note that π(i) = ∅ is allowed. At allocation π, i receives bundle π(i). An allocabuyer i tion π is efficient if i∈I ui (π(i)) ≥ i∈I u (ρ(i)) for every allocation ρ. Given i u (π(i)). We call R(N) the market an efficient allocation π, let R(N) = i∈I value of the items. DEFINITION 1: A Walrasian equilibrium (p π) consists of a price vector p ∈ Rn+ and an allocation π such that π(i) ∈ Di (p) for every i ∈ I. It is well known that every equilibrium allocation is efficient, but an equilibrium may not always exist. To ensure the existence of an equilibrium, we need to impose some conditions on the model. The most important one is called the gross substitutes and complements condition, which is defined below.5 DEFINITION 2: The value function ui of buyer i satisfies the gross substitutes and complements (GSC) condition if for any price vector p ∈ Rn , any item βk ∈ Sj for j = 1 or 2, any δ ≥ 0, and any A ∈ Di (p), there exists B ∈ Di (p + δe(k)) such that [A ∩ Sj ] \ {βk } ⊆ B and [Ac ∩ Sjc ] ⊆ Bc . 5 The following piece of notation is used throughout the paper. For any integer k (1 ≤ k ≤ n), n e(k) denotes the kth unit vector in Rn . Let Zn stand for the integer lattice in R and let 0 denote the n-vector of 0’s. For any subset A of N, let e(A) = βk ∈A e(k). When A = {βk }, we also write c e(A) as e(k). For any subset A of N, let Ac denote its complement, that is, A = N \ A. For any vector p ∈ Rn and any set A ∈ 2N , let p(A) = βk ∈A pk e(k). So we have p(N) = p for any p ∈ Rn . For any finite set A, (A) denotes the number of elements in A. For any set D ⊆ Rn , co(D) denotes its convex hull. DOUBLE-TRACK ADJUSTMENT PROCESS 937 GSC says that buyer i views items in each set Sj as substitutes, but items across the two sets S1 and S2 as complements, in the sense that if the buyer demands a bundle A at prices p and if now the price of some item βk ∈ Sj is increased, then he would still demand the items both in A and in Sj whose prices did not rise, but he would not demand any item in another set Sjc which was not in his choice set A at prices p. In particular, when either S1 = ∅ or S2 = ∅, GSC reduces to the gross substitutes (GS) condition of Kelso and Crawford (1982). GS excludes complements and requires that all the items be substitutes. This case has been studied extensively in the literature; see for example, Kelso and Crawford (1982), Gul and Stacchetti (1999, 2000), Milgrom (2000, 2004), Crawford (2008), and Ausubel (2006). Moreover, Ausubel (2004) and Perry and Reny (2005) studied auctions for selling many identical units of a good (a special case of GS) with interdependent values. The following assumptions will be used in this paper: ASSUMPTION A1 —Integer Private Values: Every buyer i’s value function ui : 2N → Z+ takes integer values and is his private information. ASSUMPTION A2 —Gross Substitutes and Complements: Every buyer i’s value function ui satisfies the GSC condition. ASSUMPTION A3 —The Auctioneer’s Knowledge: The auctioneer knows some integer value U ∗ greater than any buyer’s possible maximum value. The integer value assumption in Assumption A1 is quite standard and natural, since one cannot value a bundle of goods more closely than to the nearest penny. Assumption A3 is merely a technical assumption used only in Theorem 4. The essence and difficulty of designing an adjustment process for locating a Walrasian equilibrium in this market lie in the facts that every buyer’s valuation of any bundle of goods is private information and is therefore unobservable to the auctioneer Assumption A1, and that there are multiple indivisible substitutes and complements for sale Assumption A2. 3. THE DOUBLE-TRACK ADJUSTMENT PROCESS 3.1. The Basis This subsection provides the basis on which the double-track procedure will be established for finding a Walrasian equilibrium in the market described in the previous section. We begin with a new characterization of the GSC condition. DEFINITION 3: The value function ui of buyer i has the generalized single improvement (GSI) property if for any price vector p ∈ Rn and any bundle A∈ / Di (p), there exists a bundle B ∈ 2N such that vi (A p) < vi (B p) and B satisfies exactly one of the following conditions 938 N. SUN AND Z. YANG (i) A ∩ Sj = B ∩ Sj , and [(A \ B) ∩ Sjc ] ≤ 1 and [(B \ A) ∩ Sjc ] ≤ 1 for either j = 1 or j = 2. (ii) Either B ⊆ A and [(A \ B) ∩ S1 ] = [(A \ B) ∩ S2 ] = 1 or A ⊆ B and [(B \ A) ∩ S1 ] = [(B \ A) ∩ S2 ] = 1. GSI says that for buyer i, every suboptimal bundle A at prices p can be strictly improved by either adding an item to it, removing an item from it, or doing both in either set A ∩ Sj . The bundle A can be also strictly improved by adding simultaneously one item from each set Sj to it or removing simultaneously one item from each set A ∩ Sj , j = 1 2. We call bundle B a GSI improvement of A. When either S1 or S2 is empty, GSI coincides with the single improvement (SI) property of Gul and Stacchetti (1999) which in turn is equivalent to the GS condition. The GSI property plays an important role in our adjustment process design as SI does in Ausubel (2006) and Gul and Stacchetti (2000). We now state the following theorem whose proof, together with those of Theorems 3 and 5 and Lemmas 2 and 4, is deferred to the Appendix. THEOREM 1: Conditions GSC and GSI are equivalent. Let p q ∈ Rn be any vectors. With respect to the order (S1 S2 ), we define their generalized meet s = (s1 sn ) = p ∧g q and join t = (t1 tn ) = p ∨g q by sk = min{pk qk } βk ∈ S1 sk = max{pk qk } βk ∈ S2 ; tk = max{pk qk } βk ∈ S1 tk = min{pk qk } βk ∈ S2 Note that the two operations are different from the standard meet and join operations. A set W ⊆ Rn is called a generalized lattice if p ∧g q p ∨g q ∈ W for any p q ∈ W . For p q ∈ Rn , we introduce a new order by defining p ≤g q if and only if p(S1 ) ≤ q(S1 ) and p(S2 ) ≥ q(S2 ). Given a set W ⊆ Rn , a point p∗ ∈ W is called a smallest element if p∗ ≤g q for every q ∈ W . Similarly, a point q∗ ∈ W is called a largest element if q∗ ≥g p for every p ∈ W . It is easy to verify that a compact generalized lattice has a unique smallest (largest) element in it. Given a generalized lattice W ⊆ Rn , we say a function f : W → R is a generalized submodular function if f (p ∧g q) + f (p ∨g q) ≤ f (p) + f (q) for all p q ∈ W . Ausubel and Milgrom (2002, Theorem 10) showed that items are substitutes for a buyer if and only if his indirect utility function is submodular. Our next theorem generalizes their result from GS to GSC preferences and will be used to establish Theorem 3 below. The proof of Theorem 2, as well as those of Lemmas 1, 3, 5, and 6, is relegated to the Supplemental Material (Sun and Yang (2009)). THEOREM 2: A value function ui satisfies the GSC condition if and only if the indirect utility function V i is a generalized submodular function. DOUBLE-TRACK ADJUSTMENT PROCESS 939 For the market model, define the Lyapunov function L : Rn → R by (2) L(p) = ph + V i (p) βh ∈N i∈I where V i is the indirect utility function of buyer i ∈ I. This type of function is well known in the literature for economies with divisible goods (see, e.g., Arrow and Hahn (1971) and Varian (1981)), but was only recently explored ingeniously by Ausubel (2005, 2006) in the context of indivisible goods. His Proposition 1 in both papers shows that if an equilibrium exists, then the set of equilibrium price vectors coincides with the set of minimizers of the Lyapunov function. The following lemma strengthens this result by providing a necessary and sufficient condition for the existence of an equilibrium. LEMMA 1: For the market model, p∗ is a Walrasian equilibrium price vector if and only if it is a minimizer of the Lyapunov function L defined by (2) with its value L(p∗ ) equal to the market value R(N). A set D ⊆ Rn is integrally convex if D = co(D) and x ∈ D implies x ∈ co(D ∩ N(x)), where N(x) = {z ∈ Zn |z − x∞ < 1} and · ∞ means the maximum norm, that is, every point x ∈ D can be represented as a convex combination of integral points in N(x) ∩ D. Favati and Tardella (1990) originally introduced this concept for discrete subsets of Zn . The following theorem will be used to prove the convergence of the double-track procedures. THEOREM 3: Assume that the market model satisfies Assumptions A1 and A2. Then (i) the Lyapunov function L defined by (2) is a continuous, convex, and generalized submodular function; (ii) the set of Walrasian equilibrium price vectors forms a nonempty, compact, integrally convex, and generalized lattice, implying that all its vertices including both its smallest and largest equilibrium price vectors, denoted by p and p̄, respectively, are integer vectors. The theorem asserts that (i) the Lyapunov function is a well-behaved function, meaning that a local mimimum is also a global mimimum, and (ii) the set of Walrasian equilibrium price vectors possesses an elegant geometry: (a) the set is an integral polyhedron, that is, all vertices including p and p̄ are integer vectors, and (b) the intersection of the set with any unit hypercube {x} + [0 1]n for x ∈ Zn is integrally convex and thereby all of its vertices are integer vectors. 3.2. The Formal Procedure We are now ready to give a formal description of the double-track adjustment process.6 This process can be seen as an extension of Ausubel (2006) 6 We refer to Yang (1999) for various adjustment processes for finding Walrasian equilibria, Nash equilibria and their refinements in continuous models. 940 N. SUN AND Z. YANG from GS to GSC preferences environments and thus from the standard order ≤ to the new order ≤g .7 More specifically, when either S1 = ∅ or S2 = ∅ (i.e., all items are substitutes to the buyers), this new process coincides exactly with Ausubel’s. The new order ≤g differs from the standard order ≤ used by the existing auctions in that the new process adjusts prices of items in one set upward, but at the same time adjusts prices of items in the other set downward. Therefore, we define an n-dimensional cube for price adjustment by = {δ ∈ Rn |0 ≤ δk ≤ 1 ∀βk ∈ S1 −1 ≤ δl ≤ 0 ∀βl ∈ S2 } For any buyer i ∈ I, any price vector p ∈ Zn , and any price variation δ ∈ , choose S̃ i ∈ arg min (3) δh S∈Di (p) βh ∈S The next lemma asserts that for any buyer i, any p ∈ Zn , and any δ ∈ , his optimal bundle S̃ i in (3) chosen from Di (p) remains constant for all price vectors on the line segment from p to p + δ. This property is crucial for the auctioneer to adjust the current price vector to the next one and is a consequence of the GSI property. LEMMA 2: If Assumptions A1 and A2 hold for the market model, then for any i ∈ I, any p ∈ Zn , and any δ ∈ , the solution S̃ i of formula (3) satisfies S̃ i ∈ Di (p + λδ) and the Lyapunov function L(p + λδ) is linear in λ, for any parameter λ ≥ 0 such that 0 ≤ λδk ≤ 1 for every βk ∈ S1 and −1 ≤ λδl ≤ 0 for every βl ∈ S2 . Given a current price vector p(t) ∈ Zn , the auctioneer first asks every buyer i to report his demand Di (p(t)). Then she uses every buyer’s reported demand Di (p(t)) to determine the next price vector p(t + 1). The underlying rationale for the auctioneer is to choose a direction δ ∈ so as to reduce the value of the Lyapunov function L as much as possible. To achieve this, she needs to solve the problem max L(p(t)) − L(p(t) + δ) (4) δ∈ Note that the above formula involves every buyer’s valuation of every bundle of goods, so it uses private information. Apparently, it is impossible for the 7 This process can be also viewed as a direct generalization of Gul and Stacchetti (2000) from GS to GSC environments. We adopt here the Lyapunov function approach instead of matroid theory used by Gul and Stacchetti, because the former is more familiar in economics and much simpler than the latter. 941 DOUBLE-TRACK ADJUSTMENT PROCESS auctioneer to know such information unless the buyers tell her. Fortunately, she can fully infer the difference between L(p(t)) and L(p(t) + δ) just from the reported demands Di (p(t)) and the price variation δ. To see this, we know from the definition of the Lyapunov function that for any given p(t) ∈ Zn and δ ∈ , the difference is given by (5) L(p(t)) − L(p(t) + δ) = δh V i (p(t)) − V i (p(t) + δ) − βh ∈N i∈I Although, at prices p(t), each buyer i may have many optimal choices, his indirect utility V i (p(t)) at p(t) is unique since every optimal choice gives him the same indirect utility. Lemma 2 tells us that some S̃ i of his optimal choices remains unchanged when prices vary from p(t) to p(t) + δ. It is immediately clear that his indirect utility V i (p(t) + δ) at prices p(t) + δ equals V i (p(t)) − βh ∈S̃ i δh . Now we obtain the change in indirect utility for buyer i when prices move from p(t) to p(t) + δ. This change is unique and is given by (6) δh = δh V i (p(t)) − V i (p(t) + δ) = min S∈Di (p(t)) βh ∈S βh ∈S̃ i where S̃ i is a solution given by (3) for buyer i with respect to price vector p(t) and the variation δ. Consequently, equation (5) becomes the following simple formula whose right side involves only price variation δ and optimal choices at p(t): min (7) L(p(t)) − L(p(t) + δ) = δh − δh i∈I = S∈Di (p(t)) i∈I β ∈S̃ i h βh ∈N βh ∈S δh − δh βh ∈N The next result shows that the set of solutions to problem (4) is a generalized lattice, and both its smallest and largest elements are integral, resembling Theorem 3 and following also from the generalized submodularity of the Lyapunov function. LEMMA 3: If Assumptions A1 and A2 hold for the market model, then the set of solutions to problem (4) is a nonempty, integrally convex, and generalized lattice, and both its smallest and largest elements are integer vectors. Given the current price vector p(t), the next price vector p(t + 1) is given by p(t + 1) = p(t) + δ(t), where δ(t) is the unique smallest element as described in Lemma 3. Since δ(t) is an integer vector, this implies that the auctioneer 942 N. SUN AND Z. YANG does not need to search everywhere in the cube to achieve a maximal decrease in the value of the Lyapunov function. It suffices to search only the vertices (i.e., the integer vectors) of the cube , and doing so will lead to the same maximal value decrease of the Lyapunov function. Let Δ = ∩ Zn . By (7), the decision problem (4) of the seller boils down to computing the unique smallest solution δ(t) (on the order ≤g ) of the optimization problem (8) min δh − δh max δ∈Δ i∈I S∈Di (p(t)) βh ∈S βh ∈N The max-min in formula (8) has a meaningful and interesting interpretation: when the prices are adjusted from p(t) to p(t + 1) = p(t) + δ(t), all buyers try to minimize their losses in indirect utility, whereas the seller strives for the highest gain. Nevertheless, the entire computation for (8) is carried out solely by the seller according to buyers’ reported demands Di (p(t)). The computation of (8) is fairly simple because the seller can easily calculate the value (minS∈Di (p(t)) βh ∈S δh ) for each given δ ∈ Δ and buyer i. Now we summarize the adjustment process as follows. The Dynamic Double-Track (DDT) Procedure Step 1: The auctioneer announces an initial price vector p(0) ∈ Zn+ with p(0) ≤g p. Let t := 0 and go to Step 2. Step 2: After the announcement of p(t), the auctioneer asks every buyer i to report his demand Di (p(t)). Then according to (8) and reported demands Di (p(t)), the auctioneer computes the unique smallest element δ(t) (on the order ≤g ) and obtains the next price vector p(t + 1) := p(t) + δ(t). If p(t + 1) = p(t), then the procedure stops. Otherwise, let t := t + 1 and return to Step 2. First, observe that this procedure simultaneously adjusts prices upward for items in S1 and downward for items in S2 , but it does not run two sets independently. When S1 = ∅ and S2 = ∅ (or S2 = ∅ and S1 = ∅), that is, the GS case, the procedure reduces to a multi-item ascending (descending) auction. Second, the rules of the procedure are simple, transparent, detail-free, and privacy-preserving because buyers are asked to reveal only their demands and nothing else, such as their values. Third, to guarantee p(0) ≤g p, the auctioneer just needs to set the initial prices of items in S1 so low and those of items in S2 so high that all items in S1 are over-demanded, but all items in S2 are under-demanded. This can be easily done because every buyer’s value function ui is weakly increasing with ui (∅) = 0 and is bounded above from U ∗ given in Assumption A3. For instance, the auctioneer can simply take p(0) = (p1 (0) pn (0)) by setting pk (0) = 0 for any βk ∈ S1 and pk (0) = U ∗ for any βk ∈ S2 . Observe from the proof of the following Lemma 4 (in the Appendix) that Lemma 4(i) and (ii) are independent of the choice of p(0). DOUBLE-TRACK ADJUSTMENT PROCESS 943 LEMMA 4: Under Assumptions A1 and A2, the DDT procedure has the following properties: (i) p(t) ≤g p implies p(t + 1) ≤g p and (ii) p(t + 1) = p(t) implies p(t) ≥g p. We are ready to establish the following convergence theorem for the DDT procedure. THEOREM 4: For the market model under Assumptions A1–A3, the DDT procedure converges to the smallest equilibrium price vector p in a finite number of rounds. PROOF: Recall that by Theorem 3(ii), the market model has not only a nonempty set of equilibrium price vectors, but also a unique smallest equilibrium price vector p. Let {p(t) t = 0 1 } be the sequence of price vectors generated by the procedure. Note that p(t + 1) = p(t) + δ(t), δ(t) ∈ ∩ Zn for t = 0 1 and p(t) ≤g p(t + 1) for t = 0 1 and all p(t) are integer vectors. Because of p(0) ≤g p, Lemma 4(i) implies that p(t) ≤g p for all t. Since δ(t) is an integer vector for any t and the sequence {p(t) t = 0 1 } is bounded above from p, the sequence must be finite. This means that p(t ∗ ) = p(t ∗ + 1) for some t ∗ , that is, the sequence can be written as {p(t) t = 0 1 t ∗ }. Note that p(t) = p(t + 1) and δ(t) = 0 for any t = 0 1 t ∗ − 1. By Lemma 4(ii), p(t ∗ ) ≥g p. Because of p(t ∗ ) ≤g p, it is clear that p(t ∗ ) = p. This shows that the procedure terminates with the smallest equilibrium price vector p in finitely many rounds. Q.E.D. Similar to Ausubel (2006), Gul and Stacchetti (2000) in the GS case, and Demange, Gale, and Sotomayor (1986) in the unit-demand case (a special GS case), the DDT procedure finds the smallest equilibrium price vector p only if p(0) ≤g p. Now we modify the DDT procedure so that it converges globally to an equilibrium price vector (not necessarily p) by starting from any integer price vector p(0). Analogous to the discrete set Δ, define the discrete set Δ∗ = −Δ. Through Δ∗ , we lower prices of items in S1 , but raise prices of items in S2 . The Global Dynamic Double-Track (GDDT) Procedure Step 1: Choose any initial price vector p(0) ∈ Zn+ . Let t := 0 and go to Step 2. Step 2: The auctioneer asks every buyer i to report his demand Di (p(t)) at p(t). Then based on reported demands Di (p(t)), the auctioneer computes the unique smallest element δ(t) (on the order ≤g ) according to (8). If δ(t) = 0, go to Step 3. Otherwise, set the next price vector p(t + 1) := p(t) + δ(t) and t := t + 1. Return to Step 2. 944 N. SUN AND Z. YANG Step 3: The auctioneer asks every buyer i to report his demand Di (p(t)) at p(t). Then based on reported demands Di (p(t)), the auctioneer computes the unique largest element δ(t) (on the order ≤g ) according to (8) where Δ is replaced by Δ∗ . If δ(t) = 0, then the procedure stops. Otherwise, set the next price vector p(t + 1) := p(t) + δ(t) and t := t + 1. Return to Step 3. First, observe that Step 2 of the GDDT procedure is the same as Step 2 of the DDT procedure and Step 3 of the GDDT procedure is also the same as Step 2 of the DDT procedure except that in Step 3 we switch the role of S1 and S2 by moving from Δ to Δ∗ . Second, the GDDT procedure terminates in Step 3 and never goes from Step 3 to Step 2. This is a crucial step, quite different from Ausubel’s (2006) global auction which requires repeated implementation of his ascending auction and descending auction one after the other in the GS case. Here we find that his global auction only needs to run his ascending auction and descending auction each once. Third, because the order ≤g is defined in the specified order of (S1 S2 ), the auctioneer computes the unique largest element δ(t) in Step 3 (which is equivalent to the unique smallest element if we redefine the order ≤g on the order of (S2 S1 )). Theorem 5 below dispenses with Assumption A3. THEOREM 5: For the market model under Assumptions A1 and A2, starting with any integer price vector, the GDDT procedure converges to an equilibrium price vector in a finite number of rounds. 4. CONCLUDING REMARKS We conclude with a short summary that highlights the main contributions of the current paper. We proposed the (G)DDT procedure that finds Walrasian equilibria and tells us about Walrasian equilibria in the circumstances containing complements that move beyond those we could handle before. The essential feature of the proposed procedure is that it adjusts the prices of items in one set upward but those of items in the other set downward. The GSI property plays a crucial role in establishing these procedures. In this paper, however, we did not address the strategic issue such as when confronting a price mechanism, is it a best policy for every buyer to reveal his demand truthfully? More specifically, does sincere bidding constitute a Nash equilibrium (or its variants) of the game induced by the mechanism? If it is the case, the mechanism is said to be strategy-proof. In Sun and Yang (2008), based upon the current GDDT procedure, we developed a strategy-proof dynamic auction for the GSC environments and proved that sincere bidding is an ex post perfect equilibrium of the game induced by the auction mechanism. APPENDIX We first introduce two auxiliary lemmas. Lemma 5 gives a different formulation of the GSC condition in terms of multiple price increases for the goods in DOUBLE-TRACK ADJUSTMENT PROCESS 945 one set and multiple price decreases for the goods in the other set as opposed to a single price increase for one good. The original definition of GSC has the advantage of simplicity and is easy to use in checking whether a utility function has the GSC property, whereas this alternative shows rich properties of GSC and will be handily used to prove various results. Lemma 6 provides an alternative form of Definition 3 by relaxing the strict inequality vi (A p) < vi (B p) to vi (A p) ≤ vi (B p). LEMMA 5: A value function ui : 2N → R satisfies the GSC condition if and only if for any price vectors p q ∈ Rn with qk ≥ pk for all βk ∈ Sj for j = 1 or 2 and ql ≤ pl for all βl ∈ Sjc , and for any bundle A ∈ Di (p), there exists a bundle B ∈ Di (q) such that {βk |βk ∈ A ∩ Sj and qk = pk } ⊆ B and {βl |βl ∈ A ∩ S and ql = pl } ⊆ B c c j c LEMMA 6: A value function ui : 2N → R satisfies the GSI condition, if and only if, for any price vector p ∈ Rn and any set A ∈ / Di (p), there exists another set B (= A) satisfying one of the conditions (i) and (ii) of Definition 3 and vi (A p) ≤ vi (B p). Because the proof of Theorem 1 is quite involved, it will be helpful to give its road map in advance. For the necessity part, we first pick up any price vector p and fix any bundle A ∈ / Di (p). Then we vary the prices and use the boundedness of the value function and the GSC condition to construct a new bundle B which is at least as good as A given the new prices and satisfies conditions (i) or (ii) of Definition 3. Our construction will then imply that B is at least as good as A given the original prices. For the sufficiency part, we mainly use monotonicity and continuity of the indirect utility function. PROOF OF THEOREM 1: We first prove that GSC implies GSI. Pick up any p ∈ Rn , fix any A ∈ / Di (p), and fix C ∈ Di (p). It follows from the boundedness of the value function that for the given p, there exists a large real number M ∗ such that for any q ∈ Rn , any T ∈ Di (q), and any βk ∈ N, qk ≥ pk + M ∗ implies βk ∈ / T , and qk ≤ pk − M ∗ implies βk ∈ T . Using M ∗ , define p̂ = ∗ c p + M e(A ∩ C c ). Then it still holds that A ∈ / Di (p̂) and C ∈ Di (p̂). Because C = A, there are two possibilities: Case I, C \ A = ∅, and Case II, C \ A = ∅ and A \ C = ∅. Now we discuss them in detail. In Case I (i.e., C \ A = ∅), choose an item βk ∈ C \ A and assume βk ∈ Sj for some j = 1 or 2. Let p̆ = p̂ + M ∗ e([C \ (A ∪ {βk })] ∩ Sj ) − M ∗ e(A ∩ Sjc ). Note that when p̂ changes to p̆, the price of item βk does not change. Then, with regard to C ∈ Di (p̂) and βk ∈ C ∩ Sj , it follows from the GSC condition and Lemma 5 that there exists a set C̄ ∈ Di (p̆) such that βk ∈ C̄. Clearly, {βk } ⊆ 946 N. SUN AND Z. YANG (C̄ \ A) ∩ Sj . Meanwhile, observe that p̆ = p + M ∗ e(Ac \ [(C ∩ Sjc ) ∪ {βk }]) − M ∗ e(A ∩ Sjc ). Then, by the definition of M ∗ and the construction of p̆, we have (C̄ \ A) ∩ Sj ⊆ {βk } and A ∩ Sjc ⊆ C̄. In summary, it yields (C̄ \ A) ∩ Sj = {βk } and A ∩ Sjc ⊆ C̄. In Subcase I(a) in which (C̄ \A)∩Sjc = ∅, select an item βh ∈ (C̄ \A)∩Sjc . Let p̃ = p̆ + M ∗ e([C \ (A ∪ {βh })] ∩ Sjc ) − M ∗ e(A ∩ Sj ). Note that when p̆ changes to p̃, the price of item βh does not change. Then, with regard to C̄ ∈ Di (p̆) and βh ∈ C̄ ∩ Sjc , it follows from the GSC condition and Lemma 5 that there exists a bundle B ∈ Di (p̃) such that βh ∈ B. Observe that p̃ = p + M ∗ e(Ac \ {βk βh }) − M ∗ e(A). Then the definition of M ∗ and the construction of p̃ imply that A ⊆ B and B \ A ⊆ {βk βh }. Thus we have A \ B = ∅ and B \ A = {βh βk } or {βh }. Namely, the set B satisfies the condition (i) or (ii) of Definition 3. In Subcase I(b) in which (C̄ \ A) ∩ Sjc = ∅ and (A \ C̄) ∩ Sj = ∅, choose an item βh ∈ (A \ C̄) ∩ Sj . Let p̃ = p̆ + M ∗ e((C \ A) ∩ Sjc ) − M ∗ e((A ∩ Sj ) \ {βh }). Note that when p̆ changes to p̃, the price of item βh does not change. Then, with regard to C̄ ∈ Di (p̆) and βh ∈ Sj \ C̄, it follows from the GSC condition and Lemma 5 that there exists a set B ∈ Di (p̃) such that βh ∈ / B. Next, observe that p̃ = p + M ∗ e(Ac \ {βk }) − M ∗ e(A \ {βh }). Then the definition of M ∗ and the construction of p̃ imply that A \ B ⊆ {βh } and B \ A ⊆ {βk }. Therefore we have A \ B = {βh } and B \ A = {βk } or ∅. This shows that the set B satisfies the condition (i) or (ii) of Definition 3. In Subcase I(c) in which C̄ = A ∪ {βk }, let p̃ = p̆ and B = C̄. Then B satisfies the condition (i) of Definition 3. In Case II (i.e., C ⊆ A and A\C = ∅), choose an item βk ∈ A\C and assume βk ∈ Sj for some j = 1 or 2. Let p̆ = p̂ − M ∗ e((A \ {βk }) ∩ Sj ). Note that when p̂ changes to p̆, the price of item βk does not change. Then, with regard to C ∈ Di (p̂) and βk ∈ Sj \ C, it follows from the GSC condition and Lemma 5 that there exists a set C̄ ∈ Di (p̆) such that βk ∈ / C̄. Meanwhile, note that p̆ = p + M ∗ e(Ac ) − M ∗ e((A ∩ Sj ) \ {βk }). Then, by the definition of M ∗ and the construction of p̆, we have C̄ ⊆ A and (A \ C̄) ∩ Sj ⊆ {βk }. Consequently, it leads to C̄ ⊆ A and (A \ C̄) ∩ Sj = {βk }. In Subcase II(a) in which (A \ C̄) ∩ Sjc = ∅, choose an item βh ∈ (A \ C̄) ∩ Sjc . Let p̃ = p̆ − M ∗ e((A \ {βh }) ∩ Sjc ). Note that when p̆ changes to p̃, the price of item βh does not change. Then, with regard to C̄ ∈ Di (p̆) and βh ∈ Sjc \ C̄, it follows from the GSC condition and Lemma 5 that there exists a bundle B ∈ Di (p̃) such that βh ∈ / B. Next, note that p̃ = p + M ∗ e(Ac ) − M ∗ e(A \ {βk βh }). Then the definition of M ∗ and the construction of p̃ imply that B ⊆ A and A \ B ⊆ {βh βk }. Therefore, we have B ⊆ A, and A \ B = {βh βk } or {βh }. Thus the set B satisfies the condition (i) or (ii) of Definition 3. In Subcase II(b) in which C̄ = A \ {βk }, let p̃ = p̆ and B = C̄. Then B satisfies the condition (i) of Definition 3. DOUBLE-TRACK ADJUSTMENT PROCESS 947 By summing up all the above cases, we conclude that there always exist a price vector p̃ and a set B ∈ Di (p̃) (B = A) that satisfy one of the conditions (i) and (ii) of Definition 3. Next, it follows from B ∈ Di (p̃) that vi (B p̃) = V i (p̃) ≥ vi (A p̃). The construction of p̃ implies that p̃([A \ B] ∪ [B \ A]) = p([A \ B] ∪ [B \ A]). As a result, we have vi (B p) − vi (A p) = vi (B p̃) − vi (A p̃) ≥ 0, and by Lemma 6 we see immediately that the GSI condition is satisfied. It remains to show that GSI implies GSC. Choose any price vector p ∈ Rn , βk ∈ Sj for some j = 1 or 2, δ ≥ 0, and A ∈ Di (p). It is clear that if βk ∈ / A, then A ∈ Di (p + δe(k)). If we choose B = A, then the GSC condition is immediately satisfied. Now we assume that βk ∈ A. Let δ∗ = V i (p) − V i (p + δe(k)). Then we have 0 ≤ δ∗ ≤ δ, A ∈ Di (p + εe(k)), and V i (p + εe(k)) = V i (p) − ε for all ε ∈ [0 δ∗ ]. We need to consider two separate cases. First, if δ∗ = δ, then we have A ∈ Di (p + δe(k)) and we can choose B = A. Clearly, the GSC condition is satisfied. In the rest, we deal with the case of δ∗ < δ. In this case we have V i (p + εe(k)) = V i (p + δ∗ e(k)) and A ∈ / Di (p + εe(k)) for all ε > δ∗ . In i particular, we have A ∈ / D (p + δe(k)). Now let {δν } be any sequence of positive real numbers which converges to 0. Since A ∈ / Di (p + (δ∗ + δν )e(k)), it follows from the GSI condition that there exists a GSI improvement set Bν of A such that vi (Bν p + (δ∗ + δν )e(k)) > vi (A p + (δ∗ + δν )e(k)). Notice that βk does not belong to any such GSI improvement set Bν . Suppose that this statement is false. Then for some ν we would have vi (Bν p + δ∗ e(k)) − δν = vi (Bν p + (δ∗ + δν )e(k)) > vi (A p + (δ∗ + δν )e(k)) = vi (A p + δ∗ e(k)) − δν . This leads to vi (Bν p + δ∗ e(k)) > vi (A p + δ∗ e(k)) = V i (p + δ∗ e(k)), yielding a contradiction. Meanwhile, since the number of sets Bν is finite, without loss of generality we can assume that there exists a positive integer ν ∗ such that Bν = B for all ν ≥ ν ∗ . Then by the continuity of net utility function vi (B ·), we have vi (B p+δ∗ e(k)) = vi (A p+δ∗ e(k)) = V i (p+δ∗ e(k)) = V i (p+δe(k)). In addition, since βk ∈ / B, we have vi (B p + δe(k)) = vi (B p + δ∗ e(k)) = i V (p + δe(k)). This implies B ∈ Di (p + δe(k)). Furthermore, since B is a / B, it satisfies either (i) A ∩ Sjc = B ∩ Sjc , GSI improvement set of A and βk ∈ (A \ B) ∩ Sj = {βk }, and [(B \ A) ∩ Sj ] ≤ 1 or (ii) B ⊆ A, (A \ B) ∩ Sj = {βk }, and [(A \ B) ∩ Sjc ] = 1. This concludes that [A ∩ Sj ] \ {βk } ⊆ B and Ac ∩ Sjc ⊆ Bc , and thus the GSC condition is satisfied. Q.E.D. PROOF OF THEOREM 3: By Theorem 3.1 of Sun and Yang (2006b) the model has an equilibrium. Then by Lemma 1 the set of equilibria is equal to the set of minimizers of the Lyapunov function L. Let Λ = arg min{L(p)|p ∈ Rn } It follows from Theorem 2 and the remark after formula (1) that the Lyapunov function L is a continuous, convex, and generalized submodular function. Now we prove statement (ii). We first show that Λ is a generalized lattice. Take any p q ∈ Λ. So we have L(p) = L(q) = R(N), where R(N) is the market value. Clearly, R(N) ≤ L(p ∧g q) ≤ L(p) + L(q) − L(p ∨g q) ≤ 2R(N) − R(N) = R(N). This shows that L(p ∧g q) = L(p ∨g q) = R(N) and p ∧g q p ∨g q ∈ Λ. 948 N. SUN AND Z. YANG So the set Λ is a nonempty, convex, and generalized lattice. Clearly, Λ is also compact. Next, we prove that Λ is also an integrally convex set. Suppose the statement is false. Define A = {p ∈ Λ|p ∈ / co(Λ ∩ N(p))} where N(p) = {z ∈ Zn |z − p∞ < 1}. Then A is a nonempty subset of Λ. Observe that p ∈ co(Λ ∩ N(p)) for every p ∈ Λ ∩ Zn because N(p) = {p} for every p ∈ Zn , and so A ∩ Zn = ∅. Let p∗ ∈ A be a vector that has at least as many integral coordinates as any other vector in A. Thus, the number of integral coordinates of p∗ is the largest among all vectors in A. Since co(N(p∗ )) is a hypercube, it is a generalized lattice. Let q∗ be the generalized smallest element of co(N(p∗ )). Obviously, q∗ ∈ Zn , q∗ = p∗ , and qh∗ = p∗h whenever p∗h is an integer. Let δ∗ = p∗ − q∗ . Clearly, δ∗h = 0 whenever p∗h is an integer. Then δ∗ ∈ (defined before Lemma 2), δ∗ ∈ / Zn , and 0 < δ∗ ∞ < 1. Define ∗ 8 λ̄ = 1/δ ∞ > 1. By Lemma 2 we know that L(q∗ + λδ∗ ) is linear in λ on the interval [0 λ̄]. Recall that p∗ is a minimizer of the Lyapunov function L. Thus, if q∗ ∈ / Λ, that is, L(q∗ ) > L(p∗ ) = L(q∗ + δ∗ ), then L(p∗ ) > L(q∗ + λ̄δ∗ ), yielding a contradiction. We now consider the case where q∗ ∈ Λ, that is, L(q∗ ) = L(p∗ ) = L(q∗ + δ∗ ). Then it follows from the linearity of L in λ that L(p∗ ) = L(q∗ + λ̄δ∗ ); that is, q∗ + λ̄δ∗ ∈ Λ. By the construction of λ̄, q∗ + λ̄δ∗ has more integral coordinates than p∗ . Therefore, by the choice of p∗ , we see that q∗ + λ̄δ∗ ∈ Λ \ A. That is, q∗ + λ̄δ∗ ∈ co(Λ ∩ N(q∗ + λ̄δ∗ )). Moreover, observe that N(q∗ + λ̄δ∗ ) ⊆ N(p∗ ), q∗ ∈ co(Λ ∩ N(p∗ )), and p∗ is a convex combination of q∗ and q∗ + λ̄δ∗ . As a result, we have p∗ ∈ co(Λ ∩ N(p∗ )), contradicting the hypothesis that p∗ ∈ A. Finally, by definition, we know that every vertex of an integrally convex set is an integral vector and thus every vertex of Λ must be integral as well. So all the vertices of Λ, including the generalized smallest and largest equilibrium price vectors p and p̄, are integral vectors. Furthermore, since the set Λ is bounded, Λ has a finite number of vertices. Clearly, Λ is an integral polyhedron. Q.E.D. We extend and modify the arguments of Propositions 2 and 5 of Ausubel (2006) under the GS condition to prove the following two lemmas under the GSC condition. PROOF OF LEMMA 2: Assume by way of contradiction that there exists λ > 0 such that 0 ≤ λδk ≤ 1 for any βk ∈ S1 and −1 ≤ λδl ≤ 0 for any βl ∈ S2 but S̃ i ∈ / Di (p + λδ). By the GSI property, for S̃ i there exists a GSI improvement bundle A with vi (A p + λδ) > vi (S̃ i p + λδ). By the construction of S̃ i , we see that vi (S̃ i p + λδ) ≥ vi (C p + λδ) for all C ∈ Di (p) and hence A ∈ / Di (p). n i i i Then it follows from Assumption A1 and p ∈ Z that v (A p) ≤ v (S̃ p) − 1 On the other hand, since 0 ≤ λδk ≤ 1 for any βk ∈ S1 and −1 ≤ λδl ≤ 0 8 Note that Lemma 2 and its proof are independent of the current theorem and its proof. DOUBLE-TRACK ADJUSTMENT PROCESS 949 i for bundle of 2 , and A is a GSI improvement any βl ∈ S S̃ , we must have | βh ∈S̃i λδh − βh ∈A λδh | ≤ 1 and thus βh ∈S̃i λδh − 1 ≤ βh ∈A λδh The pre- vious two inequalities imply that vi (A p + λδ) ≤ vi (S̃ i p + λδ), yielding a contradiction. To prove the second part, observe that the above result S̃ i ∈ Di (p + λδ) im plies L(p + λδ) = L(p) + λ( βh ∈N δh − i∈I βh ∈S̃i δh ) for all λ ≥ 0 such that 0 ≤ λδk ≤ 1 for any βk ∈ S1 and −1 ≤ λδl ≤ 0 for any βl ∈ S2 . So L is linear in λ. Q.E.D. PROOF OF LEMMA 4: (i) Suppose to the contrary that in the DDT procedure process there exists a price vector p(t) such that p(t) ≤g p but p(t + 1) ≤g p Then we have p(t) ∧g p = p(t), but (9) p(t) ≤g p(t + 1) ∧g p ≤g p(t + 1) and p(t + 1) ∧g p = p(t + 1) On the other hand, recall from Lemma 1 that since p is the smallest equilibrium price vector on the order of ≤g , it minimizes L(·) and so L(p) ≤ L(p(t + 1) ∨g p). Since L(·) is a generalized submodular function by Theorem 3(i), we have L(p(t + 1) ∨g p) + L(p(t + 1) ∧g p) ≤ L(p(t + 1)) + L(p). Adding the previous inequalities leads to L(p(t + 1) ∧g p) ≤ L(p(t + 1)). By the construction of p(t + 1), this implies that L(p(t + 1) ∧g p) = L(p(t + 1)) and so p(t + 1) ≤g p(t + 1) ∧g p, contradicting inequality (9). (ii) Suppose to the contrary that there exists a price vector p(t) such that p(t + 1) = p(t) but p(t) ≥g p. Then p(t) ∧g p is less than p in at least one component on the order of ≤g . Since p is the smallest equilibrium price vector on the order of ≤g , we know that p(t) ∧g p is not an equilibrium price vector of the market model. Applying Lemma 1, this implies that L(p) < L(p(t) ∧g p). Because L(·) is a generalized submodular function, we also have that L(p(t) ∨g p) + L(p(t) ∧g p) ≤ L(p(t)) + L(p). Adding the previous inequalities implies that L(p(t) ∨g p) < L(p(t)). Because p(t) ∨g p ≥g p(t) and p(t) ∨g p = p(t), there exists p , a strict convex combination of p(t) and p(t) ∨g p, such that p ∈ {p(t)} + and L(p ) < L(p(t)) due to the convexity of L(·) by Theorem 3(i) and the previous strict inequality. By Lemma 3, we know that L(p(t) + δ(t)) < L(p(t)) and hence p(t + 1) = p(t), contradicting the hypothesis. Q.E.D. PROOF OF THEOREM 5: By Theorem 3(ii), the market has a Walrasian equilibrium, and by Lemma 1, the Lyapunov function L(·) attains its mimimum value at any equilibrium price vector and is bounded from below. Since the prices and value functions take only integer values, the Lyapunov function is an integer valued function and it lowers by a positive integer value in each 950 N. SUN AND Z. YANG round of the GDDT procedure. This guarantees that the procedure terminates in finitely many rounds, that is, δ(t ∗ ) = 0 in Step 3 for some t ∗ ∈ Z+ . Let p(0) p(1) p(t ∗ ) be the generated finite sequence of price vectors. Let t̄ ∈ Z+ be the time when the GDDT procedure finds δ(t̄) = 0 in Step 2. We claim that L(p) ≥ L(p(t̄)) for all p ≥g p(t̄). Suppose to the contrary that there exists some p ≥g p(t̄) such that L(p) < L(p(t̄)). By the convexity of L(·) via Theorem 3(i), there is a strict convex combination p of p and p(t̄) such that p ∈ {p(t̄)} + and L(p ) < L(p(t̄)). Lemma 3 and Step 2 of the GDDT procedure imply that L(p(t̄) + δ(t̄)) = minδ∈ L(p(t̄) + δ) = minδ∈Δ L(p(t̄) + δ) ≤ L(p ) < L(p(t̄)) and so δ(t̄) = 0, yielding a contradiction. Therefore, we have L(p ∨g p(t̄)) ≥ L(p(t̄)) for all p ∈ Rn , because p ∨g p(t̄) ≥g p(t̄) for all p ∈ Rn . We will further show that L(p ∨g p(t)) ≥ L(p(t)) for all t = t̄ + 1 t̄ + 2 t ∗ and p ∈ Rn . By induction, it suffices to prove the case of t = t̄ + 1. Notice that p(t̄ + 1) = p(t̄) + δ(t̄), where δ(t̄) ∈ Δ∗ is determined in Step 3 of the GDDT procedure. Suppose to the contrary that there is p ∈ Rn such that L(p ∨g p(t̄ + 1)) < L(p(t̄ + 1)). Then if we start the GDDT procedure from p(t̄ + 1), by the same previous argument we can find a δ (= 0) ∈ Δ in Step 2 such that L(p(t̄ +1)+δ) < L(p(t̄ +1)). Since L(·) is a generalized submodular function, we have L(p(t̄) ∨g (p(t̄ + 1) + δ)) + L(p(t̄) ∧g (p(t̄ + 1) + δ)) ≤ L(p(t̄) + L(p(t̄ + 1) + δ)). Recall that L(p(t̄) ∨g (p(t̄ + 1) + δ)) ≥ L(p(t̄)). It follows that L(p(t̄) ∧g (p(t̄ + 1) + δ)) ≤ L(p(t̄ + 1) + δ) < L(p(t̄ + 1)). Observe that δ = 0 ∧g (δ(t̄) + δ) ∈ Δ∗ and p(t̄) ∧g (p(t̄ + 1) + δ) = p(t̄) + δ . This yields L(p(t̄) + δ ) < L(p(t̄) + δ(t̄)) and so δ = δ(t̄), contradicting the fact that L(p(t̄) + δ(t̄)) = minδ∈Δ∗ L(p(t̄) + δ) = minδ∈∗ L(p(t̄) + δ), where ∗ = −. By the symmetry between Step 2 and Step 3, similarly we can also show that L(p ∧g p(t ∗ )) ≥ L(p(t ∗ )) for all p ∈ Rn (see a detailed proof for this statement in the Supplemental Material). We proved above that L(p ∨g p(t ∗ )) ≥ L(p(t ∗ )) for all p ∈ Rn . Since L(·) is a generalized submodular function, we have L(p) + L(p(t ∗ )) ≥ L(p ∨g p(t ∗ )) + L(p ∧g p(t ∗ )) ≥ 2L(p(t ∗ )) for all p ∈ Rn . This shows that L(p(t ∗ )) ≤ L(p) holds for all p ∈ Rn and by Lemma 1, p(t ∗ ) is an equilibrium price vector. Q.E.D. REFERENCES ARROW, K. J., AND F. H. HAHN (1971): General Competitive Analysis. San Francisco: Holden-Day. [939] ARROW, K. J., AND L. HURWICZ (1958): “On the Stability of the Competitive Equilibrium, I,” Econometrica, 26, 522–552. [933] AUSUBEL, L. (2004): “An Efficient Ascending-Bid Auction for Multiple Objects,” American Economic Review, 94, 1452–1475. [937] (2005): “Walrasian Tatonnement for Discrete Goods,” Preprint. [939] (2006): “An Efficient Dynamic Auction for Heterogeneous Commodities,” American Economic Review, 96, 602–629. [934,935,937-939,943,944,948] AUSUBEL, L., AND P. MILGROM (2002): “Ascending Auctions With Package Bidding,” Frontiers of Theoretical Economics, 1, Article 1. [938] DOUBLE-TRACK ADJUSTMENT PROCESS 951 CRAWFORD, V. P. (2008): “The Flexible-Salary Match: A Proposal to Increase the Salary Flexibility of the National Resident Matching Program,” Journal of Economic Behavior and Organization, 66, 149–160. [937] CRAWFORD, V. P., AND E. M. KNOER (1981): “Job Matching With Heterogeneous Firms and Workers,” Econometrica, 49, 437–450. [934] DEMANGE, D., D. GALE, AND M. SOTOMAYOR (1986): “Multi-Item Auctions,” Journal of Political Economy, 94, 863–872. [934,943] FAVATI, P., AND F. TARDELLA (1990): “Convexity in Nonlinear Integer Programming,” Ricerca Operativa, 53, 3–44. [939] GALE, D., AND L. SHAPLEY (1962): “College Admissions and the Stability of Marriage,” American Mathematical Monthly, 69, 9–15. [934] GUL, F., AND E. STACCHETTI (1999): “Walrasian Equilibrium With Gross Substitutes,” Journal of Economic Theory, 87, 95–124. [935,937,938] (2000): “The English Auction With Differentiated Commodities,” Journal of Economic Theory, 92, 66–95. [934,935,937,938,940,943] JEHIEL, P., AND B. MOLDOVANU (2003): “An Economic Perspective on Auctions,” Economic Policy, 18, 269–308. [934] KELSO, A., AND V. P. CRAWFORD (1982): “Job Matching, Coalition Formation, and Gross Substitutes,” Econometrica, 50, 1483–1504. [933,937] KLEMPERER, P. (2004): Auctions: Theory and Practice. Princeton, NJ: Princeton University Press, 269–282. [934] KRISHNA, V. (2002): Auction Theory. New York: Academic Press. [934] MASKIN, E. (2005): “Recent Contributions to Mechanism Design: A Highly Selective Review,” Preprint. [934] MILGROM, P. (2000): “Putting Auction Theory to Work: The Simultaneous Ascending Auction,” Journal of Political Economy, 108, 245–272. [934,937] (2004): Putting Auction Theory to Work. New York: Cambridge University Press. [937] (2007): “Package Auctions and Exchanges,” Econometrica, 75, 935–965. [934] OSTROVSKY, M. (2008): “Stability in Supply Chain Network,” American Economic Review, 98, 897–923. [934] PERRY, M., AND P. RENY (2005): “An Efficient Multi-Unit Ascending Auction,” Review of Economic Studies, 72, 567–592. [937] RASSENTI, S., V. SMITH, AND R. BULFIN (1982): “A Combinatorial Auction Mechanism for Airport Time Slot Allocation,” The Bell Journal of Economics, 13, 402–417. [934] SAMUELSON, P. A. (1941): “The Stability of Equilibrium: Comparative Statics and Dynamics,” Econometrica, 9, 97–120. [933] (1974): “Complementarity,” Journal of Economic Literature, 12, 1255–1289. [934] SCARF, H. (1960): “Some Examples of Global Instability of the Competitive Equilibrium,” International Economic Review, 1, 157–172. [933] (1973): The Computation of Economic Equilibria. New Haven, CT: Yale University Press. [933] SHAPLEY, L. (1962): “Complements and Substitutes in the Optimal Assignment Problem,” Naval Research Logistics Quarterly, 9, 45–48. [934] SHAPLEY, L., AND H. SCARF (1974): “On Cores and Indivisibilities,” Journal of Mathematical Economics, 1, 23–37. [934] SUN, N., AND Z. YANG (2006a): “Double-Track Auction and Job Matching Mechanisms for Allocating Substitutes and Complements,” FBA Discussion Paper 241, Yokohama National University, Yokohama. [936] (2006b): “Equilibria and Indivisibilities: Gross Substitutes and Complements,” Econometrica, 74, 1385–1402. [934,936,947] (2008): “A Double-Track Auction for Substitutes and Complements,” FBA Discussion Paper 656, Institute of Economic Research, Kyoto University, Kyoto; available at http://www. kier.kyoto-u.ac.jp. [944] 952 N. SUN AND Z. YANG (2009): “Supplement to ‘A Double-Track Adjustment Process for Discrete Markets With Substitutes and Complements’,” Econometrica Supplemental Material, 77, http://www. econometricsociety.org/ecta/Supmat/6514_proofs.pdf. [938] VARIAN, H. R. (1981): “Dynamic Systems With Applications to Economics,” in Handbook of Mathematical Economics, 1, ed. by K. J. Arrow and M. D. Intriligator. Amsterdam: NorthHolland. [939] YANG, Z. (1999): Computing Equilibria and Fixed Points. Boston: Kluwer. [939] School of Economics, Shanghai University of Finance and Economics, Shanghai, China; nsun@mail.shufe.edu.cn and Faculty of Business Administration, Yokohama National University, Yokohama, Japan; yang@ynu.ac.jp. Manuscript received June, 2006; final revision received October, 2008.