diff --git a/preprocessor/DynamicModel.cc b/preprocessor/DynamicModel.cc
index 2f1147cbbbd2cb1c9d1a7e92287fd21d63ee7d63..c7be5ba0a34a4c0e6e683e5d73b7061ff15d6c45 100644
--- a/preprocessor/DynamicModel.cc
+++ b/preprocessor/DynamicModel.cc
@@ -4593,6 +4593,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());