In the previous models we postulated a fixed money supply. In this model we'll include a government sector which creates the money that is used in the economy. So this is our first model in which the amount of money in the economy can vary as opposed to being fixed. And the first model to include government. We'll consider the basic ways in which a currency issuing government interacts with the private sector. We'll take a step back from the inclusion of private sector saving that has been a feature of some earlier models, and assume that our private sector has no saving intention. The reason for this is to make the model as simple as possible. This way, the implications of a government and government issued money can be isolated and identifed more easily. We'll consider how a saving economy interacts with its government later.

So, in this model there is a government sector and a non-government ("private") sector. The government spends by creating money which is then available to circulate in the economy. The government also collects an income tax, that is, it taxes at a fixed rate relative to the income of the non-government sector. The non-government sector pays taxes, and engages in consumer spending using its after-tax, disposable income. This model also introduces the concept of government debt, which is simply the net quantity of money issued to the non-government sector. That is all, mostly.

In this model we'll choose a level of government spending and a tax rate, and these will remain constant for the duration of the model. This type of variable is called an exogenous variable - it is defined outside of the model system and is not affected by the other variables or otherwise changed during the course of the model (unless we change it). We can rationalise this decision in our case by considering the values we choose as representing government (fiscal) policy. On the other hand, there are endogenous variables. These are variables that are explicitly calculated by the model and may change during the course of the model run according to the dynamics of the model. The values of these variables are therefore unknown at the outset: they are the things we want the model to find out for us.

So what we need to model - our endogenous variables - are:

  • consumer spending
  • income
  • government taxation
  • disposable income
  • government debt

5 unknowns, so we need 5 equations. We'll start by defining income in our economy. In contrast to previous models where income was simply identically equal to consumer spending, we now have an additional source of income for the private sector:

$$Y = C + G \hspace{1cm} (1)$$

So at any given point in time, the total income of the economy is equal to the spending which arises from private citizens (and businesses) buying goods and services from one another ($C$), as well as sales of goods and services to the government ($G$). This income is taxed by the government at a rate $\theta$, which is a decimal fraction between $0$ and $1$. So the tax take ($T$) at any given point in time is defined as:

$$T = \theta Y \hspace{1cm} (2)$$

The amount of income which is actually available for spending is the remainder after tax has been paid. This can be called disposable income ($Y_D$) and is defined as:

$$Y_{d} = Y - T \hspace{1cm} (3)$$

Since we're assuming no saving in this model, our citizens simply spend all of their disposable income. As such, the consumption function for this economy is:

$$C = Y_{d} \hspace{1cm} (4)$$

The last variable we need to calculcate is the government debt. For any given time period, the government debt changes by however much money the government is spending into existence minus however much it collects back in tax. The discernable will realise that this difference is called the government budget deficit (or surplus). In any case, we'll label the government debt $H_{g}$, and what we can formally say about it is that it changes in size according to the government's budget position:

$$\Delta H_{g} = G - T \hspace{1cm} (5)$$

Good. All 5 unknowns are accounted for by our 5 equations.

A model in Python

We're going to iterate through some number of time steps and solve our equations on each one, then see where these equations take our economy. First we need to discritize the equations so we can solve them incrementally. There are a few more things to calculate and keep track of on each time step compared with the previous models, so we need to consider in what order to solve each equation. We also need to think about what initial conditions this model requires.

We'll follow the convention set in previous models whereby income is calculated concurrently with spending, i.e. in the same time step, but that that income is spent in the following time step. This reference across time steps is what drives the circulation of money through time in our model. We could do it the other way around - income based on spending in the previous time step, spending based on income in this time step - but this way sits well intuitively since spending literally (by accounting identity) causes an immediate, equivalent income to be earned in the economy. Income, on the other hand, doesn't itself cause spending but simply enables it to occur subsequently. In any case, and in contrast previous models, there are few extra calculations we need to make on each cycle of spending because it is now only the disposable income which gets carried forward to be spent. So, on each time step we need to first calculate comsumer spending based on the disposable income of the last time step. Once we've established the spending level we can assign the income for that time step, pay income tax, and determine the disposable income to be propagated into the next time step.

So, the difference equation for consumer spending (equation 4) in this model looks like this:

$$C_t = Y_{d, t-1}$$

All of the variables in the discritized versions of equations 1-3 simply reference the current time step ($t$), so there's no need to write them all out explicitly here. The government debt equation (equation 5), on the other hand, is an adjustment equation - it tells us only the change in government debt at any given time. So to calculate the size of the government debt at any given time step we need to add the change to the existing quantity calculated in the previous time step:

$$H_{g,t} = H_{g,t-1} + T_t - G$$

