Group representations

GroupRepresentation

DecomposingGroupRepresentations.GroupRepresentationType
GroupRepresentation <: AbstractGroupRepresentation

Represents a group representation. Consists of a group action and a vector space.

Constructors

GroupRepresentation(a::AbstractGroupAction, V::AbstractSpace)

Examples

julia> @polyvar x[1:3];

julia> SO3 = LieGroup("SO", 3);

julia> a = MatrixGroupAction(SO3, [x]);

julia> V = FixedDegreePolynomials(x, 2);

julia> ρ = GroupRepresentation(a, V)
GroupRepresentation of SO(3) on 6-dimensional vector space
 Lie group: SO(3)

julia> dim(ρ)
6

julia> group(ρ)
LieGroup SO(3)
 number type (or field): ComplexF64
 weight type: Int64
 Lie algebra properties:
  dimension: 3
  rank (dimension of Cartan subalgebra): 1
source

IrreducibleRepresentation

DecomposingGroupRepresentations.IrreducibleRepresentationType
IrreducibleRepresentation <: AbstractGroupRepresentation

Represents an irreducible group representation.

Examples

julia> @polyvar x y z;

julia> vars = [x, y, z];

julia> SO3 = LieGroup("SO", 3);

julia> a = MatrixGroupAction(SO3, [vars]);

julia> V = FixedDegreePolynomials(vars, 2);

julia> ρ = GroupRepresentation(a, V);

julia> irr_decomp = irreducibles(ρ)
IrreducibleDecomposition of SO(3)-action on 6-dimensional vector space
 number of irreducibles: 2
 dimensions of irreducibles: 1, 5

julia> irr_decomp[2]
IrreducibleRepresentation of dimension 5
 Lie group: SO(3)
 highest weight: [2]

julia> space(irr_decomp[2])
HighestWeightModule of dimension 5
 Lie group: SO(3)
 highest weight: [2]

julia> basis(space(irr_decomp[2]))
5-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²
source

IsotypicComponent

DecomposingGroupRepresentations.IsotypicComponentType
IsotypicComponent <: AbstractGroupRepresentation

Represents an isotypic component of a group representation, i.e. a direct sum of isomorphic irreducible representations.

Examples

julia> @polyvar x[1:3] y[1:3];

julia> SO3 = LieGroup("SO", 3);

julia> a₁ = MatrixGroupAction(SO3, [x, y]);

julia> a₂ = ScalingLieGroupAction(vcat(x, y));

julia> a = a₁ × a₂;

julia> V = FixedDegreePolynomials(vcat(x, y), 2);

julia> ρ = GroupRepresentation(a, V)
GroupRepresentation of SO(3) × ℂˣ on 21-dimensional vector space
 Lie group: SO(3) × ℂˣ

julia> iso_decomp = isotypics(ρ)
IsotypicDecomposition of SO(3) × ℂˣ-action on 21-dimensional vector space
 number of isotypic components: 3
 multiplicities of irreducibles: 3, 3, 1
 dimensions of irreducibles: 1, 5, 3
 dimensions of isotypic components: 3, 15, 3

julia> iso = isotypics(iso_decomp)
3-element Vector{IsotypicComponent}:
 IsotypicComponent with (dim, mul) = (3, 3)
 IsotypicComponent with (dim, mul) = (15, 3)
 IsotypicComponent with (dim, mul) = (3, 1)

julia> iso[1]
IsotypicComponent of dimension 3, multiplicity 3
 Lie group: SO(3) × ℂˣ
 highest weight: [0, 2]
 dimension of irreducible subrepresentation: 1
 multiplicity of irreducible subrepresentation: 3

julia> space(iso[1])
DirectSum of dimension 3
 nsummands: 3
 dimensions of summands: 1, 1, 1

julia> basis(iso[1])
3-element Vector{Polynomial{Commutative{CreationOrder}, Graded{LexOrder}, ComplexF64}}:
 x₃² + x₂² + x₁²
 y₃² + y₂² + y₁²
 -x₃y₃ + -x₂y₂ + -x₁y₁
source