Dynare's solution of DSGE models and Blanchard Kahn Conditions

Hi everyone,

I am just trying to understand the bigger picture how Dynare solves DSGE models and then checks for the uniqueness of the equilibrium.

Having read this Dynare article, is my following understanding correct:

  1. Dynare makes use of the implicit function theorem (derivatives) and computes the approximation of the policy functions via a Taylor series expansion. The Blanchard Kahn (BK) conditions are then checked/verified via the structural state space of the non-static endogenous variables. Is this correct?

  2. At first order, and due to certainty equivalence, instead of using a perturbation approach I could have linearized the model and written it into a state space form and then performed the necessary decompositions to obtain the solution of the model. From there we can check the the BK conditions. Hence, at first order, both approaches should yield the same outcome, correct?

  3. My last question is, when we input the linearized model equations and solve the model with order = 1, wouldn’t we doing the same thing twice, i.e. linearizing already linearized equations?

Many thanks for your help.



  1. Yes, that is the standard perturbation approach. In addition, the rank condition is checked as well (for the static ones)
  2. Yes, what you describe is first order perturbation.
  3. The linearization of a linear equation is the linear equation. So that step is (partly) redundant, but does no harm. After all, the derivatives of the linear equation define the coefficient matrices you need for the solution.

Thanks Johannes, just one last question regarding 2), which I don’t fully understand. Where is the perturbation part here, i.e. where does the IF theorem and the Taylor approximation show up? To me, we just perform matrix operations to obtain the solution.

In terms of how you would formally set up the problem, things look indeed different. But the perturbation part at first order is mostly about approximation the equilibrium conditions of the model with a first order Taylor approximation (the outer derivative part). That is the part you would do manually when doing a linearization. Once you have obtained those outer derivatives, the problem of solving the model is the same with perturbation and the “manual linearization”: solving a quadratic matrix equation to get the decision rules.