diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc
index e5817e57db71473e95dfe5005401afa7f1497052..e727b76fdc719c071e6589011e60d9f73909562f 100644
--- a/src/DynamicModel.cc
+++ b/src/DynamicModel.cc
@@ -5250,6 +5250,10 @@ DynamicModel::substituteExpectation(bool partial_information_model)
 void
 DynamicModel::transformPredeterminedVariables()
 {
+  for (map<int, expr_t>::iterator it = local_variables_table.begin();
+       it != local_variables_table.end(); it++)
+    it->second = it->second->decreaseLeadsLagsPredeterminedVariables();
+
   for (int i = 0; i < (int) equations.size(); i++)
     {
       BinaryOpNode *substeq = dynamic_cast<BinaryOpNode *>(equations[i]->decreaseLeadsLagsPredeterminedVariables());