1 Introduction

Scarf (1960) presents three examples of small pure exchange economies, in which prices either converge to or orbit around the competitive equilibrium (clockwise or counter clockwise), depending on the initial allocation. These examples have inspired different lines of research. First and foremost, they have raised the question which price adjustment processes do converge to Walrasian equilibria [e.g. Uzawa (1962), Negishi (1962), Hahn and Negishi (1962), Scarf (1967), Scarf and Hansen (1973), Smale (1976), Saari and Simon (1978), Van der Laan and Talman (1987), Herings (1997), Herings (2002)]. But, the examples have also sparked an interest in the stabilization of these so-called Scarf economies themselves.

Oehmke and Oehmke (1991) argues that aggregate excess demand of any commodity must become positive if its relative price goes to zero. This requirement can be used to constrain the set of admissible initial allocations, ruling out the examples of Scarf (1960). Kumar and Shubik (2004) considers the stabilization of the Scarf economies as an exercise in designing an appropriate feedback controller. It shows that adding higher order derivatives to the feedback mechanism can result in convergence. Anderson et al. (2004) is of particular interest. It submits the Scarf examples to experimental trading in a continuous double auction. Despite introducing a few complications, aimed at making trading more challenging for human agents, its results resemble those of Scarf (1960). Only in the stable example, prices closely fluctuate around the values of Walrasian equilibrium prices. Prices in the clockwise and counter clockwise examples have similar, unstable dynamics, in opposite directions.Footnote 1 Gintis (2007) claims that the lack of stability in Anderson et al. (2004) is due to the continuous double auction. It presents an agent-based model with bilateral trading and learning through imitation. In the context of the unstable Scarf examples this leads to convergence. However, if expectations are updated in a coordinated manner, then instability emerges.Footnote 2 Goeree and Lindsay (2016) succeeds in stabilizing an experimental Scarf economy by introducing a schedules-market, in which traders reveal part of their demand schedules to an auctioneer, who then uses the algorithm of Smale (1976) to compute new prices.

Following the lead of Goeree and Lindsay (2016), this paper proposes a more parsimonious approach to obtaining demand schedules. We demonstrate that the auctioneer can reliably approximate demand schedules by assuming that all agents have Cobb–Douglas utility functions. Here, “reliable” means implying global convergence (i.e. convergence from any starting point) to the Walrasian equilibrium. Demand at previously quoted prices suffices to identify the hypothetical Cobb–Douglas preferences. This way, a Cobb–Douglas exchange economy can be associated with any exchange economy under consideration. This Cobb–Douglas economy has unique equilibrium prices, which feed into the next iteration. We show convergence in exchange economies, in which traders have preferences that can be represented by CES utility functions, ranging from Leontief to Cobb–Douglas functions. This class covers the examples of Scarf (1960). In the clockwise and counter clockwise economies, we find prices spiraling towards the Walrasian equilibrium in the same direction as found by Herbert Scarf. Convergence is due to the process generating prices that are not a linear combination of previous prices.

If a price adjustment process converges globally and universally (i.e. for every economy) then it is called an effective price mechanism. Saari and Simon (1978) stipulates that effective price mechanisms require knowledge of most elements of the Jacobian of the aggregate excess demand function. This result is predicated on the trajectories of prices following a differential equation. The amount of information required by our process, \(\mathcal {P}\), consists of the initial allocation of commodities and individual demand at a finite number of (arbitrary) prices. That may be more than is needed for an effective price mechanism. However, absent any prior knowledge that a given economy is characterized by a particular aggregate excess demand function, the latter (and possibly its Jacobian) will have to be derived from individual demand before they can be used in any algorithm. In that case, \(\mathcal {P}\) allows a reduction of information.

The complexity of the proposed process depends on how the speed of convergence relates to scale: in each iteration, solving the new prices in an associated Cobb–Douglas economy requires at most \(m^{3}/3+m^{2}n\) multiplications and additions, with m the number of commodities and n the number of agents [c.f. Eaves (1985)]. We explore the complexity of the process by simulating the maximum number of iterations required for convergence in scaled-up versions of the Scarf economies. The speed of convergence appears to be a polynomial function of the size of the economy.Footnote 3 If \(m=n\) is even, then large scale Scarf economies have an infinite number of equilibria with prices \(\mathbf {p}^{*}=\left( 1,\alpha ,\ldots ,1,\alpha \right) \), \(\alpha >0\). Here, on average, the proposed algorithm converges faster than if \(m=n\) is odd and \(\alpha =1\). However, in the even-sized unstable examples, there is also a small probability that an excessive number of steps is required for reaching convergence (depending on how the equilibrium prices in the associated Cobb–Douglas economy are computed).

This paper is organized as follows. After deriving some auxiliary results (Sect. 2), we will prove convergence (Sect. 3). In Sect. 4, we apply our approach to the examples proposed by Scarf (1960). Here, we also simulate the relation between speed of convergence and scale. Finally, Sect. 5 offers some concluding thoughts.

2 Preliminaries

Consider an exchange economy, \(\xi \), consisting of n agents, \(i=1,2,\ldots ,n\), and m commodities, \(j=1,2,\ldots ,m\). Traders have non-negative endowments, \(\mathbf {w}_{i}\in \mathbb {R}_{+}^{m}\).Footnote 4 Each agent i has preferences over commodity bundles, \(\mathbf {x}\in \mathbb {R}_{+}^{m}\), that can be represented by a CES utility function, ranging from Leontief to Cobb–Douglas utility functions.Footnote 5 That is, for each agent i we have:

$$\begin{aligned} u_{i}(\mathbf {x})=\left( \sum _{j}\,\alpha _{ji}x_{ji}^{\rho _{i}}\right) ^{1/\rho _{i}} \end{aligned}$$
(2.1)

with parameters \(\alpha _{ji}\) being weights that add up to one, \(\forall i:\,\sum _{j}\alpha _{ji}=1\) and \(\rho _{i}<1\), \(\rho _{i}\ne 0\). It will be convenient to define \(\sigma _{i}=\frac{1}{1-\rho _{i}}\). Below, we will consider CES preferences with \(\sigma _{i}\le 1\).Footnote 6 By assumption, prices, \(\mathbf {p}\), are non-negative and add up to 1, \(\mathbf {p}\in S^{m-1}=\left\{ \mathbf {p}\in \mathbb {R}_{+}^{m}|\sum _{j}p_{j}=1\right\} \). Given prices \(\mathbf {p}\), trader i’s optimal demand for commodity j can be written as:

$$\begin{aligned} x_{ji}\left( \mathbf {p},\mathbf {w}_{i}\right) =\frac{\alpha _{ji}^{\sigma _{i}} p_{j}^{1-\sigma _{i}}}{\sum _{r}\alpha _{ri}^{\sigma _{i}}p_{r}^{1-\sigma _{i}}} \frac{\mathbf {p}\cdot \mathbf {w}_{i}}{p_{j}}. \end{aligned}$$
(2.2)

