Skip to content

Commit b9baa9c

Browse files
committed
updates
1 parent 4064d9a commit b9baa9c

File tree

1 file changed

+45
-16
lines changed

1 file changed

+45
-16
lines changed

lectures/cass_fiscal.md

Lines changed: 45 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ jupytext:
44
extension: .md
55
format_name: myst
66
format_version: 0.13
7-
jupytext_version: 1.16.4
7+
jupytext_version: 1.16.6
88
kernelspec:
99
display_name: Python 3 (ipykernel)
1010
language: python
@@ -13,6 +13,24 @@ kernelspec:
1313

1414
# Fiscal Policy Experiments in a Non-stochastic Model
1515

16+
## Introduction
17+
18+
This lecture studies effects of technology and fiscal shocks on equilibrium outcomes in a nonstochastic growth model.
19+
20+
We use the model as a laboratory to exhibit numerical techniques for approximating equilibria and to display the structure of dynamic models in which decision makers have perfect foresight about future government decisions.
21+
22+
Following {cite}`hall1971dynamic`, we augment a nonstochastic version of the standard growth model with a government that purchases a stream of goods and that finances itself with an array of distorting flat-rate taxes.
23+
24+
Distorting taxes prevent a competitive equilibrium allocation from solving a planning problem.
25+
26+
Therefore, to compute an equilibrium allocation and price system, we solve a system of nonlinear difference equations consisting of the first-order conditions for decision makers and the other equilibrium conditions.
27+
28+
We present two ways to solve the model:
29+
30+
- The first method is called shooting algorithm;
31+
32+
- The second method is applying a root-finding algorithm to minimize the residuals derived from the first-order conditions.
33+
1634
We will use the following imports
1735

1836
```{code-cell} ipython3
@@ -33,7 +51,7 @@ Note that we will use the `mpmath` library to perform high-precision arithmetic
3351
We will use the following parameters
3452

3553
```{code-cell} ipython3
36-
# Create a named tuple to store the model parameters
54+
# Create a namedtuple to store the model parameters
3755
Model = namedtuple("Model",
3856
["β", "γ", "δ", "α", "A"])
3957
@@ -55,13 +73,16 @@ S = 100
5573
## The Economy
5674

5775
### Households
58-
The representative household has preferences over nonnegative streams of a single consumption good $c_t$:
76+
77+
The representative household has preferences over nonnegative streams of a single consumption good $c_t$ and leisure $1-n_t$ that are ordered by:
5978

6079
$$
61-
\sum_{t=0}^{\infty} \beta^t U(c_t), \quad \beta \in (0, 1)
80+
\sum_{t=0}^{\infty} \beta^t U(c_t, 1-n_t), \quad \beta \in (0, 1)
6281
$$ (eq:utility)
63-
where
64-
- $U(c_t)$ is twice continuously differentiable, and strictly concave with $c_t \geq 0$.
82+
83+
where
84+
85+
- $U$ is twice continuously differentiable, and strictly concave with $c_t \geq 0$. In this lecture, we focus on the special case.
6586
6687
under the budget constraint
6788
@@ -80,25 +101,28 @@ $$
80101
g_t + c_t + x_t \leq F(k_t, n_t),
81102
$$ (eq:tech_capital)
82103
104+
where
105+
83106
- $g_t$ is government expenditure
84107
- $x_t$ is gross investment, and
85-
- $F(k_t, n_t)$ a linearly homogeneous production function with positive and decreasing marginal products of capital $k_t$ and labor $n_t$.
108+
- $F(k_t, n_t)$ is a linearly homogeneous production function with positive and decreasing marginal products of capital $k_t$ and labor $n_t$.
86109
87110
The law of motion for capital is given by:
111+
88112
$$
89-
k_{t+1} = (1 - \delta)k_t + x_t,
113+
k_{t+1} = (1 - \delta)k_t + x_t,
90114
$$
91115
92116
where
93117
94-
- $\delta \in (0, 1)$ is depreciation rate, $k_t$ is the stock of physical capital, and $x_t$ is gross investment.
118+
- $\delta \in (0, 1)$ is depreciation rate.
95119
96120
97121
### Price System
98122
99123
A price system is a triple of sequences $\{q_t, \eta_t, w_t\}_{t=0}^\infty$, where
100124
101-
- $q_t$ is the time 0 pretax price of one unit of investment or consumption at time $t$ ($x_t$ or $c_t$),
125+
- $q_t$ is the time $0$ pretax price of one unit of investment or consumption at time $t$ ($x_t$ or $c_t$),
102126
- $\eta_t$ is the pretax price at time $t$ that the household receives from the firm for renting capital at time $t$,
103127
- $w_t$ is the pretax price at time $t$ that the household receives for renting labor to the firm at time $t$.
104128
@@ -114,13 +138,13 @@ $$ (eq:gov_budget)
114138
115139
### Firm
116140
117-
Firms maximize their present value of profit:
141+
A representative firm chooses $\{k_t, n_t\}_{t=0}^\infty$ to maximize their present value of profit:
118142
119143
$$
120144
\sum_{t=0}^\infty q_t \left[ F(k_t, n_t) - w_t n_t - \eta_t k_t \right],
121145
$$
122146
123-
Euler's theorem for linearly homogeneous functions states that if a function $F(k, n)$ is linearly homogeneous (degree 1), then:
147+
Euler's theorem for linearly homogeneous functions states that if a function $F(k, n)$ is linearly homogeneous of degree 1, then:
124148
125149
$$
126150
F(k, n) = F_k k + F_n n,
@@ -135,9 +159,11 @@ In the equilibrium, given a budget-feasible government policy $\{g_t\}_{t=0}^\in
135159
136160
- *Household* chooses $\{c_t\}_{t=0}^\infty$, $\{n_t\}_{t=0}^\infty$, and $\{k_{t+1}\}_{t=0}^\infty$ to maximize utility{eq}`eq:utility` subject to budget constraint{eq}`eq:house_budget`, and
137161
- *Frim* chooses sequences of capital $\{k_t\}_{t=0}^\infty$ and $\{n_t\}_{t=0}^\infty$ to maximize profits
162+
138163
$$
139164
\sum_{t=0}^\infty q_t [F(k_t, n_t) - \eta_t k_t - w_t n_t]
140165
$$ (eq:firm_profit)
166+
141167
- A **feasible allocation** is a sequence $\{c_t, x_t, n_t, k_t\}_{t=0}^\infty$ that satisfies feasibility condition {eq}`eq:tech_capital`.
142168

