Introduction
DecomposingGroupRepresentations.jl is a Julia package that provides an API for decomposing representations of reductive groups acting on multivariate polynomials using DynamicPolynomials.jl.
Quick start
julia> using DecomposingGroupRepresentationsjulia> @polyvar x y z(x, y, z)julia> vars = [x, y, z]3-element Vector{Variable{Commutative{CreationOrder}, Graded{LexOrder}}}: x y zjulia> SO3 = LieGroup("SO", 3)LieGroup SO(3) number type (or field): ComplexF64 weight type: Int64 Lie algebra properties: dimension: 3 rank (dimension of Cartan subalgebra): 1julia> a = MatrixGroupAction(SO3, [vars])MatrixGroupAction of SO(3) 1 vectors under action: [x, y, z]julia> V = FixedDegreePolynomials(vars, 2)FixedDegreePolynomials space of dimension 6 variables: x, y, z degree: 2julia> ρ = GroupRepresentation(a, V)GroupRepresentation of SO(3) on 6-dimensional vector space Lie group: SO(3)julia> irrs = IrreducibleDecomposition(ρ)IrreducibleDecomposition of SO(3)-action on 6-dimensional vector space number of irreducibles: 2 dimensions of irreducibles: 1, 5julia> [highest_weight(irr) for irr in irreducibles(irrs)]2-element Vector{Weight{Int64}}: Weight: [0] Weight: [2]julia> [vector(hw_vector(irr)) for irr in irreducibles(irrs)]2-element Vector{Polynomial{Commutative{CreationOrder}, Graded{LexOrder}, ComplexF64}}: z² + y² + x² -y² + (0.0 + 2.0im)xy + x²julia> iso = IsotypicDecomposition(ρ)IsotypicDecomposition of SO(3)-action on 6-dimensional vector space number of isotypic components: 2 multiplicities of irreducibles: 1, 1 dimensions of irreducibles: 1, 5 dimensions of isotypic components: 1, 5julia> basis(iso[Weight([0])]) # invariant1-element Vector{Polynomial{Commutative{CreationOrder}, Graded{LexOrder}, ComplexF64}}: z² + y² + x²julia> H₂ = basis(iso[Weight([2])]) # spherical harmonics5-element Vector{Polynomial{Commutative{CreationOrder}, Graded{LexOrder}, ComplexF64}}: -y² + (0.0 + 2.0im)xy + x² (0.0 + 1.0im)yz + xz (2.0 + 0.0im)z² + -y² + -x² (0.0 + 1.0im)yz + -xz -y² + (-0.0 - 2.0im)xy + x²julia> rref(H₂)Computing rref, merging monomials... Monomials merged Constructing coefficients matrix... Coefficients matrix constructed RREF computed 5-element Vector{Polynomial{Commutative{CreationOrder}, Graded{LexOrder}, ComplexF64}}: z² + -x² yz y² + -x² xz xy