The terms \(\nicefrac {\alpha _{ji}^{\sigma _{i}}p_{j}^{1-\sigma _{i}}}{\sum _{r}\alpha _{ri}^{\sigma _{i}}p_{r}^{1-\sigma _{i}}}\) represent the fraction of the budget \(\mathbf {p}\cdot \mathbf {w}_{i}\) that is spent on commodity j by trader i. With a CES-utility function, this fraction can depend on all prices. If \(\sigma _{i}=1\) (i.e., if \(\rho _{i}\rightarrow 0\)), then CES preferences coincide with Cobb–Douglas preferences. In this case, the fraction of the budget that is spent on commodity j reduces to \(\alpha _{ji}\). If \(\sigma _{i}\rightarrow 0\), the CES preferences approximate Leontief preferences.

An equilibrium of \(\xi \) is a pair \(\left\{ \mathbf {X}\left( \mathbf {p}^{*}\right) ,\mathbf {p}^{*}\right\} \), consisting of an allocation \(\mathbf {X}\left( \mathbf {p}^{*}\right) \), with columns \(\mathbf {x}_{i}\left( \mathbf {p}^{*},\mathbf {w}_{i}\right) \), \(i=1,2,\ldots ,n\), and a \(1\times m\) vector of equilibrium prices, \(\mathbf {p}^{*}\). The allocation \(\mathbf {X}\left( \mathbf {p}^{*}\right) \) is such that total demand at prices \(\mathbf {p}^{*}\) equals total supply \(\sum _{i}\mathbf {x}_{i}\left( \mathbf {p}^{*},\mathbf {w}_{i}\right) =\sum _{i}\mathbf {w}_{i}\). If \(\mathbf {z}\left( \mathbf {p}\right) =\sum _{i}\left( \mathbf {x}_{i}\left( \mathbf {p},\mathbf {w}_{i}\right) -\mathbf {w}_{i}\right) \) represents the aggregate excess demand function, then \(\mathbf {p}^{*}\) satisfies \(\mathbf {z}\left( \mathbf {p}^{*}\right) =\mathbf {0}\). Walras’ Law stipulates that for all \(\mathbf {p}\) we have \(\mathbf {p}\cdot \mathbf {z}\left( \mathbf {p}\right) =0\). This is due to the fact that each trader plans to spend his budget completely [as is clear from Eq. (2.2)], \(\forall i:\mathbf {p}\cdot \mathbf {x}_{i}\left( \mathbf {p},\mathbf {w}_{i}\right) =\mathbf {p}\cdot \mathbf {w}_{i}\).

An aggregate excess demand function satisfies the gross substitute (GS) property if \(\mathbf {p}\) and \(\mathbf {p}'\) are two price vectors such that (i) \(p_{s}>p'_{s}\) and (ii) \(p_{r}=p'_{r}\) for \(r\ne s\) imply \(z_{r}\left( \mathbf {p}\right) >z_{r}\left( \mathbf {p}'\right) \) for \(r\ne s\). If all individual excess demands satisfies GS, then the aggregate excess demand function \(\mathbf {z}\left( \mathbf {p}\right) \) also satisfies GS. In pure exchange economies, if \(\mathbf {z}\left( \mathbf {p}\right) \) satisfies GS, then the equilibrium is unique, c.f. Mas-Colell et al. (1995, 17.F.3). An aggregate excess demand function satisfies the Weak Axiom of Revealed Preferences (WARP) if for any pair of price vectors \(\mathbf {p}\) and \(\mathbf {p}'\):

$$\begin{aligned} \mathbf {z}\left( \mathbf {p}\right) \ne \mathbf {z}\left( \mathbf {p}'\right) \text { and }\mathbf {p}\cdot \mathbf {z}\left( \mathbf {p}'\right) \le 0\Rightarrow \mathbf {p}'\cdot \mathbf {z}\left( \mathbf {p}\right) >0. \end{aligned}$$
(2.3)

Individual excess demand always satisfies WARP, but this attribute does not aggregate. With respect to aggregate excess demand, WARP does not imply GS, nor does GS imply WARP. However, if the aggregate excess demand function satisfies GS, then a restricted version of WARP applies:

$$\begin{aligned} \mathbf {z}\left( \mathbf {p}^{*}\right) =\mathbf {0}\text { and }\mathbf {z}\left( \mathbf {p}\right) \ne \mathbf {0}\Rightarrow \mathbf {p}^{*}\cdot \mathbf {z}\left( \mathbf {p}\right) >0 \end{aligned}$$
(2.4)

see Mas-Colell et al. (1995, 17.F.3).

If an arbitrary trader i responds truthfully to prices \(\mathbf {p}^{k}>0\) with demand \(\mathbf {x}_{i}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) \), then he reveals how he wants to allocate his budget to each of the available commodities. As a matter of fact, i spends a fraction

$$\begin{aligned} \hat{\alpha }_{ji}=\frac{p_{j}^{k}x_{ji}(\mathbf {p}^{k},\mathbf {w}_{i})}{\mathbf {p}^{k}\cdot \mathbf {w}_{i}} \end{aligned}$$
(2.5)

of his budget \(\mathbf {p}^{k}\cdot \mathbf {w}_{i}\) on commodity j. Hence, each trader’s demand at prices \(\mathbf {p}^{k}\) reveals the parameters of a Cobb–Douglas utility function that could have generated his observed demand at prices \(\mathbf {p}^{k}\). Therefore, an auctioneer may hypothesize that observed demand for all j and i was generated by:

$$\begin{aligned} x_{ji}\left( \mathbf {p},\mathbf {w}_{i}|\mathbf {p}^{k}\right) =\frac{p_{j}^{k}x_{ji}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) }{\mathbf {p}^{k}\cdot \mathbf {w}_{i}}\,\frac{\mathbf {p}\cdot \mathbf {w}_{i}}{p_{j}}. \end{aligned}$$
(2.6)

