Gotsman--Linial: ProjectionTrace #
Adapted from OpenAI's formalization of Average Sensitivity of Polynomial Threshold
Functions (25 September 2026), at revision adc7f1241b42e322a6451854ab7e4b4c146bf78a.
Source: https://github.com/openai/math/blob/adc7f1241b42e322a6451854ab7e4b4c146bf78a/lean/OAI/Combinatorics/GotsmanLinial/ProjectionTrace.lean
The original Boolean-cube representation is used internally in this proof development;
Complexitylib.BooleanAnalysis.PolynomialThreshold transports the result to the
library's Fourier and influence API. Changes here adapt module visibility,
namespace names, formatting, and redundant simp attributes to complexitylib.
Traces of actual orthogonal projections #
The trace calculation uses the algebraic theorem for a projection onto a submodule. In particular, no spectral decomposition or matrix norm instance is needed. Matrix transport is valid in every basis, and hence in the orthonormal basis used for the weighted grading.
The actual orthogonal projection is algebraically a projection onto its specified submodule.
The trace of the actual orthogonal projection is the dimension of its range.
The matrix trace of an orthogonal projection is independent of the chosen basis.
The orthonormal matrix representation used by the grading has the correct trace.
The real trace required by Hilbert--Schmidt block-mass computations.