143169

@@ -155,7 +181,7 @@ $$
155181
\begin{aligned}
156182
\sum_{t=0}^\infty q_t \left[(1 + \tau_{ct})c_t \right] &\leq \sum_{t=0}^\infty q_t(1 - \tau_{nt})w_t n_t - \sum_{t=0}^\infty q_t \tau_{ht} \\
157183
&+ \sum_{t=1}^\infty\left\{ \left[(1 - \tau_{kt})(\eta_t - \delta) + 1\right]q_t - q_{t-1}\right\}k_t \\
158-
&+ \left[(1 - \tau_{k0})(\eta_0 - \delta) + 1\right]q_0k_0 - \lim_{T \to \infty} q_T r k_{T+1}
184+
&+ \left[(1 - \tau_{k0})(\eta_0 - \delta) + 1\right]q_0k_0 - \lim_{T \to \infty} q_T k_{T+1}
159185
\end{aligned}
160186
$$ (eq:constrant_house)
161187
@@ -168,7 +194,7 @@ $$ (eq:no_arb)
168194
Moreover, we have terminal condition
169195
170196
$$
171-
-\lim_{T \to \infty} q_T r k_{T+1} = 0.
197+
-\lim_{T \to \infty} q_T k_{T+1} = 0.
172198
$$ (eq:terminal)
173199
174200
Moreover, applying Euler's theorem on firm's present value gives
@@ -197,6 +223,8 @@ $$
197223
\frac{\partial \mathcal{L}}{\partial c_t} = \beta^t U_1(c_t, 1 - n_t) - \mu q_t (1 + \tau_{ct}) = 0
198224
$$ (eq:foc_c_1)
199225
226+
which gives $\mu q_t = \beta^t \frac{U_1(c_t, 1 - n_t)}{(1 + \tau_{ct})}$
227+
200228
and
201229
202230
$$
@@ -221,7 +249,7 @@ $$ (eq:foc_n)
221249
Plugging {eq}`eq:foc_c` into {eq}`eq:terminal` by replacing $q_t$, we get terminal condition
222250
223251
$$
224-
-\lim_{T \to \infty} \frac{U_{1t}}{(1 + \tau_{ct})} r k_{T+1} = 0.
252+
-\lim_{T \to \infty} \beta^T \frac{U_{1T}}{(1 + \tau_{cT})} k_{T+1} = 0.
225253
$$ (eq:terminal_final)
226254
227255
## Computing Equilibria
@@ -327,7 +355,7 @@ $$
327355
```{code-cell} ipython3
328356
def compute_η_path(k_path, model, S=100):
329357
"""
330-
Compute η path: η_t = f'(k_t) = α * A * k_t^{α - 1}
358+
Compute η path: η_t = f'(k_t)
331359
"""
332360
η_path = np.zeros_like(k_path)
333361
for t in range(S):
@@ -702,6 +730,7 @@ Let's write the procedures above into a function that runs the solver and draw t
702730
703731
```{code-cell} ipython3
704732
:tags: [hide-input]
733+
705734
def experiment_model(shocks, S, model, solver, plot_func, policy_shock, T=40):
706735
"""
707736
Run the shooting algorithm given a model and plot the results.

0 commit comments

Comments
 (0)