Note that indeed \(\forall i,\forall j:x_{ji}(\mathbf {p}^{k},\mathbf {w}_{i}|\mathbf {p}^{k})=x_{ji}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) \). By comparing Eqs. (2.2) and (2.6) the similarity and difference between \(\mathbf {x}_{i}\left( \mathbf {p},\mathbf {w}_{i}\right) \) and \(\mathbf {x}_{i}(\mathbf {p},\mathbf {w}_{i}|\mathbf {p}^{k})\) become clear: (i) in both cases demand for commodity j depends on the fraction of the budget that is assigned to it and on its own price \(p_{j}\); (ii) but in economy \(\xi \) the fraction depends on all weights \(\alpha _{ji}\) and all prices \(p_{j}\) (assuming \(\sigma _{i}<1\)), while the auctioneer takes “snapshots” of the fractions that apply at prices \(\mathbf {p}^{k}\), as expressed in Eq. (2.5). In effect, the auctioneer is able to associate a specific Cobb–Douglas exchange economy to prices \(\mathbf {p}^{k}\), based on observed demand. While \(\xi \) remains fixed, each different price vector \(\mathbf {p}^{k}\) induces another, specific Cobb–Douglas exchange economy. Individual excess demand in pure exchange Cobb–Douglas economies satisfies GS, and as a result so does aggregate excess demand. Hence, the associated Cobb–Douglas economy induced by \(\mathbf {p}^{k}\) has a unique equilibrium price vector, \(\mathbf {p}_{CD}^{*}\left( \mathbf {p}^{k}\right) \). This vector can be determined by solving \(\mathbf {z}\left( \mathbf {p}_{CD}^{*}\left( \mathbf {p}^{k}\right) |\mathbf {p}^{k}\right) =\mathbf {0}\), with \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) =\sum _{i}\mathbf {x}_{i}\left( \mathbf {p},\mathbf {w}_{i}|\mathbf {p}^{k}\right) -\sum _{i}\mathbf {w}_{i}\) the aggregate excess function of the associated Cobb–Douglas economy induced by \(\mathbf {p}^{k}\).Footnote 7 Let \(\mathcal {P}\) be the price adjustment process that maps \(\mathbf {p}^{k}\) to \(\mathbf {p}^{k+1}=\mathbf {p}_{CD}^{*}\left( \mathbf {p}^{k}\right) \).

Walras’ Law holds in the associated Cobb–Douglas economies, because each trader in economy \(\xi \) plans to completely spend his budget.

Lemma 1

\(\forall \mathbf {p},\mathbf {p}^{k}\in S^{m-1}: \,\mathbf {p}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) =0\).

Proof

By definition, we have:

$$\begin{aligned}&\mathbf {p}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \end{aligned}$$
(2.7)
$$\begin{aligned}&\quad =\sum _{i}\mathbf {p}\cdot \mathbf {x}_{i}\left( \mathbf {p},\mathbf {w}_{i}|\mathbf {p}^{k}\right) -\sum _{i}\mathbf {p}\cdot \mathbf {w}_{i} \end{aligned}$$
(2.8)
$$\begin{aligned}&\quad =\sum _{i}\sum _{j}p_{j}\frac{p_{j}^{k}x_{ji}(\mathbf {p}^{k},\mathbf {w}_{i})}{\mathbf {p}^{k}\cdot \mathbf {w}_{i}}\,\frac{\mathbf {p}\cdot \mathbf {w}_{i}}{p_{j}}-\sum _{i}\mathbf {p}\cdot \mathbf {w}_{i} \end{aligned}$$
(2.9)
$$\begin{aligned}&\quad =\sum _{i}\frac{\mathbf {p}^{k}\cdot \mathbf {x}_{i}(\mathbf {p}^{k},\mathbf {w}_{i})}{\mathbf {p}^{k}\cdot \mathbf {w}_{i}}\,\mathbf {p}\cdot \mathbf {w}_{i}-\sum _{i}\mathbf {p}\cdot \mathbf {w}_{i} \end{aligned}$$
(2.10)
$$\begin{aligned}&\quad =\sum _{i}\frac{\mathbf {p}^{k}\cdot \mathbf {w}_{i}}{\mathbf {p}^{k}\cdot \mathbf {w}_{i}}\,\mathbf {p}\cdot \mathbf {w}_{i}-\sum _{i}\mathbf {p}\cdot \mathbf {w}_{i} = 0. \end{aligned}$$
(2.11)

Equation (2.11) is due to \(\mathbf {p}^{k}\cdot \mathbf {x}_{i}(\mathbf {p}^{k},\mathbf {w}_{i})=\mathbf {p}^{k}\cdot \mathbf {w}_{i}\) for all i in economy \(\xi \). \(\square \)

In the associated Cobb–Douglas economy, we also have that equilibrium prices cannot be revealed preferred to any non-equilibrium price vector \(\mathbf {p}\):

Corollary 1

If \(\mathbf {p}^{k+1}=\mathcal {P}\left( \mathbf {p}^{k}\right) \) and if \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \ne \mathbf {0}\), then \(\mathbf {p}^{k+1}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) >0\).

Proof

By construction, (i) \(\mathbf {z}\left( \mathbf {p}^{k+1}|\mathbf {p}^{k}\right) =\mathbf {0}\) and (ii) \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) satisfies GS; hence (2.4) applies, yielding the result. \(\square \)

Together with \(\mathbf {z}\left( \mathbf {p}^{k+1}|\mathbf {p}^{k}\right) =\mathbf {0}\), Corollary 1 implies that the hyperplane \(\mathbf {p}^{k+1}\cdot \mathbf {a}=0\) is tangential to \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) in \(\mathbf {p}=\mathbf {p}^{k+1}\). The aggregate excess demand function \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) does not need to be convex, but for all mixtures \(\lambda \mathbf {p}+\left( 1-\lambda \right) \mathbf {p}^{k+1}\) with \(0<\lambda <1\) we have

Corollary 2

If \(\mathbf {p}^{k+1}=\mathcal {P}\left( \mathbf {p}^{k}\right) \), \(\mathbf {p}\ne \mathbf {p}^{k+1}\), \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \ne \mathbf {0}\) and if \(0<\lambda <1\), then

$$\begin{aligned} \lambda \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) >\mathbf {z}\left( \lambda \mathbf {p}+\left( 1-\lambda \right) \mathbf {p}^{k+1}|\mathbf {p}^{k}\right) . \end{aligned}$$
(2.12)

Proof

Suppose the contrary, then there exists a \(\lambda ^{*}\) such that \(0<\lambda ^{*}<1\) and

$$\begin{aligned}&\lambda ^{*}\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \le \mathbf {z}\left( \lambda ^{*}\mathbf {p}+\left( 1-\lambda ^{*}\right) \mathbf {p}^{k+1}|\mathbf {p}^{k}\right) \end{aligned}$$
(2.13)
$$\begin{aligned}&\quad \Rightarrow \lambda ^{*}\left( 1-\lambda ^{*}\right) \mathbf {p}^{k+1}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \le 0 \end{aligned}$$
(2.14)

This contradicts Corollary 1. The implication is due to multiplying both sides by \(\lambda ^{*}\mathbf {p}+\left( 1-\lambda ^{*}\right) \mathbf {p}^{k+1}\) and by applying Lemma 1 twice. \(\square \)

Next, we show that the intersection between the \(\mathbf {q}\cdot \mathbf {a}=0\) hyperplane and the aggregate excess demand function \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) is unique.

Lemma 2

If \(\mathbf {q}>\mathbf {0}\), \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \ne \mathbf {0}\) and \(\mathbf {q}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) =0\), then \(\mathbf {q}=\mathbf {p}\).

Proof

Let \(\mathbf {p}>\mathbf {0},\mathbf {q}>\mathbf {0}\) and \(\mathbf {q}\ne \mathbf {p}\); furthermore suppose that \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \ne \mathbf {0}\) and \(\mathbf {q}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) =0\). From the latter and from the fact that \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) satisfies GS we have \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \ne \mathbf {z}\left( \mathbf {q}|\mathbf {p}^{k}\right) \). Multiplying both sides by \(\mathbf {q}\) would give \(0\ne 0\); hence \(\mathbf {q}=\mathbf {p}\). \(\square \)

