Stiefel Manifold Integration

IntU supports integration over the Stiefel manifold $V_k(\mathbb{C}^d)$, denoted as $V(k, d)$ or $St(k, d)$. This manifold consists of all $d \times k$ matrices $V$ with orthonormal columns, i.e., satisfying the condition:

\[V^\dagger V = I_k\]

where $I_k$ is the $k \times k$ identity matrix.

Mathematical Definition

The uniform measure on the Stiefel manifold is induced by the Haar measure on the unitary group $U(d)$. Specifically, a random matrix $V \in V_k(\mathbb{C}^d)$ can be constructed by taking the first $k$ columns of a Haar-random unitary matrix $U \in U(d)$.

This implies that for any polynomial function $f(V)$, the integral over the Stiefel manifold is equivalent to:

\[\int_{V_k(\mathbb{C}^d)} f(V) dV = \int_{U(d)} f(U_{1..d, 1..k}) dU\]

When $k=1$, the Stiefel manifold corresponds to the set of unit vectors in $\mathbb{C}^d$, and the measure reduces to the Fubini-Study measure on pure quantum states $|\psi\rangle$.

Usage

To perform integration over the Stiefel manifold, use the dStiefel(d, k) measure.

  1. Basic Integration using @integrate

The @integrate macro automatically identifies V as the random Stiefel matrix.

using IntU, Symbolics
@variables d
# Integration over V_2(C^d)
@integrate abs(V[1, 1])^2 dStiefel(d, 2)
# Output: 1/d
  1. Manual Integration
using IntU, Symbolics

@variables d
V = SymbolicMatrix(:V, :U)
# Integration over V_2(C^d)
integrate(abs(V[1, 1])^2, dStiefel(d, 2))

The system automatically handles the mapping to the unitary group and applies Weingarten calculus.

Asymptotic Expansions

Large-$d$ expansions are fully supported:

using IntU, Symbolics
@variables d
V = SymbolicMatrix(:V, :U)
measure = dStiefel(d, 2)
expr = abs(V[1, 1])^2 * abs(V[1, 2])^2
asymptotic(expr, measure, 2)
(1 / d)^2

API Reference

IntU.StiefelMeasureType
StiefelMeasure(dim, k)

Internal type representing the measure on the Stiefel manifold. Users should use dStiefel constructors.

IntU.dStiefelFunction
dStiefel(dim, k)
dStiefel(V::SymbolicMatrix, k)

Defines the measure for integration over the Stiefel manifold $V_k(\mathbb{C}^d)$. This manifold represents the set of $d \times k$ matrices with orthonormal columns.

The integration is performed by mapping $V$ to the first $k$ columns of a Haar-random unitary matrix $U(d)$. If called with dim, it integrates entries tagged with :U via SymbolicMatrix(:V, :U).

Reference:

  • Edelman, A., Arias, T. A., & Smith, S. T. (1998). The geometry of algorithms with orthogonality constraints.