Good. And what initial conditions do we need? Well, one of the major differences in this model, compared with previous ones, is that money is added to the economy in this model. This means that we don't have to specify a stock of money at the outset (which we implicitly did in earlier models by specifying the initial spend). Instead, we can start off with no money in the economy and allow our assumptions to get the economy going. So we'll start off with all variables ($Y$, $C$, $T$, $Y_d$, $H_g$) having initial values of zero. We really are starting from scratch.

Okay, let's code it up... As before, we first import our libraries, and define the number of time steps we want.


In [1]:
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline  

N = 100

Next, we'll define the government's fiscal (taxing and spending) policy, that is the level of government spending ($G$) and the tax rate ($\theta$). These values are arbitrary, we'll go for 20 pounds and 20% respectively.


In [2]:
G = 20
theta = 0.2

Now we need to establish some arrays to hold the values of our unknown variables as we solve the model at each time step. As before, we simply create arrays of length N initially populated by zeros. This conveniently sets the initial value of each of these variables - the value at $t=0$, the first value in each array - to zero, as they should be given that no activity has yet taken place. The subsequent values will be overwritten as we propagate our model.


In [3]:
C   = np.zeros(N) # consumption
Y   = np.zeros(N) # income
Y_d = np.zeros(N) # disposable income
T   = np.zeros(N) # tax revenue
H_g = np.zeros(N) # government debt

Now were in a position to iterate through each time step and solve the equations, populating our arrays as we go. Now, we're going to do something cheeky. We're going to iterate from $t = 0$. This shouldn't really work, because our code references the previous time step ($t - 1$), and it wouldn't work in our earlier models which required specific, non-zero initial conditions. But we're subtley exploiting a feature of the Python language to make life easier for ourselves. See if you can figure out why it works in this case.


In [4]:
for t in range(0, N):
    
    # calculate consumer spending
    C[t]   = Y_d[t-1] 
    
    # calculate total income (consumer spending plus constant government spending)
    Y[t]   = G + C[t] 
    
    # calculate the tax take
    T[t] = theta * Y[t]
    
    # calculate disposable income
    Y_d[t] = Y[t] - T[t]
    
    # calculate the change in government debt
    H_g[t] = H_g[t-1] + T[t]- G

That's it! We've solved the entire history of our economy. Okay, there's a lot to keep track of. Let's make a few plots.


In [5]:
fig = plt.figure(figsize=(12, 4))


income_plot = fig.add_subplot(131, xlim=(0, N), ylim=(0, np.max(Y)))
income_plot.plot(range(N), Y, lw=3)
income_plot.grid()
# label axes
plt.xlabel('time')
plt.ylabel('income')

consumption_plot = fig.add_subplot(132, xlim=(0, N), ylim=(0, np.max(Y)))
consumption_plot.plot(range(N), C, lw=3)
consumption_plot.grid()
# label axes
plt.xlabel('time')
plt.ylabel('consumption')

gov_plot = fig.add_subplot(133, xlim=(0, N), ylim=(0, np.max(Y)))
gov_plot.plot(range(N), np.repeat(G,N), lw=3)
gov_plot.grid()
# label axes
plt.xlabel('time')
plt.ylabel('government spending')

# space subplots neatly
plt.tight_layout()


These plots show income (left) and combined, overall spending (consumption, middle; government spending, right). Just looking at the income plot we see something that we haven't seen yet in any previous models: a growing economy. Income is only 20 pounds at the start but increases rapidly over the first 20 or so time steps to a value of 100 pounds per time step. After this, income remains constant and we have what looks like a steady-state economy. So something is causing income in our economy to grow, and something is causing it to stabilize at some level. Let's follow the logic of our equations and try to figure out what happened.

In the first time step there was no consumption because there was no previous spending or incomes. How could there be? There was no money to spend. But there was government spending of 20 pounds, which introduce 20 pounds of currency and provided 20 pounds of income. This income was immediately taxed to the tune of 4 pounds (20%) leaving 16 pounds of disposable income to carry over to the next time step. In the second time step this 16 pounds was spent and together with further government spending of 20 pounds became a total income of 36 pounds in our economy. This 36 pounds of income was taxed at 20% (7.20 pounds) leaving 28.80 as disposable income. In the next time step, the 28.80 pounds of disposable income left over from last time was spent providing a total income of 48.80 with the 20 pounds of government spending. 9.76 pounds of tax were paid on this income leaving 39.04 pounds of disposable income. And so on...

time step consumption government income tax take disposable income
1 0.00 20.00 20.00 4.00 16.00
2 16.00 20.00 36.00 7.20 28.80
3 28.80 20.00 48.80 9.76 39.04
4 39.04 20.00 59.04 11.81 47.23
... ... ... ... ... ...
100 80.00 20.00 100.00 20.00 80.00