The following lemma states that if \(\mathbf {z}\left( \mathbf {q}|\mathbf {p}^{k}\right) \) lies below the \(\mathbf {p}\cdot \mathbf {a}=0\) hyperplane for some \(\mathbf {p}\), then the intersection of \(\mathbf {p}\cdot \mathbf {a}=0\) and \(\mathbf {z}\left( \cdot |\mathbf {p}^{k}\right) \) lies above the \(\mathbf {q}\cdot \mathbf {a}=0\) hyperplane.

Lemma 3

If \(\mathbf {p}\cdot \mathbf {z}\left( \mathbf {q}|\mathbf {p}^{k}\right) <0\) and \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \ne \mathbf {0}\), then \(\mathbf {q}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) >0\).

Proof

Let \(\mathbf {p}\) be a price such that \(\mathbf {p}\cdot \mathbf {z}\left( \mathbf {q}|\mathbf {p}^{k}\right) <0\) and \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \ne \mathbf {0}\). From Corollary 1, it follows that \(\mathbf {p}^{k+1}\cdot \mathbf {z}\left( \mathbf {q}|\mathbf {p}^{k}\right) >0\); hence there exists a \(\lambda ^{*}\) such that \(0<\lambda ^{*}<1\) and \(\left( \lambda ^{*}\mathbf {p}+\left( 1-\lambda ^{*}\right) \mathbf {p}^{k+1}\right) \cdot \mathbf {z}\left( \mathbf {q}|\mathbf {p}^{k}\right) =0\). From Lemma 2, we find that \(\lambda ^{*}\mathbf {p}+\left( 1-\lambda ^{*}\right) \mathbf {p}^{k+1}=\mathbf {q}\) and therefore

$$\begin{aligned} \mathbf {q}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) =\left( 1-\lambda ^{*}\right) \mathbf {p}^{k+1}\cdot \mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) >0. \end{aligned}$$
(2.15)

due to Corollary 1. \(\square \)

Figure 1 depicts a slice of \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) in \(\mathbb {R}^{m}\). Although \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) appears as a convex function in Fig. 1, we do not assume it to be convex.

Fig. 1
figure 1

The function \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) passes through the origin O at prices \(\mathbf {p}^{k+1}\); \(\mathbf {p}^{k+1}\cdot \mathbf {q}=0\) is a hyperplane that is tangential to \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \). The \(\mathbf {p}^{k}\cdot \mathbf {q}=0\) hyperplane intersects \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) \) at \(\mathbf {z}\left( \mathbf {p}^{k}\right) \), which is a graphical expression of Lemma 1. This is also why \(\mathbf {z}\left( \mathbf {p}^{k+1}\right) \) lies somewhere on the \(\mathbf {p}^{k+1}\cdot \mathbf {q}=0\) hyperplane. Commodities u and d have the largest increase and decrease in prices in going from iteration k to \(k+1\). Conditions \(z_{d}\left( \mathbf {p}^{k}\right)<z_{d}\left( \mathbf {p}^{k+1}\right) \le 0\le z_{u}\left( \mathbf {p}^{k+1}\right) <z_{u}\left( \mathbf {p}^{k}\right) \) are sufficient for having AO smaller than OB (triangles \(AO\mathbf {z}\left( \mathbf {p}^{k+1}\right) \) and \(OB\mathbf {z}\left( \mathbf {p}^{k}\right) \) are congruent), i.e. \(\mathbf {p}^{k}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) +\mathbf {p}^{k+1}\cdot \mathbf {z}\left( \mathbf {p}^{k}\right) >0\), implying that \(\mathbf {z}\left( \mathbf {p}\right) \) satisfies WARP in moving from \(\mathbf {p}^{k}\) to \(\mathbf {p}^{k+1}\): \(\left( \mathbf {p}^{k+1}-\mathbf {p}^{k}\right) \cdot \left( \mathbf {z}\left( \mathbf {p}^{k+1}\right) -\mathbf {z}\left( \mathbf {p}^{k}\right) \right) <0\)

3 Price Dynamics

The proof of convergence of \(\mathcal {P}\) exploits the difference in the amount of substitution in economy \(\xi \) and the associated Cobb–Douglas economy induced by \(\mathbf {p}^{k}\), while going from \(\mathbf {p}^{k}\) to \(\mathbf {p}^{k+1}\). It will be shown that \(\mathcal {P}\) generates prices that cannot be represented by a linear combination of previous prices. This has the immediate consequence that cycles, or orbits, cannot occur. Since the class of exchange economies in which traders have CES preferences with \(\forall i:\sigma _{i}\le 1\) covers the examples of Scarf, the price adjustment process \(\mathcal {P}\) stabilizes these examples (c.f. Sect. 4).

Lemma 4 shows that convergence of the price adjustment process \(\mathcal {P}\) occurs in an equilibrium of the economy \(\xi \). Furthermore, if \(\mathcal {P}\) hits an equilibrium price vector \(\mathbf {p}^{*}\) of \(\xi \), then the process remains in \(\mathbf {p}^{*}\).

Lemma 4

Let \(\xi =\left\{ \left( u_{i},\mathbf {w}_{i}\right) _{i=1}^{n}\right\} \) be an exchange economy, and let \(\mathbf {p}^{k+1}=\mathcal {P}\left( \mathbf {p}^{k}\right) \). If \(\mathbf {p}^{k+1}=\mathbf {p}^{k}\), then \(\left\{ \mathbf {X}\left( \mathbf {p}^{k}\right) ,\mathbf {p}^{k}\right\} \) is a Walrasian equilibrium of \(\xi \). Furthermore, if \(\left\{ \mathbf {X\left( \mathbf {p}^{*}\right) },\mathbf {p}^{*}\right\} \) is a Walrasian equilibrium of \(\xi \), and if \(\exists k:\mathbf {p}^{k}=\mathbf {p}^{*}\), then \(\mathbf {p}^{k+1}=\mathbf {p}^{*}\).

Proof

