feynlag.suggest.reynolds_project¶
- feynlag.suggest.reynolds_project(expr, discrete_groups)[source]¶
Project
expronto the joint discrete-invariant subspace.P(m) = (1/|G|) Σ_{g∈G} g·mfor each declared discrete group, applied in turn (the composition of the per-group Reynolds operators projects onto the intersection of invariant subspaces when the group actions commute, which holds for independently-declared symmetries; the caller’s oracle check re-verifies invariance regardless). Returns the (possibly zero) invariant combination.For a
Z_N-charged monomial this reduces automatically to the usual “total charge ≡ 0 (mod N)” filter — the average is eithermitself (neutral) or0(charged). ForS3it produces the genuine invariant linear combinations that no single monomial realizes alone.