Eventually,the economy settles down to a constant, steady-state income of 100 pounds per time step. Looking at the plots above, we can see that this income is made up of a constant, steady-state consumption spend of 80 pounds per time step and the 20 pounds per time step that the government spends. So during the course of our model, consumption spending rose from 0 pounds to a stable 80 pounds.

Now let's take a look at the government accounts.


In [6]:
fig = plt.figure(figsize=(8, 8))

gov_plot = fig.add_subplot(221, xlim=(0, N), ylim=(0, np.max(G)*1.5))
gov_plot.plot(range(N), np.repeat(G,N), lw=3)
gov_plot.grid()
# label axes
plt.xlabel('time')
plt.ylabel('government spending')

tax_plot = fig.add_subplot(222, xlim=(0, N), ylim=(0, np.max(G)*1.5))
tax_plot.plot(range(N), T, lw=3)
tax_plot.grid()
# label axes
plt.xlabel('time')
plt.ylabel('tax revenue')

deficit_plot = fig.add_subplot(223, xlim=(0, N), ylim=(np.min(H_g)*1.5,0))
deficit_plot.plot(range(N), T-np.repeat(G,N), lw=3)
deficit_plot.grid()
# label axes
plt.xlabel('time')
plt.ylabel('government budget')

debt_plot = fig.add_subplot(224, xlim=(0, N), ylim=(np.min(H_g)*1.5,0))
debt_plot.plot(range(N), H_g, lw=3)
debt_plot.grid()
# label axes
plt.xlabel('time')
plt.ylabel('government debt')


# space subplots neatly
plt.tight_layout()


The top left plot shows government spending, which, as we know, is simply constant throughout the duration of the model. It is an endogenous variable and that's how we set it. The top right plot shows the government's tax revenue. Since it is proportionate to income, the tax revenue was small (4 pounds) at the start when incomes were small (20 pounds) but increased as income itself grew. Eventually tax revenue stablises at 20 pounds per time step, which is 20% of the steady-state income of 100 pounds, consistent with our tax rate.

time step government spending tax revenue budget outcome government debt
1 20.00 4.00 -16.00 -16.00
2 20.00 7.20 -12.80 -28.80
3 20.00 9.76 -10.24 -39.04
4 20.00 11.81 -8.19 -47.23
... ... ... ... ...
100 20.00 20.00 0.00 -80.00

The bottom left plot shows the government budget outcome. That is the difference between spending and tax revenue. As we can see, the budget outcome is negative at the start meaning that the government has a budget deficit. This deficit is gradually reduced until the budget becomes balanced - the 20 pounds steady-state tax revenue is exactly equal to government's own spend. This budget deficit means that more money is being spent into the economy than is being taxed out of it. This is reflected in the bottom right plot which shows the government debt. The government debt increases as long as the government budget is in deficit. Once the budget is balanced, the debt no longer grows and reaches a steady-state. The eventual size of the government debt is 80 pounds, or 80% of the national income.

So what is going on here? Why do we have a growth of incomes and why does it stablize? In a sense, this model is the opposite of the model which included savings. In that model, the attempt to save on each time step meant that spending in each time step was less than in the previous time step. This caused incomes to gradually decline. In this model, the amount of spending increases in each time step, at least during the initial stages of the model run. This is because the government is adding new spending in each time step on top of the spending which is taking place anyway by virtue of the spending of incomes earned in the previous time step (the circular flow of money). And each time the government spends new money into the economy, that money is added to the amount which continues to recirculate via the process of repeated spending, and so the growth is permanent. This is reflected in the increase in consumption spending seen. The government is adding to overall spending in this way any time it has a budget deficit: in such a case spending is greater than taxation and therefore represents a net spend into the economy.

So as long as the government is in deficit, overall spending, and therefore incomes, are growing. But the deficit reduces through time in our model. This is because tax revenue is related to income: as incomes grow, so does tax revenue. With government spending constant and tax revenues growing, at some point tax revenues reach the same size as the government spending (i.e. 20 pounds). This is the point at which the government's budget is balanced and therefore the point at which the government ceases to be adding spending to the economy: what is added with spending is exactly removed with tax. At this point, with no additional net spending, the overall spending in the economy (consumption + government) remains stable, as do incomes. And with income stabilizing, so does tax revenue, so government budget stays balanced.

The fiscal multiplier

So, in this model, government spending acts as a stimulus to spending and incomes whereas taxation acts to constrain them. These two forces end up balancing at a particular level of incomes. To see how this works we can do a bit of algebra. We'll use the $^*$ notation to signify steady-state values of our variables. So at steady-state, we have the equations:

$$ \begin{array}{lcl} Y^* = C^* + G \hspace{1cm} & (6) \\ T^* = \theta Y^* \hspace{1cm} & (7) \\ Y_{d}^* = Y^* - T^* \hspace{1cm} & (8) \\ C^* = Y_{d}^* \hspace{1cm} & (9) \\ \end{array} $$

By substituting equation 7 into equation 8 we get:

$$Y_{d}^* = Y^* - \theta Y^*$$

which we can then substitue into equation 9:

$$C^* = Y^* - \theta Y^*$$

and then back into equation 6:

$$Y^* = Y^* - \theta Y^* + G$$

Rearranging this gives:

$$ Y^* = \frac {G}{\theta} \hspace{1cm} (10)$$

So the steady state income of our model is determined by the ratio of government spending to the government imposed taxation rate. Let's check this in our model. First we'll calculate the result of equation 10 using our model parameters.


In [7]:
print(G/theta)


100.0

And now we'll just inspect the last value in the income array from our model run. In Python, the last element of an array is accessed using the -1 index.


In [8]:
print(Y[-1])


99.9999999796

Well that's close enough. The final, steady-state income in our economy is equal to the rate of government spending divided by the tax rate, as described by equation 10. We can generalise this a bit more by dividing equation 10 by our government spending rate. This gives us the value of steady-state income relative to the government spending:

$$\frac{Y^*}{G} = \frac {1}{\theta}$$

So the expression $\frac {1}{\theta}$ tells us how big income will be relative to the government spend (without actually having to run the model). In our case, the left-hand side of that equation is:


In [9]:
print(Y[-1]/G)


4.99999999898

and the right-hand side is:


In [10]:
print(1/theta)


5.0

Equal, as predicted. So, incomes in our model are $5 \times$ the size of the government spend, and this would be the case whatever level of government spending we had chosen. We can call this value the fiscal multiplier and it represents the amount of economic activity which is stimulated by each pound of spending by the government. Put another way, each pound spent by the government is spent again 5 times before it ultimately returns to the government as tax revenue, supporting incomes on the way. In more complex models the fiscal multiplier doesn't necessarily take on such a simple form.

Conclusions

We postulated a currency issuing government which spends money into existence and taxes it back out of the economy. Spending was set at a fixed, absolute value per time step whereas taxation was stipulated as a fixed fraction of economy activity (income). The government spending stimulated additional spending activity in the economy and the economy grew to a size which was a multiple of the government spend. An initial budget deficit was automatically reduced and the budget was balanced without any change in government policy. The government debt reached a fixed, stable level relative to the size of the economy and represented all the money required to support spending in the economy.

There are a number of features in this model worth reflecting on. For example, because the government was the monetary sovereign, it needed to spend before any economic activity could take place. Otherwise, there was no money in existence at all. Indeed, it was even necessary for the government to spend before any tax could be paid! In this economy, therefore, government spending is not funded by tax revenues, which is the opposite what is often stated in popular rhetoric, where taxation preceeds spending. Examples of sovereign currency issuing governments are those of the US, UK, Australia and Japan. The countries of the Eurozone do not fit this description.

This model described a growing economy in the sense that aggregate incomes increased through time (before stabilizing). It's worth pointing out what this means and what it doesn't mean. When the quantity of goods and services produced during some time period, e.g. a year, increases through time we call this real economic growth. However, if the prices paid for goods and services increase, but the quantity produced and sold remains the same, this will also increase the total amount spent (and earned) in a given time period. The latter may look like economic growth but it reflects an inflation of prices rather than a change in real production. In reality, what we call economic growth usually results from some combination real growth and inflation, and this combined effect is termed nominal growth. In our model we have no concept of the real economy, all we have is a monetary economy. Therefore we cannot differentiate between real growth and nominal growth. Since our starting point was no economic activity at all then it is perhaps reasonable to consider that at least some of the growth in our model could plausibly represent a growing real economy. But in reality there are limits to how fast the production of real goods and services can increase (e.g. the availability of natural resources, energy, labour, technology). Therefore we cannot conclude from our model that simply adding spending power to the economy is a cause of economic growth. It might cause nominal growth to occur but it does not necessarily cause real growth to occur. The understand that, we need a more sphisticated model

A final point on government debt. It might seem strange to call the money issued by the government "debt". And perhaps it is (?). In more complicated models it will hopefully become clear that what we ordinarily think of as "the government debt" is quite consistent with what is happening in this model (albeit simplified). There is another sense in which government issued money can be considered akin to a debt, though. Governments impose a legally enforcable tax burden on the private sector which can usually only be neutralised in the government's own sovereign currency. By issuing currency to the private sector, the government effectively becomes indebted to the private sector: each unit of currency represents a claim on tax forgiveness to the same amount which the government must honour. In this sense, government issued money can be considered a liability of the government, or, in other words, a debt. Enough of the digression.