If \(\mathbf {p}^{k+1}=\mathbf {p}^{k}\), then \(\sum _{i}\mathbf {w}_{i}=\sum _{i}\mathbf {x}_{i}(\mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k})=\sum _{i}\mathbf {x}_{i}(\mathbf {p}^{k},\mathbf {w}_{i}|\mathbf {p}^{k})=\sum _{i}\mathbf {x}_{i}(\mathbf {p}^{k},\mathbf {w}_{i})\). Since optimal demand at \(\mathbf {p}^{k}\) clears all markets in \(\xi \), \(\left\{ \mathbf {X\left( \mathbf {p}^{k}\right) },\mathbf {p}^{k}\right\} \) is a Walrasian equilibrium of \(\xi \). If \(\mathbf {p}^{*}\) is an equilibrium price vector of \(\xi \) and if \(\exists k:\mathbf {p}^{k}=\mathbf {p}^{*}\), then \(\mathbf {z}\left( \mathbf {p}^{*}|\mathbf {p}^{*}\right) =\sum _{i}\mathbf {x}_{i}\left( \mathbf {p}^{*},\mathbf {w}_{i}|\mathbf {p}^{*}\right) -\sum _{i}\mathbf {w}_{i}=\sum _{i}\mathbf {x}_{i}\left( \mathbf {p}^{*},\mathbf {w}_{i}\right) -\sum _{i}\mathbf {w}_{i}=\mathbf {0}\); \(\mathbf {p}^{k+1}=\mathbf {p}^{*}\), because \(\mathbf {z}\left( \mathbf {p}^{k+1}|\mathbf {p}^{*}\right) =\mathbf {0}\) has a unique solution. \(\square \)

After starting with strictly positive prices, the price adjustment process keeps generating strictly positive prices, implying that \(\mathcal {P}\) cannot result in a boundary solution.

Lemma 5

Let \(\mathbf {p}^{0}>0\); if \(\mathbf {p}^{k+1}=\mathcal {P}\left( \mathbf {p}^{k}\right) \), then \(\mathbf {p}^{k+1}>0\).

Proof

By definition, prices \(\mathbf {p}^{k+1}\) clear an associated Cobb–Douglas economy induced by \(\mathbf {p}^{k}\). Suppose \(p_{j}^{k+1}=0\), then demand for commodity j in the associated Cobb–Douglas economy would be infinite, which is inconsistent with an equilibrium; hence, \(\forall j:\,p_{j}^{k+1}>0\). \(\square \)

Lemma 6 is the base case of an inductive argument in Lemma 7. By substituting \(\mathbf {p}=\mathbf {p}^{k}\) into Corollary 1, we see that aggregate demand at \(\mathbf {p}^{k}\) is no longer feasible at \(\mathbf {p}^{k+1}\). Lemma 6 states that aggregate demand at \(\mathbf {p}^{k+1}\) in economy \(\xi \) is feasible at prices \(\mathbf {p}^{k}\). In going from \(\mathbf {p}^{k}\) to \(\mathbf {p}^{k+1}\), agents take advantage of the possibility to substitute. Having a CES utility function with \(0\le \sigma _{i}\le 1\), the preferred amount of substitution for trader i is bounded by the limiting cases of Leontief and Cobb–Douglas utility functions. This provides us with a useful inequality, (3.7).

Lemma 6

If all agents have CES preferences with \(0\le \sigma _{i}\le 1\), \(\mathbf {p}^{k+1}=\mathcal {P}\left( \mathbf {p}^{k}\right) \) and if \(\mathbf {p}^{k+1}\ne \mathbf {p}^{k}\), then \(\mathbf {p}^{k}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) \le 0\), with equality applying if and only if all agents have Cobb–Douglas preferences.

Proof

If a utility function is CES with \(0\le \sigma _{i}\le 1\), then \(\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \) lies on the \(\mathbf {p}^{k+1}\) budget constraint between demand at \(\mathbf {p}^{k+1}\) that would apply if \(\sigma _{i}=0\) and if \(\sigma _{i}=1\). The latter corresponds with \(\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k}\right) \), and the former can be written as

$$\begin{aligned} \mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) =\frac{\mathbf {p}^{k+1}\cdot \mathbf {w}_{i}}{\mathbf {p}^{k+1}\cdot \mathbf {x}_{i}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) }\,\mathbf {x}_{i}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) . \end{aligned}$$
(3.1)

This is simply re-scaling \(\mathbf {x}_{i}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) \) so that \(\mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \) lies on the \(\mathbf {p}^{k+1}\) budget constraint. We have

$$\begin{aligned} \mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) =\left( 1-\theta _{i}\right) \mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) +\theta _{i}\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k}\right) \end{aligned}$$
(3.2)
Fig. 2
figure 2

Graphical explanation of the proof of inequality 3.6. In response to prices \(\mathbf {p}^{k}\), a trader demands A. The auctioneer constructs hypothetical Cobb–Douglas preferences that rationalize this choice, represented by the solid indifference curve \(I_{1}\). The auctioneer expects that the trader will demand C at the new prices \(\mathbf {p}^{k+1}\): The dotted indifference curve \(I_{3}\) is tangential to the new budget constraint. Point B is the demand at prices \(\mathbf {p}^{k+1}\) if the trader would have Leontief preferences (instead of the unknown CES or the hypothetical Cobb–Douglas preferences). Inequality 3.6 expresses the fact that C is not affordable at prices \(\mathbf {p}^{k}\) for any trader, with endowments B and with the hypothetical Cobb–Douglas preferences. The point is proved by observing that such a trader prefers B at prices \(\mathbf {p}^{k}\) and that he prefers C if prices are equal to \(\mathbf {p}^{k+1}\) (i.e., while B is also affordable at \(\mathbf {p}^{k+1}\)). Hence, C is revealed preferred to B. The implication is that C is not affordable at \(\mathbf {p}^{k}\) (otherwise C would have been have chosen instead of B). Hence, the dashed budget constraint through B is part of a hyperplane that separates B and C

with \(0\le \theta _{i}\le 1\). We can rewrite \(x_{ji}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \) as

$$\begin{aligned} x_{ji}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right)= & {} \frac{p_{j}^{k}x_{ji}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) }{\mathbf {p}^{k}\cdot \mathbf {w}_{i}}\,\frac{\frac{\mathbf {p}^{k+1}\cdot \mathbf {w}_{i}}{\mathbf {p}^{k+1}\cdot \mathbf {x}_{i}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) }\,\mathbf {p}^{k}\cdot \mathbf {x}_{i}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) }{p_{j}^{k}}. \end{aligned}$$
(3.3)
$$\begin{aligned}= & {} \frac{p_{j}^{k}x_{ji}\left( \mathbf {p}^{k},\mathbf {w}_{i}\right) }{\mathbf {p}^{k}\cdot \mathbf {w}_{i}}\,\frac{\mathbf {p}^{k}\cdot \mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) }{p_{j}^{k}} \end{aligned}$$
(3.4)
$$\begin{aligned}= & {} x_{ji}\left( \mathbf {p}^{k},\mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) |\mathbf {p}^{k}\right) \end{aligned}$$
(3.5)

That is, \(\mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \) is the optimal demand at \(\mathbf {p}^{k}\) for a trader who (i) is endowed with \(\mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \) and (ii) who has Cobb–Douglas preferences with parameters defined by (2.5). At \(\mathbf {p}^{k+1}\), however, this trader prefers \(\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k}\right) \), even though \(\mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \) is also affordable. Since \(\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k}\right) \) is revealed preferred to \(\mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \), it must be the case that \(\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k}\right) \) is not affordable at prices \(\mathbf {p}^{k}\). Hence,

