Itô isometry
Term in stochastic calculus
title: "Itô isometry" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["stochastic-calculus"] description: "Term in stochastic calculus" topic_path: "science/mathematics" source: "https://en.wikipedia.org/wiki/Itô_isometry" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0
::summary Term in stochastic calculus ::
In mathematics, the Itô isometry, named after Kiyoshi Itô, is a crucial fact about Itô stochastic integrals. One of its main applications is to enable the computation of variances for random variables that are given as Itô integrals.
Let W : [0, T] \times \Omega \to \mathbb{R} denote the canonical real-valued Wiener process defined up to time T 0, and let X : [0, T] \times \Omega \to \mathbb{R} be a stochastic process that is adapted to the natural filtration \mathcal{F}_{*}^{W} of the Wiener process. Then
:\operatorname{E} \left[ \left( \int_0^T X_t , \mathrm{d} W_t \right)^2 \right] = \operatorname{E} \left[ \int_0^T X_t^2 , \mathrm{d} t \right],
where \operatorname{E} denotes expectation with respect to classical Wiener measure.
In other words, the Itô integral, as a function from the space L^2_{\mathrm{ad}} ([0,T] \times \Omega) of square-integrable adapted processes to the space L^2 (\Omega) of square-integrable random variables, is an isometry of normed vector spaces with respect to the norms induced by the inner products
: \begin{align} ( X, Y ){L^2{\mathrm{ad}} ([0,T] \times \Omega)} & := \operatorname{E} \left( \int_0^T X_t , Y_t , \mathrm{d} t \right) \end{align}
and
:( A, B ){L^2 (\Omega)} := \operatorname{E} ( A B ) . As a consequence, the Itô integral respects these inner products as well, i.e. we can write :\operatorname{E} \left[ \left( \int_0^T X_t , \mathrm{d} W_t \right) \left( \int_0^T Y_t , \mathrm{d} W_t \right) \right] = \operatorname{E} \left[ \int_0^T X_t Y_t , \mathrm{d} t \right] for X, Y \in L^2{\mathrm{ad}} ([0,T] \times \Omega) .
Numerical Simulation
The Itô isometry can be illustrated through numerical simulation using Monte Carlo methods. Such simulations help verify the theoretical relationship between the expected value of squared stochastic integrals and the expected value of integrated squared processes. A typical Monte Carlo experiment involves generating numerous sample paths of Brownian motion and computing both sides of the isometry equation for different choices of the integrand process X_t. The simulation approximates the continuous-time stochastic integral using a discrete-time summation:
\int_0^T X_t , dW_t \approx \sum_{i=0}^{N-1} X_{t_i} \Delta W_i
where \Delta W_i = W_{t_{i+1}} - W_{t_i} represents the Brownian increments over small time intervals. The isometry can be demonstrated using various processes X_t on the interval [0,1]:
- Constant process: X_t = 1
- Analytical value: \mathbb{E}[\int_0^1 1^2 , dt] = 1,
- Linear deterministic process: X_t = t
- Analytical value: \mathbb{E}[\int_0^1 t^2 , dt] = \frac{1}{3},
- Trigonometric deterministic process: X_t = \sin(\pi t)
- Analytical value: \mathbb{E}[\int_0^1 \sin^2(\pi t) , dt] = \frac{1}{2},
- Path-dependent stochastic process: X_t = W_t
- Analytical value: \mathbb{E}[\int_0^1 W_t^2 , dt] = \frac{1}{2},
- Compensated Poisson (M_t = N_t - \lambda t): X_t = 1
- Analytical value: \lambda \int_0^T 1^2 dt = \lambda T. ::code[lang=python3]
============================================================
Convergence test for five processes
– 4 Brownian‑based Itô integrals
– 1 compensated‑Poisson martingale integral
Output:
• nicely formatted error table
• log–log convergence plot
– each Brownian curve in its own colour
– Poisson curve orange & dashed
============================================================
import numpy as np import pandas as pd import matplotlib.pyplot as plt from IPython.display import display
np.random.seed(42) # reproducible demo
---------------------- global settings ---------------------
T = 1.0 # horizon lam = 3.0 # Poisson intensity λ M_paths = 20_000 # Monte‑Carlo paths N_list = [50, 100, 200, 500, 1000, 2000, 5000] # mesh refinements
dataframe to hold absolute errors
index = pd.Index(N_list, name="N") err_table = pd.DataFrame(index=index, columns=["1", "t", "sin(πt)", "W_t", "Poisson‑1"])
-------------------- main simulation loop ------------------
for N in N_list: dt = T / N sqrt_dt = np.sqrt(dt) t_left = np.linspace(0.0, T, N + 1)[:-1] # left endpoints (length N)
# --- Brownian increments & paths ------------------------
dW = np.random.normal(0.0, sqrt_dt, size=(M_paths, N))
W = np.zeros((M_paths, N + 1))
W[:, 1:] = np.cumsum(dW, axis=1)
# --- Compensated Poisson increments --------------------
dN = np.random.poisson(lam * dt, size=(M_paths, N))
dM = dN - lam * dt
# helper for deterministic X_t
lhs_det = lambda X_grid, inc: np.mean((inc * X_grid).sum(axis=1) ** 2)
# 1) X_t ≡ 1 with Brownian integrator
X1 = np.ones_like(t_left)
err_table.loc[N, "1"] = abs(lhs_det(X1, dW) - T)
# 2) X_t = t
Xt = t_left
err_table.loc[N, "t"] = abs(lhs_det(Xt, dW) - T**3 / 3)
# 3) X_t = sin(π t)
Xs = np.sin(np.pi * t_left)
err_table.loc[N, "sin(πt)"] = abs(lhs_det(Xs, dW) - 0.5 * T)
# 4) X_t = W_t (path‑dependent)
lhs_W = np.mean((W[:, :-1] * dW).sum(axis=1) ** 2)
err_table.loc[N, "W_t"] = abs(lhs_W - T**2 / 2)
# 5) compensated Poisson with X_t ≡ 1
err_table.loc[N, "Poisson‑1"] = abs(lhs_det(X1, dM) - lam * T)
---------------------- show table --------------------------
display( err_table.style.format("{:.3e}").set_caption( "Absolute error of isometry vs N (5 processes)" ) )
---------------------- plotting ----------------------------
colour_map = { "1": "tab:blue", "t": "tab:green", "sin(πt)": "tab:red", "W_t": "tab:purple", "Poisson‑1": "tab:orange", } markers = {"1": "o", "t": "s", "sin(πt)": "D", "W_t": "^", "Poisson‑1": "v"} styles = {"1": "-", "t": "-", "sin(πt)": "-", "W_t": "-", "Poisson‑1": "--"}
plt.figure(figsize=(7, 5)) for col in err_table.columns: plt.plot( N_list, err_table[col], marker=markers[col], linestyle=styles[col], color=colour_map[col], label=col, )
plt.xscale("log") plt.yscale("log") plt.xlabel("time‑step count $N$ (log scale)") plt.ylabel("absolute error (log scale)") plt.title( "Convergence of isometry error vs $N$\n" "(4 Brownian processes, 1 compensated‑Poisson process)" ) plt.grid(True, which="both", ls=":") plt.legend() plt.tight_layout() plt.show() ::
::data[format=table title="Absolute error of isometry vs N (5 processes)"]
| N | 1 | t | sin(πt) | W**t | Poisson-1 |
|---|---|---|---|---|---|
| 50 | 3.202e-03 | 5.356e-03 | 3.551e-03 | 1.497e-05 | 3.625e-02 |
| 100 | 9.887e-03 | 3.152e-03 | 7.880e-03 | 8.480e-03 | 4.595e-02 |
| 200 | 1.290e-02 | 6.827e-03 | 3.569e-03 | 6.790e-03 | 2.950e-02 |
| 500 | 3.515e-03 | 3.692e-04 | 5.956e-03 | 6.902e-03 | 1.780e-02 |
| 1000 | 5.203e-03 | 5.764e-03 | 2.894e-04 | 2.334e-03 | 3.605e-02 |
| 2000 | 8.342e-03 | 4.412e-03 | 2.358e-03 | 1.208e-02 | 3.330e-02 |
| 5000 | 5.890e-03 | 1.908e-03 | 6.048e-03 | 1.243e-02 | 8.335e-02 |
| :: |
A Monte Carlo simulation with 20,000 sample paths and 1,000 time steps produces results that closely match the theoretical values predicted by the Itô isometry. As shown in the table above, the absolute errors between the simulated left-hand side \mathbb{E}[(\int X_t , dW_t)^2] and the analytical right-hand side \mathbb{E}[\int X_t^2 , dt] are typically on the order of 10^{-3} or smaller, confirming the validity of the isometry relationship.
These simulations serve as empirical evidence for the Itô isometry and provide insight into how the relationship holds across different types of processes, both deterministic and stochastic. The close agreement between theoretical and simulated values demonstrates the robustness of the isometry as a fundamental property of stochastic calculus.
Generalization to Martingales
The Itô isometry extends beyond the standard Wiener process to a broader class of stochastic processes, particularly martingales, providing a powerful framework for computing variances of stochastic integrals. A stochastic process {X_t}_{t \geq 0} is a martingale with respect to the filtration {\mathcal{F}t}{t \geq 0} if:
- \mathbb{E}[X_t|\mathcal{F}_s] = X_s for all t \geq s
Martingales can be further classified as:
- L^1 martingales if \mathbb{E}[|X_t|] for all t
- L^2 martingales if \mathbb{E}[|X_t|^2] for all t (and by implication, also L^1)
A local martingale is a process {X_t} for which there exists a sequence of stopping times {\tau_n} with \tau_n \rightarrow \infty such that {X_{t \wedge \tau_n}} is a martingale for each n.
The Itô Isometry for Martingales
The Itô integral is defined for a broader class of integrators beyond Brownian motion. For a predictable process X_t and an appropriate integrator Y_t, the Itô integral is defined as the limit in L^2 of simple predictable processes approximating X_t:
:\int_0^t X_s , dY_s = \lim_{n \to \infty} \sum_{i=1}^{n-1} \xi_i(Y_{t_{i+1}} - Y_{t_i})
where each \xi_i is \mathcal{F}_{t_i}-measurable.
The Itô isometry holds when the integrator Y_t is one of:
- An L^1 martingale
- An L^2 martingale
- A local L^1 or L^2 martingale
For these cases, the isometry takes the form:
:\mathbb{E}\left[\left(\int_0^T X_s , dY_s\right)^2\right] = \mathbb{E}\left[\int_0^T X_s^2 , d[Y]_s\right]
where [Y]_s denotes the quadratic variation process of Y_s.
References
::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::