diff --git a/src/StaticModel.cc b/src/StaticModel.cc
index 3d076140b2d5cc54be521a526df06303e920130d..10332fad9695ce99ed93f9ee351dde96cbf44b59 100644
--- a/src/StaticModel.cc
+++ b/src/StaticModel.cc
@@ -697,9 +697,8 @@ StaticModel::computeChainRuleJacobian()
           for (const auto &[indices, d1] : blocks_derivatives[blk])
             {
               auto &[eq, var, lag] { indices };
-              assert(lag == 0);
-              if (eq >= nb_recursives && var >= nb_recursives)
-                blocks_jacobian_sparse_column_major_order[blk].try_emplace({eq-nb_recursives, var-nb_recursives}, d1);
+              assert(eq >= nb_recursives && var >= nb_recursives && lag == 0);
+              blocks_jacobian_sparse_column_major_order[blk].try_emplace({eq-nb_recursives, var-nb_recursives}, d1);
             }
           blocks_jacobian_sparse_colptr[blk] = computeCSCColPtr(blocks_jacobian_sparse_column_major_order[blk], blocks[blk].mfs_size);
         }