$$\begin{aligned} \mathbf {p}^{k}\cdot \mathbf {x}_{i}^{L}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) <\mathbf {p}^{k}\cdot \mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k}\right) . \end{aligned}$$
(3.6)

For a graphical version of the proof of inequality (3.6), see Fig. 2. Combining Eqs. (3.2) and (3.6) we obtain for all i:

$$\begin{aligned} \mathbf {p}^{k}\cdot \mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \le \mathbf {p}^{k}\cdot \mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k}\right) \end{aligned}$$
(3.7)

with equality applying if \(\sigma _{i}=1\). Summing over i yields:

$$\begin{aligned}&\mathbf {p}^{k}\cdot \sum _{i}\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \le \mathbf {p}^{k}\cdot \sum _{i}\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}|\mathbf {p}^{k}\right) \end{aligned}$$
(3.8)
$$\begin{aligned}&\Leftrightarrow \mathbf {p}^{k}\cdot \sum _{i}\mathbf {x}_{i}\left( \mathbf {p}^{k+1},\mathbf {w}_{i}\right) \le \mathbf {p}^{k}\cdot \sum _{i}\mathbf {w}_{i} \end{aligned}$$
(3.9)
$$\begin{aligned}&\Leftrightarrow \mathbf {p}^{k}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) \le 0. \end{aligned}$$
(3.10)

The second inequality is due to the fact that \(\mathbf {p}^{k+1}\) is an equilibrium price vector of the associated Cobb–Douglas economy. If \(\forall i:\theta _{i}=1\), then the inequality in (3.10) becomes an equality; otherwise the inequality is strict. \(\square \)

The following lemma shows that \(\mathbf {z}\left( \mathbf {p}^{k+1}\right) \) is constrained by all previous prices. This rules out cycles and allows us to prove global convergence in Proposition 1.

Lemma 7

If \(\mathbf {p}^{k+1}=\mathcal {P}\left( \mathbf {p}^{k}\right) \), \(\mathbf {p}^{k+1}\ne \mathbf {p}^{k}\), and some traders do not have Cobb–Douglas preferences, then \(\forall r\le k:\,\mathbf {p}^{r}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) <0\).

Proof

For \(r=k\), the result follows directly from Lemma 6. Suppose \(\mathbf {z}\left( \mathbf {p}^{k+1}\right) \ne \mathbf {0}\) and \(\mathbf {p}^{k-1}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) \ge 0\); if \(\mathbf {0}<\mathbf {p}^{k-1}\ne \mathbf {p}^{k+1}\), then according to Lemma 2\(\mathbf {p}^{k-1}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) >0\). Therefore, there exists a \(\theta ^{*}\), \(0<\theta ^{*}<1\), for which

$$\begin{aligned} \left( \theta ^{*}\mathbf {p}^{k-1}+\left( 1-\theta ^{*}\right) \mathbf {p}^{k}\right) \cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) =0. \end{aligned}$$
(3.11)

But then, also due to Lemma 2, \(\theta ^{*}\mathbf {p}^{k-1}+\left( 1-\theta ^{*}\right) \mathbf {p}^{k}=\mathbf {p}^{k+1}\). This implies for \(\mathbf {z}\left( \mathbf {p}^{k}\right) \ne \mathbf {0}\)

$$\begin{aligned}&\mathbf {p}^{k+1}\cdot \mathbf {z}\left( \mathbf {p}^{k}\right) \end{aligned}$$
(3.12)
$$\begin{aligned}&\quad =\left( \theta ^{*}\mathbf {p}^{k-1}+\left( 1-\theta ^{*}\right) \mathbf {p}^{k}\right) \cdot \mathbf {z}\left( \mathbf {p}^{k}\right) \end{aligned}$$
(3.13)
$$\begin{aligned}&\quad =\theta ^{*}\mathbf {p}^{k-1}\cdot \mathbf {z}\left( \mathbf {p}^{k}\right) < 0 \end{aligned}$$
(3.14)

which contradicts Corollary 1. Hence, \(\mathbf {p}^{k-1}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) <0\). This argument can be repeated to obtain \(\mathbf {p}^{r}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) <0\) for other \(r<k-1\). \(\square \)

Proposition 1

Let \(\xi =\left\{ \left( u_{i},\mathbf {w}_{i}\right) _{i=1}^{n}\right\} \) be a CES exchange economy with \(\forall i:0\le \sigma _{i}\le 1\). Assume that at least one Walrasian equilibrium exists, then price adjustment process \(\mathcal {P}\) converges globally.

Proof

We have \(\forall r\le k:\,\mathbf {p}^{r}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) <0\) from Lemma 7. This implies \(\mathbf {p}^{k+1}\ne \sum _{r=0}^{k}\theta ^{r}\mathbf {p}^{r}\) for any \(\left\{ \theta ^{r}\right\} _{r}\) with \(0<\theta ^{r}<1\) and \(\sum _{r}\theta ^{r}=1\). To see this, suppose \(\mathbf {p}^{k+1}=\sum _{r}\theta ^{r}\mathbf {p}^{r}\) for appropriate \(\left\{ \theta ^{r}\right\} _{r}\), then \(\mathbf {p}^{k+1}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) =\sum _{r}\theta ^{r}\mathbf {p}^{r}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) <0\), because, by assumption, each term \(\mathbf {p}^{r}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) <0\); however, this violates Walras’ Law in economy \(\xi \). Note that this also rules out the occurrence of cycles: \(\mathbf {p}^{k}\ne \mathbf {p}^{k+j}\) for all k and j. Let

$$\begin{aligned} F\left( k\right) =\left\{ \mathbf {p}|\mathbf {p}=\sum _{r=0}^{k}\theta ^{r}\mathbf {p}^{r},0<\theta ^{r}<1,\sum _{r=0}^{k}\theta ^{r}=1\right\} \subset S^{m-1} \end{aligned}$$
(3.15)

be the set of “forbidden” subsequent prices. For as long as \(\mathcal {P}\) has not yet converged, a new \(\mathbf {p}^{k+1}\in S^{m-1}-F\left( k\right) \) will be selected. We have \(F\left( k\right) \subseteq F\left( k+1\right) \), with equality applying only if \(\mathbf {p}^{k+1}=\mathbf {p}^{k}\). In that case, \(\mathbf {p}^{k}\) is a Walrasian equilibrium price vector, and \(\mathcal {P}\) remains at \(\mathbf {p}^{k}\), due to Lemma 4. Convergence of \(F\left( k\right) \) implies that \(\mathbf {p}^{k}\) converges.

