F5-conf-01 — Competitive equilibrium, 2×2 Cobb–Douglas exchange economy
Question
What are the Walrasian equilibrium price p = p1/p2 (good 2 is the numeraire, p2 = 1) and the equilibrium allocation for agents A and B? Two checks are also required: (1) good 1's market clears and Walras' law holds; (2) the closed-form price matches an independent numerical root of the excess-demand function.
Data and exclusions
endowments.csv(2 rows): A = (8, 2), B = (4, 8). Every endowment is strictly positive.parameters.csv(4 rows): α_A = 0.4 and α_B = 0.6, both inside (0,1). The file also gives a summary-sheet aggregate endowment of 14 for good 1 and 10 for good 2.- Data issue. The sheet's aggregate for good 1 (14) does not equal the sum of the individual endowments (8 + 4 = 12). Good 2 is consistent (2 + 8 = 10). In a pure exchange economy the aggregate endowment is by definition the sum of what the agents own, so I used 12. I treat the sheet value as a transcription error. If 14 were used, 2 units of good 1 would belong to no one. Those units would enter no budget, so excess demand could not satisfy Walras' law. Checking against the sheet value at the equilibrium price gives z1 = −2. Solving z1 = 0 against 14 would give p = 2/3, but good 2's market would then not clear. No rows were excluded.
Method
- Demands at prices (p, 1): x1_i = α_i(p e1_i + e2_i)/p and x2_i = (1−α_i)(p e1_i + e2_i).
- Setting Σ_i x1_i = E1 gives p · Σ_i α_i e1_i + Σ_i α_i e2_i = p · E1. Solving for p gives the closed form p = Σ_i α_i e2_i / Σ_i (1−α_i) e1_i = (0.4·2 + 0.6·8)/(0.6·8 + 0.4·4) = 5.6/6.4.
- Assumptions behind the closed form:
- Interior solution: Cobb–Douglas with α in (0,1) and positive wealth guarantees it.
- Strictly positive endowments, so wealth is positive at every p > 0.
- Price normalisation p2 = 1, so only relative prices are determined.
- Price-taking behaviour.
- With Cobb–Douglas preferences, aggregate excess demand has the gross-substitutes property, so the equilibrium is unique.
- Numerical validation:
- I used Brent's method (
scipy.optimize.brentq) on the aggregate excess demand for good 1, z1(p), over the bracket [1e-6, 1e6] with xtol = 1e-14. It uses only the demand functions, not the closed-form expression. - Scope: this checks the algebra of the closed form for these parameters only. It is not an independent check of the model's assumptions or of the data.
- I used Brent's method (
- Walras' law: I evaluated p·z1 + z2 at the equilibrium and also on a grid of 41 prices in [0.01, 100].
Results
| quantity | value |
|---|---|
| p1/p2 (closed form) | 0.875 |
| p1/p2 (numerical root) | 0.875 (difference 1.1e-16) |
| x1_A, x2_A | 4.1143 (= 144/35), 5.4 |
| x1_B, x2_B | 7.8857 (= 276/35), 4.6 |
| z1 at p | 0.0 |
| z2 at p | 0.0 |
| Walras residual p·z1 + z2 at p | 0.0 |
| max |Walras residual| over grid | 5.7e-14 (floating-point rounding) |
The allocation is feasible: 4.1143 + 7.8857 = 12 and 5.4 + 4.6 = 10. Agent A sells good 1 and buys good 2; agent B does the opposite.
Uncertainty
This is a deterministic theoretical exercise with no sampling, so no standard errors apply and no random seed is used. The only numerical error is floating-point rounding, about 1e-16 to 1e-14. The one substantive uncertainty is which aggregate for good 1 is correct, discussed above.
Limitations and open issues
- The results depend on resolving the 12-versus-14 inconsistency in favour of the individual endowments. If the individual endowments are the ones in error (for example, an agent really owns 2 more units of good 1), the equilibrium would change, and which agent holds the extra units would matter.
- The numerical check confirms the closed form for this parameter set only.
- The model assumes price-taking behaviour in a two-agent economy, which is a stylised assumption.