Government debt in OLG models

Hello all,
I’m struggling to include government debt in a simple, two-period OLG model. A standard equation like Debt = Gov.spendings - Tax income + Debt(-1)*(1+r) was my first thought. That, however, gives me some quite bizarre results (like increased government spendings reduces debt).

It seems like it’s probably not a good idea, steady state-wise, to include last period’s debt in an expression for this period’s debt. But it’s obviously relevant. So how do I get around this?

What I want to do is be able to evaluate different paths for government debt, say, keeping taxes and government spendings constant (and see how debt grows with interest). Is that doable in Dynare?


Your debt equation seems standard. If you get weird results, there is most probably still something else wrong. If increase spending increases debt, I would check whether positive debt actually means savings in your model or is really borrowing.

The type of experiment you envision is hard to implement. Basically, you want to shut off the transversality constraint and watch debt explode. This is hard to do with forward-looking variables, because you would need to specify a terminal value in this case, but this is not known as the system will not converge back to steady state. Maybe the differentiate_forward_vars option would help.

Thanks a lot for your answer. I tried to use the differentiate_forward_vars command, and looking at the auxiliary variable, I guess it makes some sense. When I increase the exogenous government spendings, the debt variable decreases, which is weird, but the new variable AUX_ENDO_LAG_1_1 moves in the right direction.

If you have the time, I’d be very grateful if you took a look at my mod-file to see if there’s anything that can be done to make this debt make a bit more sense.

PS: The taxrate is 0 so far, and I have just slightly increased the government spendings in the endval block, from 0 to 0.8.
olg2endo.mod (1.47 KB)

Shouldn’t debt be predetermined as well?