To the contrary, assume that \(F\left( k\right) \) converges, but that prices do not converge; then there exist \(\left\{ \theta ^{r}\right\} _{r}\) with \(0<\theta ^{r}<1\) and \(\sum _{r}\theta ^{r}=1\), such that \(\mathbf {p}^{k+1}=\sum _{r=0}^{k}\theta ^{r}\mathbf {p}^{r}+\varvec{\delta }^{k+1}\) and where \(||\varvec{\delta }^{k+1}||\) can be made arbitrarily small. As a result we would have \(\mathbf {p}^{k+1}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) =\sum _{r}\theta ^{r}\mathbf {p}^{r}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) +\varvec{\delta }^{k+1}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) <0\) because the sum is strictly negative and \(\varvec{\delta }^{k+1}\cdot \mathbf {z}\left( \mathbf {p}^{k+1}\right) \) can be made arbitrarily small for suitable values of k, because \(\mathbf {z}\left( \mathbf {p}^{k+1}\right) \) is bounded. This violates Walras’ Law in \(\xi \) and hence prices must converge whenever \(F\left( k\right) \) converges. Since \(F\left( k\right) \subseteq S^{m-1}\) this set cannot increase beyond bounds; it must converge and so prices converge to some Walrasian equilibrium price vector \(\mathbf {p}^{k}\). \(\square \)

Fig. 3
figure 3

Convergence of price adjustment process \(\mathcal {P}\) to the equilibrium prices \(\left( p_{2}^{*},p_{3}^{*}\right) =\left( 1,1\right) \), in the stable, clockwise and counter clockwise examples (from left to right). The lower panel zooms in on the equilibrium prices. Dashed arrows indicate the approximate direction of the tȃtonnement process of Scarf (1960) at \(\mathbf {p}^{k}\). Convergence clearly depends on the initial allocation. In the unstable economies, the direction of the spirals is consistent with Scarf’s findings

4 Application to the Scarf Economies

Herbert Scarf has demonstrated that tâtonnement may fail to converge to the Walrasian equilibrium. Scarf (1960) provides three examples of small exchange economies with three traders, \(i=1,\,2,\,3\), and three commodities, \(j=1,\,2,\,3\). The (Leontief) preferences of the agents with respect to commodities can be described as follows:

$$\begin{aligned} u_{1}(\mathbf {x}_{1})= & {} \min (x_{11},x_{31})\nonumber \\ u_{2}(\mathbf {x}_{2})= & {} \min (x_{12},x_{22})\nonumber \\ u_{3}(\mathbf {x}_{3})= & {} \min (x_{23},x_{33}). \end{aligned}$$
(4.1)

The examples differ in how endowments are allocated, in particular (commodities in rows, traders in columns):

$$\begin{aligned} \mathbf {W}^{stb}=\left( \begin{array}{c@{\quad }c@{\quad }c} 0 &{} 0 &{} 1\\ 1 &{} 0 &{} 0\\ 0 &{} 1 &{} 0 \end{array}\right) ;\,\mathbf {W}^{cw}=\left( \begin{array}{c@{\quad }c@{\quad }c} 1 &{} 0 &{} 0\\ 0 &{} 1 &{} 0\\ 0 &{} 0 &{} 1 \end{array}\right) ;\,\mathbf {W}^{ccw}=\left( \begin{array}{c@{\quad }c@{\quad }c} 0 &{} 1 &{} 0\\ 0 &{} 0 &{} 1\\ 1 &{} 0 &{} 0 \end{array}\right) . \end{aligned}$$
(4.2)

The superscripts refer to the price dynamics under tȃtonnement (see below). Demand for commodity j by trader i by example is given in Table 2. All three examples have the same Walrasian equilibrium, i.c.

$$\begin{aligned} \left\{ \mathbf {p}^{*},\mathbf {X}^{*}\right\} =\left\{ \left( 1,1,1\right) ,\,\left( \begin{array}{c@{\quad }c@{\quad }c} \frac{1}{2} &{} \frac{1}{2} &{} 0\\ 0 &{} \frac{1}{2} &{} \frac{1}{2}\\ \frac{1}{2} &{} 0 &{} \frac{1}{2} \end{array}\right) \right\} . \end{aligned}$$
(4.3)

The tȃtonnement process leads to different price dynamics in each of the three examples. In the stable version (stb), tâtonnement does converge to the Walrasian equilibrium. The other two examples are unstable; here, tâtonnement leads to prices orbiting around the Walrasian equilibrium values in perfect circles, either in a clockwise (cw) or counter-clockwise (ccw) direction.

Price adjustment process \(\mathcal {P}\) always converges to the Walrasian equilibrium. Convergence is fast: for instance, starting from \(\mathbf {p}^{1}=\left( 1,3,5\right) \), it takes 15 iterations to obtain the equilibrium prices in three decimal places in the stable case and 28 and 27 iterations the clockwise and counter clockwise examples respectively, c.f. Fig. 3 and Table 1.Footnote 8

Table 1 Price dynamics in the unstable Scarf examples

In order to gain a deeper understanding, Table 1 details the price dynamics in the unstable economies. In the clockwise example, for \(k=2\), there is excess demand for commodity 2, yet its price falls from \(p_{2}^{2}=3.3333\) to \(p_{2}^{3}=2.9279\). This is due to the relatively large excess supply of commodity 3. Its price needs to decrease sharply, but this causes the other prices to rise rather than to fall (the relative price of commodity 1 also increases). Opposite changes can also occur, e.g. in the clockwise example, for \(k=9\): while there is excess supply of commodity 2 its price rises from \(p_{2}^{2}=0.8330\) to \(p_{2}^{3}=0.8870\). This cannot happen in normal tȃtonnement processes, because each change in price is determined independently, conditional on the sign of its own aggregate excess demand. In \(\mathcal {P}\), on the other hand, changes in prices are mutually dependent, because new prices need to clear the associated Cobb–Douglas economy.Footnote 9 Moreover, this also implies that the auctioneer has to anticipate income effects. By comparing Eqs. (2.2) and (2.6) it becomes clear that he does so correctly.

Tables 2 and 3 give the (estimated) demand functions. A comparison shows that demand in the associated Cobb–Douglas economy is less sensitive to prices than demand in economy \(\xi \). For instance, in the stable example, demand depends on two instead of three prices. In the unstable examples, demand for the one commodity that a trader already owns is kept fixed at its current value. The reduced sensitivity of demand to prices also contributes to a more stable evolution of prices.

Table 2 Demand in the Scarf examples
Table 3 Estimated demand in the Scarf economies
Table 4 Endowments in Scarf examples of size n
Table 5 Aggregate excess demand in scaled-up Scarf examples

The complexity of \(\mathcal {P}\) depends on the speed of convergence and on the complexity of determining equilibrium prices in an associated Cobb–Douglas economy. For each iteration of \(\mathcal {P}\), the equilibrium prices of an induced pure exchange Cobb–Douglas economy have to be determined. The latter requires at most \(m^{3}/3+m^{2}n\) multiplications and additions, with m the number of commodities and n the number of agents [c.f. Eaves (1985)]. Given this result, the complexity of \(\mathcal {P}\) depends on how the speed of convergence relates to scale. We explore this issue by simulating the maximum number of iterations that is necessary for computing equilibrium prices of scaled-up versions of the Scarf examples, with \(m=n\) commodities and agents. Let the agents have preferences

