Josefina Martinez
Department of Economics
University of Colorado
$TITLE Model M1_5S: Closed 2x2 Economy with Specific Factors
$ontext
Sector-specific inputs can represent decreasing returns to
scale. Rents accrue to a fictitious factor called "capital".
Production Sectors Consumers
Markets | X Y W | CONS
------------------------------------------------------
PX | 100 -100 |
PY | 100 -100 |
PW | 200 | -200
PL | -50 -50 | 100
PKX | -50 | 50
PKY | -50 | 50
------------------------------------------------------
$offtext
* Declare GAMS parameters which we will use in model:
SCALAR TX Ad-valorem tax rate for X sector inputs /0/
ESUB Elasticity of substitution for good X /1/
SX Subsidy on X sector output /0/
X0 Benchmark x /100/
XPROD X productivity /1/;
$ONTEXT
$MODEL:M1_5S
$SECTORS:
X ! Activity level for sector X
Y ! Activity level for sector Y
W ! Activity level for sector W (Hicksian welfare index)
$COMMODITIES:
PW ! Price index for welfare (expenditure function)
PX ! Price index for commodity X
PY ! Price index for commodity Y
PL ! Price index for primary factor L
PKX ! Price index for sector-specific input for sector X
PKY ! Price index for sector-specific input for sector Y
$CONSUMERS:
CONS ! Income level for consumer CONS
$PROD:X s:ESUB
O:PX Q:100 A:CONS T:(-SX)
I:PL Q: 50 A:CONS T:TX
I:PKX Q: 50 A:CONS T:TX
$PROD:Y s:1
O:PY Q:100
I:PL Q: 50
I:PKY Q: 50
$PROD:W s:1
O:PW Q:200
I:PX Q:100
I:PY Q:100
$DEMAND:CONS
D:PW Q:200
E:PL Q:100
E:PKX Q:50
E:PKY Q:50
$OFFTEXT
$SYSINCLUDE mpsgeset M1_5S
* Benchmark replication:
M1_5S.ITERLIM = 0;
$INCLUDE M1_5S.GEN
SOLVE M1_5S USING MCP;
M1_5S.ITERLIM = 2000;
* Solve a counterfactual:
TX = 1;
$INCLUDE M1_5S.GEN
SOLVE M1_5S USING MCP;
*-------------------------------------------------------------------------
* EXERCISE (1). Evaluate the price elasticity of supply for
* good X at the benchmark point and then design an experiment
* to measure this elasticity numerically.
$ontext
For constant returns to scale technologies the cost
function, in equilibrium, defines the price of output:
p = c(r,w)
where w is the exogenous wage rate and r is the residual
return to the sector's fixed factor.
The price elasticity of supply at the benchmark point is:
ES_X = dX * (p/w)
------ -----
d(p/w) X
If we use the calibrated CES cost function (see: "Some Hints
and Useful Formulae" in www.gams.com/solvers/mpsge) and equate
cost to the price of output, we get an expression for the price
elasticity of supply as follows:
ES_X = ESUBL * (1 - SHAREKX) / SHAREKX
TO CHECK THE PRICE ELASTICITY OF SUPPLY (ES_X) we change the
price of good X with a production subsidy (SX), then we
compute the producer price of good X (PXP) as the consumer price
PX.L plus the subsidy: PXP = (1 + SX) * PX.L. We divide the
change in supply of X (X.L - 1) by the change in the ratio of
producer price of X to price of labor; and multiply by the
benchmark ratio (1) divided by the benchmark level of supply
of good X (1) to produce a finite difference approximation
of the elasticity:
ES_X = (X.L - 1)/ ((PXP/PL.L) - 1)
$offtext
* EVALUATE ES_X AT BENCHMARK POINT:
* Return to benchmark parameters:
TX = 0;
* Change the price of good X (levy a production subsidy):
SX = 0.001;
$INCLUDE M1_5S.GEN
SOLVE M1_5S USING MCP;
PARAMETER ES_X Elasticity of supply of good X
PXP Producer price of good X
SHAREKX Value share of KX;
* The producer price is equal to the consumer price plus the
* subsidy:
PXP = (1 + SX)*PX.L;
ES_X= (X.L - 1)/((PXP/PL.L) - 1);
* Compute ES_X as a function of ESUBL and the share value of
* capital which in this model is 0.50.
SHAREKX = 0.50;
DISPLAY "ELASTICITY CHECK -- The following values should be identical", ES_X;
ES_X = ESUB * (1 - SHAREKX)/SHAREKX;
DISPLAY ES_X;
*-------------------------------------------------------------------------
* EXERCISE (2). Convert sector X from Cobb-Douglas to CES and
* set the elasticity of substitution between PL and PKX so that
* the benchmark price elasticity of supply equals an assumed value:
ES_X= 2;
ESUB = (SHAREKX * ES_X) / (1 - SHAREKX);
$INCLUDE M1_5S.GEN
SOLVE M1_5S USING MCP;
* Producer price:
PXP = (1 + SX)*PX.L;
* The calibrated price elasticity of supply of good X is:
ES_X= (X.L - 1)/((PXP/PL.L) - 1);
* Check calibration:
DISPLAY "ELASTICITY CHECK --The following values should be identical", ES_X;
ES_X = ESUB * (1 - SHAREKX)/SHAREKX;
DISPLAY ES_X;
The solution listing appears as follows:
S O L V E S U M M A R Y
MODEL M1_5S
Default price normalization using income for CONS
LOWER LEVEL UPPER MARGINAL
---- VAR X . 1.000 +INF .
---- VAR Y . 1.000 +INF .
---- VAR W . 1.000 +INF .
---- VAR PW . 1.000 +INF .
---- VAR PX . 1.000 +INF .
---- VAR PY . 1.000 +INF .
---- VAR PL . 1.000 +INF .
---- VAR PKX . 1.000 +INF .
---- VAR PKY . 1.000 +INF .
---- VAR CONS . 200.000 +INF .
X Activity level for sector X
Y Activity level for sector Y
W Activity level for sector W (Hicksian welfare index)
PW Price index for welfare (expenditure function)
PX Price index for commodity X
PY Price index for commodity Y
PL Price index for primary factor L
PKX Price index for sector-specific input for sector X
PKY Price index for sector-specific input for sector Y
CONS Income level for consumer CONS
Counterfactual model: 100% tax on X sector inputs:
S O L V E S U M M A R Y
MODEL M1_5S
Default price normalization using income for CONS
LOWER LEVEL UPPER MARGINAL
---- VAR X . 0.816 +INF .
---- VAR Y . 1.155 +INF .
---- VAR W . 0.971 +INF .
---- VAR PW . 1.545 +INF .
---- VAR PX . 1.837 +INF .
---- VAR PY . 1.299 +INF .
---- VAR PL . 1.125 +INF .
---- VAR PKX . 0.750 +INF .
---- VAR PKY . 1.500 +INF .
---- VAR CONS . 300.000 +INF .
EXERCISE (1). Evaluate the price elasticity of supply for good X.
S O L V E S U M M A R Y
MODEL M1_5S
Default price normalization using income for CONS
LOWER LEVEL UPPER MARGINAL
---- VAR X . 1.000 +INF .
---- VAR Y . 1.000 +INF .
---- VAR W . 1.000 +INF .
---- VAR PW . 1.124 +INF .
---- VAR PX . 1.124 +INF .
---- VAR PY . 1.125 +INF .
---- VAR PL . 1.125 +INF .
---- VAR PKX . 1.125 +INF .
---- VAR PKY . 1.124 +INF .
---- VAR CONS . 224.850 +INF .
E x e c u t i o n
---- 627 ES_X CHECK -- The following values should be identical
---- 627 PARAMETER ES_X = 1.000 Elasticity of supply
of good X
---- 630 PARAMETER ES_X = 1.000 Elasticity of supply
of good X
EXERCISE (2). Evaluate the price elasticity of supply for good X.
S O L V E S U M M A R Y
MODEL M1_5S
Default price normalization using income for CONS
LOWER LEVEL UPPER MARGINAL
---- VAR X . 1.000 +INF .
---- VAR Y . 1.000 +INF .
---- VAR W . 1.000 +INF .
---- VAR PW . 1.124 +INF .
---- VAR PX . 1.124 +INF .
---- VAR PY . 1.125 +INF .
---- VAR PL . 1.125 +INF .
---- VAR PKX . 1.125 +INF .
---- VAR PKY . 1.124 +INF .
---- VAR CONS . 224.850 +INF .
E x e c u t i o n
---- 764 Elasticity Check --The following values should be identical
---- 764 PARAMETER ES_X = 2.000 Elasticity of supply
of good X
---- 768 PARAMETER ES_X = 2.000 Elasticity of supply
of good X