Timing issue in an endogenous growth model

Hi All, I’m trying to simulate a (detrended) model with endogenous growth where research will increase the stock of technology. In my model I think that the technology stock should be regarded as a stock variable with a (-1) time symbol. However, I’m not sure whether the growth rate should also be regarded as an endogenous state variable.

In fact, if I set both the technology stock and the growth rate as the state variable (given both of them a (-1) time symbol), when I run the deterministic simulation the dynare says that the Jacobian is singular, while if I only set the stock of technology to be the state variable, all things seems fine. I’m not sure why this happens, thank you!

Can you elaborate a bit more? Yesterday’s stock is of course predetermined, but today’s value is not. This means that the contemporaneous growth rate
g^x_t=\frac{x_t}{x_{t-1}} is not predetermined.

The technology used today is a stock variable, so I use A_{t-1} to represent it, and in period t the research increase the stock to A_t, which is used in period t+1.

When I try to detrend the model, I divide the growing variables by A_{t-1}, and then there occurs some growth rate like g_t = A_{t-1}/A_{t-2}, the growth of technology stock used between t-1 and t. For example, my production function is:
Y_t = K_{t-1}^a(A_{t-1}L_t)^{1-a},
and the detrended equation is
Y_t/A_{t-1} = (K_{t-1}/A_{t-2}*A_{t-2}/A_{t-1})^a L_t^{1-a}
and there exists a growth rate A_{t-1}/A_{t-2}.

Should I set this growth rate to be another state variable? Or should I change the model to detrend by dividing the variables by A_t, the technology stock at the end of period t? Thank you!

If I set the growth rate to be another state variable, say I use g_{t-1}=A_{t-1}/A_{t-2} in my Dynare code, Dynare says that the Jacobian is singular in the deterministic simulation, but if I set it as g_t = A_{t-1}/A_{t-2}, everything seems fine. Thank you!

In Dynare’s notation, A_t is determined at time t and usually that is the relevant trend. So you would define g_t=A_t/A_{t-1}, which would still have the correct information set.

So you mean that I should detrend the whole system by A_t (the technology used at t+1) but not A_{t-1} (the technology used at t)? Thanks!

The important point is not that A_t is only used at t+1 but rather that A_t is contained in the information set at time t.

In any case, it should be isomorphic whether you detrend with A_t or A_{t-1} for the purpose of stochastic simulations.

Thanks a lot for your kind answer! I tried to define g_t=A_t/A_{t-1} and detrend my model with A_{t-1}. The problem is that now my model include another state variable g_{t-1}=A_{t-1}/A_{t-2} as I have shown before with the production function, and Dynare tells me that the Jacobian is sigular for perfect foresight simulation. My dynare code is as follows where gdt in the code correspond to g_t=A_t/A_{t-1}. I am not sure why this happens, thank you!

mode_check_bothstate.mod (7.4 KB)

  1. The check command tells you that the model is explosive:
There are 13 eigenvalue(s) larger than 1 in modulus for 12 forward-looking variable(s)
The rank condition ISN'T verified!
  1. For perfect foresight simulations, the introduction of additional auxiliary state variables may not be isomorphic. In that case I would stick to detrending with time t variables with A_t.

Thanks a lot! I will try it.

I have a following question. There are two technology processes in my model, one exogenous and one endogenous, and a_t denotes the ratio between these two technology processes. I tried to detrend the model with the exogenous technology process in my model and rewrite the mod file. Now there seems to be a new problem.

mode_check.mod (10.2 KB)

If I write the equation (21) in the mod file as:
at/exp(g) = at(+1)/exp(gdt(+1));
the prefect foresight solver can run but the results are rather strange. But if I write this equation as:
at(-1)/\exp(g)=at/\exp(gdt);
the perfect foresight solver fails and Dynare says that the Jacobian is singular and the rank condition isn’t varified. I am not sure why this happens since it seems to me that the two equations are isomorphic. Thank you!

No, they are not isomorphic due to different information sets involved. The first equation implies you need a terminal condition for gdt, while the second one means you need an initial condition for at.

But I think that I have both given the initial and terminal conditions for gdt and at in my mod file?

I am saying the two specifications are clearly not equivalent and only one can be correct.

I think I understand why these two specifications are different, thank you! But I think that the second specification at(-1)/\exp(g)=at/\exp(gdt) is more likely to be correct, since in my model a is a state variable thus backward-looking. However, with this specification the Dynare tells me that Jacobian is singular and rank condition isn’t verified, and I don’t know why. I have tried to reduce the shock size but it doesn’t help.

Can you please explain how the timing of the original equation was and how exactly you detrended to end up with the mentioned equations.

In my model there are two technologies, the exogenous foreign technology A_t (which has a constant growth rate g) and endogenous domestic technology A_{dt}, a_t=A_{dt}/A_t denotes the technology gap between the two. I assume that A_{dt} is a state variable, so a_t is a state variable in the detrened model. By definition I have
\exp(g)=A_t/A_{t-1} = \frac{A_t/A_{dt}}{A_{t-1}/A_{dt-1}}\frac{A_{dt}}{A_{dt-1}}=a_{t-1}/a_t*\exp(g_{dt})
What’s more, I can also lag the above equation by one period and write it as
\exp(g)=a_t/a_{t+1}*\exp(gdt(+1))
That’s how I detrend and get the equation I mentioned above, thank you!

Leading the above equation is not allowed. Also note that A_t/A_{dt} cannot be a state if A_t is is today’s information set.

Thanks! I will try another way to write the code.