$$\begin{aligned} u_{i}\left( \mathbf {x}\right) ={\left\{ \begin{array}{ll} \min \left( x_{1},x_{n}\right) &{} i=1\\ \min \left( x_{i-1},x_{i}\right) &{} i>1. \end{array}\right. } \end{aligned}$$
(4.4)

The endowments depend on the example, c.f. Table 4. By maximizing utility, given prices \(\mathbf {p}^{k}\), one can determine individual demand and aggregate excess demand, c.f. Table 5.

Fig. 4
figure 4

Simulated maximum number of iterations, by size (odd) as measured over 10,000 runs. There is no indication that the worst case speed of convergence is an exponential function of the size of the economy, i.e. of the number of commodities and agents. At \(n=3\), some 30 iterations are required; at \(n=3^{4}\), the maximum number of iterations has increased to less than \(30^{2.42}\). The stable economies converge relatively faster

Fig. 5
figure 5

Simulated maximum number of iterations in the stable examples of size 3–50 (10,000 runs). After size = 20, convergence in even-sized economies is faster than in odd-sized economies

For the unstable economies, it is possible to derive simple solutions for the equilibrium prices of the induced associated Cobb–Douglas economies. For the clockwise examples, we have

$$\begin{aligned} {\left\{ \begin{array}{ll} p_{j}^{k+1}=1 &{} j=1\\ p_{j}^{k+1}=\frac{p_{j-1}^{k}+p_{j}^{k}}{p_{j-1}^{k}}\frac{p_{n}^{k}}{1+p_{n}^{k}} &{} j=2,\ldots ,n \end{array}\right. } \end{aligned}$$
(4.5)

and for the counter clockwise economies

$$\begin{aligned} {\left\{ \begin{array}{ll} p_{j}^{k+1}=\frac{p_{j}^{k}+p_{j+1}^{k}}{p_{j+1}^{k}}\frac{p_{1}^{k}}{p_{1}^{k}+1} &{} j=1,\ldots ,n-1\\ p_{j}^{k+1}=1 &{} j=n. \end{array}\right. } \end{aligned}$$
(4.6)

For the generalized stable Scarf economies, it is possible to derive recursive formulae that have a fixed point that corresponds with the equilibrium prices. However, this recursive process is not convergent. Setting \(\mathbf {z}\left( \mathbf {p}|\mathbf {p}^{k}\right) =0\) defines n equations that can be rewritten as \(\mathbf {p}\cdot \mathbf {M}_{n}=\mathbf {p}\). For each j in Table 5, (i) set the entry equal to zero; (ii) multiply both sides by \(p_{j}\), and (iii) carry \(p_{j}\) to the right hand side. In case \(n=4\), \(\mathbf {M}_{4}\) would then be given by

$$\begin{aligned} \mathbf {M}_{4}=\left( \begin{array}{c@{\quad }c@{\quad }c@{\quad }c} 0 &{} 0 &{} \frac{p_{3}^{k}}{p_{3}^{k}+p_{4}^{k}} &{} \frac{p_{4}^{k}}{p_{3}^{k}+p_{4}^{k}}\\ \frac{p_{1}^{k}}{p_{1}^{k}+p_{4}^{k}} &{} 0 &{} 0 &{} \frac{p_{4}^{k}}{p_{1}^{k}+p_{4}^{k}}\\ \frac{p_{1}^{k}}{p_{1}^{k}+p_{2}^{k}} &{} \frac{p_{2}^{k}}{p_{1}^{k}+p_{2}^{k}} &{} 0 &{} 0\\ 0 &{} \frac{p_{2}^{k}}{p_{2}^{k}+p_{3}^{k}} &{} \frac{p_{3}^{k}}{p_{2}^{k}+p_{3}^{k}} &{} 0 \end{array}\right) . \end{aligned}$$

Hence, in the stable economies, the associated Cobb–Douglas economies can be solved by computing the eigen vector of \(\mathbf {M}_{n}\) corresponding to the eigen value 1. For this the R function “eigen” has been used.

It is straightforward to verify that the large scale economies of size n, with n an even number, admit an infinite amount of equilibrium price vectors of the form \(\mathbf {p}=\left( 1,\alpha ,\ldots ,1,\alpha \right) \). If the size of the economy is odd, then \(\alpha =1\) and we have a unique equilibrium price vector. We therefore distinguish economies according to whether n is even or odd. Figure 4 shows how many iterations at most are required for computing the unique equilibrium price in odd-sized economies up to three decimal places.

Generally speaking, convergence is faster if the size of the large scale Scarf economies is even, c.f. Figs. 5 and 6. This is due to the infinite number of equilibria (in the stable example, new prices of both the odd- and even-sized economies are computed as eigen vectors). In the unstable examples, there is a remote chance that the number of iterations required for convergence in even-sized economies is very high. As a matter of fact, in case of \(m=n=4\) in the clockwise example, there was one simulation (out of 10,000) that required 47,846 iterations. This is due to using the exact solutions (4.5) and (4.6): if equilibria in the associated Cobb–Douglas economies are determined by means of eigen vectors, then the even-sized unstable examples also have a more concentrated distribution of the maximum number of iterations required for obtaining convergence, compared to Fig. 6. Apparently, the speed of convergence is quite sensitive to accuracy in these cases.

Fig. 6
figure 6

Simulated densities of the number of iterations in the clockwise economies of size 3 and 4. The irregularities indicate that many more runs are needed to obtain smooth density functions. However, two salient facts already become clear: (i) on average, convergence is faster in economies with an even number of commodities and agents; and, (ii) the expected maximum number of iterations required to achieve convergence is greatest if the size is even

5 Discussion

Cobb–Douglas approximation provides a parsimonious implementation of a schedules market, as proposed by Goeree and Lindsay (2016). Our proof of global convergence seems to be due to a combination of factors: (i) the determination of prices in \(\mathcal {P}\) is mutually dependent, because the new prices have to clear the associated Cobb–Douglas economy (ii) the auctioneer correctly anticipates income effects and, (iii) estimated demand in the associated Cobb–Douglas economies is less sensitive to prices than demand in the underlying economy \(\xi \).

For practical purposes, \(\mathcal {P}\) requires less information than algorithms that rely on the Jacobian of the aggregate excess demand function (after all, the aggregate excess demand function typically is not given and has to be derived from individual demand). From a computational point of view, the speed of convergence is of greater concern than the amount of information that is needed. It is an open question how \(\mathcal {P}\) compares to other algorithms in this respect. We have only shown global convergence in a class of economies that comprises the Scarf examples.

The so-called Sonnenschein–Mantel–Debreu-result [c.f. Sonnenschein (1973), Mantel (1974), Mantel (1976), Debreu (1974)] is often interpreted as saying that price dynamics can be as “bad” as desired. \(\mathcal {P}\) shows that this interpretation is not compelling: there may exist a simple process that behaves nicely even though the aggregate excess demand function does not satisfy the usual conditions for convergence.