$TITLE M6-6c.GMS: Pollution tax set optimally via a * "first-order condition" * TX is set by an equation equation the price of X to it's full cost: * PX = PL + PCA $ONTEXT This model is a closed economy: two goods and one factor, one consumer Pollution is generated by the production of X, pollution reduces utility Pollution is modeled as a reduction in the endowment of CLEAN AIR Initial endowment of clear air is 200, with 100 reduced by X pollution and 100 entering utility. Production Sectors Consumers Markets | X Y W | CONS ------------------------------------------------------ PX | 100 -100 | PY | 100 -100 | PW | 300 | -300 PL | -100 -100 | 200 ______________________________________________________ PCA -100 (200 - 100) ------------------------------------------------------ $OFFTEXT PARAMETERS POLINT polution intensity multiplier WELOPT welfare under the optimal tax TAXOPT value of the optimal tax; POLINT = 1; NONNEGATIVE VARIABLES X activity level for X production Y activity level for Y production W activity level for the "production" of welfare from X Y PX price of good X PY price of good Y PCA price of clean air PW price of a unit of welfare (real consumer-price index) PL price of labor CONS income of the representative consumer POL pollution TX pollution tax; EQUATIONS PRF_X zero profit for sector X PRF_Y zero profit for sector Y PRF_W zero profit for sector W (Hicksian welfare index) MKT_X supply-demand balance for commodity X MKT_Y supply-demand balance for commodity Y MKT_CA market for clean air (determines shadow value PCA) MKT_L supply-demand balance for primary factor L MKT_W supply-demand balance for aggregate demand I_CONS income definition for CONS PPOL pollution caused by production - consumption of X ATX sets pollution tax optimally; * Zero profit inequalities PRF_X.. 100*PL*(1+TX) =G= 100*PX; PRF_Y.. 100*PL =G= 100*PY; PRF_W.. 200*(PX**(1/3) * PY**(1/3) * PCA**(1/3)) =G= 200*PW; * Market clearance inequalities MKT_X.. 100*X =G= 100 * W * PW / PX; MKT_Y.. 100*Y =G= 100 * W * PW / PY; MKT_CA.. 200-100*POL =G= 100 * W * PW / PCA; MKT_W.. 300*W =E= CONS / PW; MKT_L.. 200 =G= 100*X + 100*Y; * Income balance equations (don't forget tax revenue) I_CONS.. CONS =E= 200*PL + (200-100*POL)*PCA + TX*100*X*PL; PPOL.. 100*POL =G= POLINT*100*X; ATX.. PX =E= PL + PCA*POLINT; * or since PX = PL*(1 + TX), equivalently *ATX.. TX =E= PCA*POLINT / PL; MODEL ALGEBRAIC /PRF_X.X, PRF_Y.Y, PRF_W.W, MKT_X.PX, MKT_Y.PY, MKT_CA.PCA, MKT_L.PL, MKT_W.PW,I_CONS.CONS, PPOL.POL, ATX.TX /; * Chose a numeraire: real consumer price index PW.FX = 1; * Set initial values of variables: X.L=1; Y.L=1; W.L=1; PX.L=1; PY.L=1; PL.L=1; POL.L = 1; PCA.L = 1; CONS.L=300; ALGEBRAIC.ITERLIM = 0; SOLVE ALGEBRAIC USING MCP; ALGEBRAIC.ITERLIM = 1000; SOLVE ALGEBRAIC USING MCP; WELOPT = 100*W.L; TAXOPT = TX.L; DISPLAY WELOPT, TAXOPT; POLINT = 1.5; SOLVE ALGEBRAIC USING MCP; WELOPT = 100*W.L; TAXOPT = TX.L; DISPLAY WELOPT, TAXOPT;