arrow_backBack to research feed
visionPublished: July 14, 2026

The Seriality Gap in Video Diffusion Models

By Jorge Diaz Chao, Konpat Preechakul, Yuxi Liu, Yutong Bai

Research TL;DR

"Video diffusion models fail on tasks requiring serial reasoning (e.g., multi-ball bounces) because denoising steps do not add serial compute; use autoregressive generation or deeper backbones to improve."

Abstract

When one ball strikes another, then another, video models should predict the consequences of each bounce. In controlled experiments on multi-ball hard-sphere dynamics, we find that the performance of standard bidirectional video diffusion degrades as the causal chain lengthens, even when provided more denoising steps. In a length-matched single-ball control, where ball-ball interactions are absent, the degradation largely disappears, isolating dependent-event structure rather than video length as the cause. Across intervention studies, methods that increase effective serial computation improve performance disproportionately, including autoregressive/blockwise generation and architectural depth. We identify this pattern as the seriality gap: a mismatch between tasks requiring growing serial computation and video diffusion models whose denoising loop does not provide scalable serial compute. We then prove that, for deterministic video prediction, denoising steps do not add serial computation beyond the backbone, indicating a structural obstacle for video diffusion on serial reasoning and simulation tasks.

Technical Analysis & Implementation

Overview§

The paper identifies a fundamental limitation of standard bidirectional video diffusion models: they perform poorly on tasks requiring sequential causal reasoning. Using multi-ball hard-sphere dynamics as a controlled testbed, the authors show that performance degrades with longer causal chains, even with more denoising steps. This degradation is not due to video length per se (single-ball control shows minimal degradation) but to the requirement for serial computation over dependent events.

Methodology§

Experiments use a physics simulation of 2D bouncing balls. Input: initial positions/velocities; output: future frames. Key conditions:

  • Multi-ball: balls interact via collisions, creating causal chains (e.g., ball A hits B, then B hits C).
  • Single-ball: no interactions, same video length control.

Models: standard bidirectional video diffusion (e.g., from Ho et al.). The denoising process is a reverse Markov chain with $T$ steps, each using a shared U-Net backbone. The authors measure pixel MSE and perceptual metrics.

Key Results§

  • Performance on multi-ball tasks degrades as the number of balls (causal chain length) increases, while single-ball performance stays flat.
  • Increasing denoising steps (e.g., from 100 to 1000) does not help multi-ball performance, confirming that serial compute does not scale with $T$.
  • Interventions that increase effective serial computation improve results:
  • Autoregressive/blockwise generation (generate frames sequentially, conditioning on previous outputs).
  • Deeper backbones (more layers per denoising step).

Theoretical Analysis§

The authors prove that for deterministic video prediction, the denoising process is equivalent to a single function evaluation of the backbone plus a linear mapping. Specifically, the reverse step $x_{t-1} = f(x_t, t)$ can be reparameterized so that the final prediction $x_0$ is a deterministic function of $x_T$ and the backbone, with no extra serial computation across $t$. Formally:

$$x_0 = \text{Backbone}(x_T, t=0)$$

Thus, adding denoising steps does not increase the serial depth of the computation; only architectural depth (number of backbone layers) or temporal autoregression can provide the needed serial reasoning.

Implementation Code Snippet§

Below is a simplified PyTorch-like illustration of the diffusion forward and reverse processes highlighting the lack of serial compute scaling.

import torch
import torch.nn as nn

class SimpleDiffusion(nn.Module):
    def __init__(self, backbone):
        super().__init__()
        self.backbone = backbone  # e.g., U-Net

    def forward(self, x_T, T):
        # Standard reverse: single-step denoising (deterministic)
        x = x_T
        for t in reversed(range(T)):
            # Each step uses same backbone with time embedding
            x = self.backbone(x, t)
        return x

However, the paper shows that this loop does not add seriality: the final output is equivalent to a single backbone call. To add serial computation, use autoregressive generation:

def autoreg_generate(model, init_frames, num_frames):
    frames = []
    context = init_frames
    for _ in range(num_frames):
        next_frame = model.denoise(context)  # conditioned on past
        frames.append(next_frame)
        context = torch.cat([context, next_frame], dim=1)
    return frames

Conclusions§

Practitioners should avoid relying solely on increasing denoising steps for tasks requiring causal reasoning. Instead, adopt autoregressive decoding or deeper architectures to provide the necessary serial computation. The "seriality gap" is a structural limitation of current video diffusion models, opening avenues for new architectures that interleave diffusion with explicit sequential processing.

SHARE RESEARCH: