Classes/characters of reflection groups
Chevie.CharsChevie.Chars.CharTableChevie.Chars.J_induction_tableChevie.Chars.charinfoChevie.Chars.charnamesChevie.Chars.classinfoChevie.Chars.classnamesChevie.Chars.conjPermChevie.Chars.decomposeChevie.Chars.detPermChevie.Chars.fakedegreesChevie.Chars.induction_tableChevie.Chars.j_induction_tableChevie.Chars.on_charsChevie.Chars.representationChevie.Chars.representationsChevie.Chars.scalar_productChevie.Chars.schur_functorChevie.Symbols.fakedegree
Chevie.Chars — Module
Characters and conjugacy classes of complex reflection groups.
The CharTable of a finite complex reflection group W is computed using the decomposition of W in irreducible groups, see refltype. For an irreducible group the character table is either computed using recursive formulas for the infinite series, or read from a library file for the exceptional types. Thus, character tables can be obtained quickly even for very large groups like W(E₈) or $𝔖₁₅$. Similar remarks apply for conjugacy classes.
The conjugacy classes and irreducible characters of irreducible finite complex reflection groups are labelled by certain combinatorial objects; these labels are shown in the tables we give. For the classes, these are partitions or partition tuples for the infinite series, or, for exceptional Coxeter groups, Carter's admissible diagrams (Carter, 1972); for other primitive complex reflection groups we just use words in the generators to specify representatives of the classes. For the characters, these labels are again partitions or partition tuples for the infinite series, and for the exceptional groups they are pairs of two integers (d,b) where d is the degree of the character and b is the smallest symmetric power of the reflection representation containing the character as a constituent (the valuation of the fakedegree); further a ' or '' may be added to disambiguate pairs with the same (d,b). These labels are shown by the functions classinfo and charinfo. Displaying the character table also shows the labelings for classes and characters.
A typical example is coxgroup(:A,n), the symmetric group $𝔖ₙ₊₁$ where classes and characters are parameterized by partitions of n+1 (the same table is shown for coxsym(n+1)).
julia> CharTable(coxgroup(:A,3))
CharTable(A₃)
┌───────────┬─────────────────┐
│centralizer│ 24 4 8 3 4│
│order │ 1 2 2 3 4│
├───────────┼─────────────────┤
│ │1111 211 22 31 4│
├───────────┼─────────────────┤
│1111 │ 1 -1 1 1 -1│
│211 │ 3 -1 -1 . 1│
│22 │ 2 . 2 -1 .│
│31 │ 3 1 -1 . -1│
│4 │ 1 1 1 1 1│
└───────────┴─────────────────┘
julia> ct=CharTable(coxgroup(:G,2))
CharTable(G₂)
┌───────────┬────────────────────┐
│centralizer│12 4 4 6 6 12│
│order │ 1 2 2 6 3 2│
├───────────┼────────────────────┤
│ │A₀ Ã₁ A₁ G₂ A₂ A₁+Ã₁│
├───────────┼────────────────────┤
│φ₁‚₀ │ 1 1 1 1 1 1│
│φ₁‚₆ │ 1 -1 -1 1 1 1│
│φ′₁‚₃ │ 1 1 -1 -1 1 -1│
│φ″₁‚₃ │ 1 -1 1 -1 1 -1│
│φ₂‚₁ │ 2 . . 1 -1 -2│
│φ₂‚₂ │ 2 . . -1 -1 2│
└───────────┴────────────────────┘
julia> charnames(ct,TeX=true)
6-element Vector{String}:
"\phi_{1,0}"
"\phi_{1,6}"
"\phi_{1,3}'"
"\phi_{1,3}''"
"\phi_{2,1}"
"\phi_{2,2}"
julia> classnames(ct,TeX=true)
6-element Vector{String}:
"A_0"
"\tilde A_1"
"A_1"
"G_2"
"A_2"
"A_1+\tilde A_1"Reflection groups have fakedegrees](@ref), whose valuation and degree give two invariants b,B for each irreducible character of W. For spetsial groups (which include finite Coxeter groups), the valuation and degree of the generic degrees of the spetsial Hecke algebra give two more invariants a,A; for Coxeter groups see (Carter, 1985; chap.11) for more details. These integers are used in the operations of truncated induction, see j_induction_table and J_induction_table.
Iwahori-Hecke algebras and cyclotomic Hecke algebras also have character tables, see HeckeAlgebras.
We now describe for each type our conventions for labeling the classes and characters.
- Type
Aₙ(n≥0).
We have $W(Aₙ)≅𝔖ₙ₊₁$; its classes and characters are labelled by partitions of n+1. The partition labelling a class is the cycle type of the elements in that class; the representative word in the generators in .classwords is the concatenation of the words corresponding to each part, where the word for a part i is the product of i-1 consecutive generators (starting one higher than the last generator used for the previous parts). The partition labelling a character describes the type of the Young subgroup such that the trivial character induced from this subgroup contains that character with multiplicity 1 and such that every other character occurring in this induced character has a higher a-value. Thus, the sign character is labelled by the partition (1ⁿ⁺¹) and the trivial character by the partition (n+1). The character of the reflection representation of W is labelled by (n,1).
- Type
Bₙ(n≥2).
The group W=W(Bₙ) is isomorphic to the wreath product of the cyclic group of order 2 with the symmetric group $𝔖ₙ$. Hence the classes and characters are parameterized by pairs of partitions such that the total sum of their parts equals n. The pair corresponding to a class describes the signed cycle type for the elements in that class, as in (Carter, 1972). We use the convention that if (λ,μ) is such a pair then λ corresponds to the positive and μ to the negative cycles. Thus, ((1ⁿ),-) and (-,(1ⁿ)) label respectively the trivial class and the class of the longest element.
The pair corresponding to an irreducible character is determined via Clifford theory using the semidirect product decomposition $W(Bₙ)=N⋊𝔖ₙ$ where N is the standard n-dimensional 𝔽₂ⁿ-vector space. For a,b ≥ 0 such that n=a+b let $η_{a,b}$ be the irreducible character of N which takes value 1 on the first a standard basis vectors and value -1 on the last b standard basis vectors of N. Then the inertia subgroup of $η_{a,b}$ has the form $T_{a,b}=N⋊(𝔖_a×𝔖_b)$ and we can extend $η_{a,b}$ trivially to an irreducible character $η̃_{a,b}$ of $T_{a,b}$. Let α and β be partitions of a and b, respectively. We take the tensor product of the corresponding irreducible characters of $𝔖_a$ and $𝔖_b$ and regard this as an irreducible character of $T_{a,b}$. Multiplying this character with $η̃_{a,b}$ and inducing to W(Bₙ) yields an irreducible character $χ= χ_{(α,β)}$ of W(Bₙ). This defines the correspondence between irreducible characters and pairs of partitions as above.
For example, the pair ((n),-) labels the trivial character and (-,(1ⁿ)) labels the sign character. The character of the natural reflection representation is labeled by ((n-1),(1)).
- Type
Dₙ(n≥4).
The group W(Dₙ) can be embedded as a subgroup of index 2 into the Coxeter group W(Bₙ). The intersection of a class of W(Bₙ) with W(Dₙ) is either empty or a single class in W(Dₙ) or splits up into two classes in W(Dₙ). This also leads to a parameterization of the classes of W(Dₙ) by pairs of partitions (λ,μ) as before but where the number of parts of μ is even and where there are two classes of this type if μ is empty and all parts of λ are even. In the latter case we denote the two classes in W(Dₙ) by (λ,+) and (λ,-), where we use the convention that the class labeled by (λ,+) contains a representative which can be written as a word in {s₁,s₃,…,sₙ} and (λ,-) contains a representative which can be written as a word in {s₂,s₃, …,sₙ}.
By Clifford theory the restriction of an irreducible character of W(Bₙ) to W(Dₙ) is either irreducible or splits up into two irreducible components. Let (α,β) be a pair of partitions with total sum of parts equal to n. If α!=β then the restrictions of the irreducible characters of W(Bₙ) labeled by (α,β) and (β,α) are irreducible and equal. If α=β then the restriction of the character labeled by (α,α) splits into two irreducible components which we denote by (α,+) and (α,-). Note that this can only happen if n is even. In order to fix the notation we use a result of (Stembridge, 1989) which describes the value of the difference of these two characters on a class of the form (λ,+) in terms of the character values of the symmetric group $𝔖_{n/2}$. Recall that it is implicit in the notation (λ,+) that all parts of λ are even. Let λ' be the partition of n/2 obtained by dividing each part by 2. Then the value of $χ_{(α,-)}-χ_{(α,+)}$ on an element in the class (λ,+) is given by 2^{k(λ)} times the value of the irreducible character of $𝔖_{n/2}$ labeled by α on the class of cycle type λ'. (Here, k(λ) denotes the number of non-zero parts of λ.)
The labels for the trivial, the sign and the natural reflection character are the same as for W(Bₙ), since these characters are restrictions of the corresponding characters of W(Bₙ).
- The groups
G(d,1,n).
They are isomorphic to the wreath product $μ_d≀𝔖ₙ$ of the cyclic group of order d with the symmetric group. Hence the classes and characters are parameterized by d-tuples of partitions such that the total sum of their parts equals n. The words chosen as representatives of the classes are, when d>2, computed in a slightly different way than for Bₙ, in order to agree with the words on which Ram and Halverson compute the characters of the Hecke algebra. First the parts of the d partitions are merged in one big partition and sorted in increasing order. Then, to a part i coming from the j-th partition is associated the word (l+1…1… l+1)ʲ⁻¹l+2…l+i where l is the highest generator used to express the previous part.
The d-tuple corresponding to an irreducible character is determined via Clifford theory in a similar way than for the Bₙ case. The identity character has the first partition with one part equal n and the other ones empty. The character of the reflection representations has the first two partitions with one part equal respectively to n-1 and to 1, and the other partitions empty.
- The groups
G(de,e,n).
They are normal subgroups of index e in G(de,1,n). The quotient is cyclic, generated by the image g of the first generator of G(de,1,n). The classes are parameterized as the classes of G(de,e,n) with an extra information for a component of a class which splits.
According to (Hugues, 1985), a class C of G(de,1,n) parameterized by a de-partition $(S₀,…,S_{de-1})$ is in G(de,e,n) if e divides $∑ᵢ i ∑_{p∈ Sᵢ}p$. It splits in d classes for the largest d dividing e and all parts of all Sᵢ and such that Sᵢ is empty if d does not divide i. If w∈C then [gⁱ w g⁻ⁱ for i in 0:d-1] are representatives of the classes of G(de,e,n) which meet C. They are labelled by appending the integer i to the label for C.
The characters are described by Clifford theory. We make g act on labels for characters of G(de,1,n) . The action of g permutes circularly by d the partitions in the de-tuple. A character has same restriction to G(de,e,n) as its transform by g. The number of irreducible components of its restriction is equal to the order k of its stabilizer under powers of g. We encode a character of G(de,e,n) by first, choosing the smallest for lexicographical order label of a character whose restriction contains it; then this label is periodic with a motive repeated k times; we represent the character by one of these motives, to which we append E(k)ⁱ for i in 0:k-1 to describe which component of the restriction we choose.
- Types
G₂andF₄.
A character is labeled by a pair (d,b) where d denotes the degree and b the corresponding b-invariant. If there are several characters with the same pair (d,b) we attach a prime to them, as in (Carter, 1985).
The matrices of character values and the orderings and labelings of the irreducible characters are exactly the same as in (Carter, 1985; p.412–413): in type G₂ the character φ₁,₃' takes the value -1 on the reflection associated to the long simple root; in type F₄, the characters φ₁,₁₂', φ₂,₄', φ₄,₇', φ₈,₉' and φ₉,₆' occur in the induced of the identity from the A₂ corresponding to the short simple roots; the pairs (φ₂,₁₆', φ₂,₄″) and (φ₈,₃', φ₈,₉″) are related by tensoring by sign; and finally φ₆,₆″ is the exterior square of the reflection representation. Note, however, that we put the long root at the left of the Dynkin diagrams to be in accordance with the conventions in (Lusztig, 1985; (4.8) and (4.10)).
The classes are labeled by Carter's admissible diagrams (Carter, 1972).
- Types
E₆,E₇,E₈.
The character tables are obtained by specialization of those of the Hecke algebra. The classes are labeled by Carter's admissible diagrams (Carter, 1972). A character is labeled by the pair (d,b) where d denotes the degree and b is the corresponding b-invariant. For these types, this gives a unique labeling of the characters.
- Non-crystallographic types
I₂(m),H₃,H₄.
In these cases we do not have canonical labelings for the classes. We label them by reduced expressions.
Each character for type H₃ is uniquely determined by the pair (d,b) where d is the degree and b the corresponding b-invariant. For type H₄ there are just two characters (those of degree 30) for which the corresponding pairs are the same. These two characters are nevertheless distinguished by their fake degrees: the character φ₃₀,₁₀' has fake degree q¹⁰+q¹²+ higher terms, while φ₃₀,₁₀″ has fake degree q¹⁰+q¹⁴+ higher terms. The characters in the table for type H₄ are ordered in the same way as in (Alvis and Lusztig, 1982).
Finally, the characters of degree 2 for type I₂(m) are ordered as follows. The matrix representations affording the characters of degree 2 are given by: $ρ_j : s₁s₂ ↦ \begin{pmatrix}\zeta_m^j&0\\0&\zeta_m^{-j}\end{pmatrix}, s₁↦\begin{pmatrix}0&1\\1&0\end{pmatrix},$ where $1 ≤ j ≤ ⌊(m-1)/2⌋$. The reflection representation is ρ₁. The characters in the table are ordered by listing first the characters of degree 1 and then ρ₁,ρ₂,….
Primitive complex reflection groups G₄ to G₃₄.
The groups G₂₃=H₃, G₂₈=F₄, G₃₀=H₄ are exceptional Coxeter groups and have been explained above. Similarly for the other groups labels for characters consist primarily of the pair (d,b) where d denotes the degree and b is the corresponding b-invariant. This is sufficient for G₄, G₁₂, G₂₂ and G₂₄. For other groups there are pairs or triples of characters which have the same (d,b) value. We disambiguate these according to the conventions of (Malle, 2000) for G₂₇, G₂₉, G₃₁, G₃₃ and G₃₄:
- For
G₂₇:
The fake degree of φ₃,₅' (resp. φ₃,₂₀', φ₈,₉″) has smaller degree that of φ₃,₅″ (resp. φ₃,₂₀″, φ₈,₉'). The characters φ₅,₁₅' and φ₅,₆' occur with multiplicity 1 in the induced from the trivial character of the parabolic subgroup of type A₂ generated by the first and third generator (it is asserted mistakenly in (Malle, 2000) that φ₅,₆″ does not occur in this induced; it occurs with multiplicity 2).
- For
G₂₉:
The character φ₆,₁₀‴ is the exterior square of φ₄,₁; its complex conjugate is φ₆,₁₀⁗. The character φ₁₅,₄″ occurs in φ₄,₁⊗φ₄,₃; the character φ₁₅,₁₂″ is tensored by the sign character from φ₁₅,₄″. Finally φ₆,₁₀' occurs in the induced from the trivial character of the standard parabolic subgroup of type A₃ generated by the first, second and fourth generators.
- For
G₃₁:
The characters φ₁₅,₈', φ₁₅,₂₀' and φ₄₅,₈″ occur in φ₄,₁⊗φ₂₀,₇; the character φ₂₀,₁₃' is complex conjugate of φ₂₀,₇; the character φ₄₅,₁₂' is tensored by sign of φ₄₅,₈'. The two terms of maximal degree of the fakedegree of φ₃₀,₁₀' are q⁵⁰+q⁴⁶ while for φ₃₀,₁₀″ they are q⁵⁰+2q⁴⁶.
- For
G₃₃:
The two terms of maximal degree of the fakedegree of φ₁₀,₈' are q²⁸+q²⁶ while for φ₁₀,₈″ they are q²⁸+q²⁴. The terms of maximal degree of the fakedegree of φ₄₀,₅' are q³¹+q²⁹ while for φ₄₀,₅″ they are q³¹+2q²⁹. The character φ₁₀,₁₇' is tensored by sign of φ₁₀,₈' and φ₄₀,₁₄' is tensored by sign of φ₄₀,₅'.
- For
G₃₄:
The character φ₂₀,₃₃' occurs in φ₆,₁⊗φ₁₅,₁₄. The character φ₇₀,₉' is rational. The character φ₇₀,₉″ occurs in φ₆,₁⊗φ₁₅,₁₄. The character φ₇₀,₄₅' is rational.The character φ₇₀,₄₅″ is tensored by the determinant character of φ₇₀,₉″. The character φ₅₆₀,₁₈' is rational. The character φ₅₆₀,₁₈‴ occurs in φ₆,₁⊗φ₃₃₆,₁₇. The character φ₂₈₀,₁₂' occurs in φ₆,₁⊗φ₃₃₆,₁₇. The character φ₂₈₀,₃₀″ occurs in φ₆,₁⊗φ₃₃₆,₁₇. The character φ₅₄₀,₂₁' occurs in φ₆,₁⊗φ₁₀₅,₂₀. The character φ₁₀₅,₈' is complex conjugate of φ₁₀₅,₄, and φ₈₄₀,₁₃' is complex conjugate of φ₈₄₀,₁₁. The character φ₈₄₀,₂₃' is complex conjugate of φ₈₄₀,₁₉. Finally φ₁₂₀,₂₁' occurs in induced from the trivial character of the standard parabolic subgroup of type A₅ generated by the generators of G₃₄ with the third one omitted.
For the groups G₅ and G₇ we adopt the following conventions. For G₅ they are compatible with those of (Malle and Rouquier, 2003) and (Broué et al., 2014).
- For
G₅:
We let W=complex_reflection_group(5), so the generators are W(1) and W(2).
The character φ₁,₄' (resp. φ₁,₁₂', φ₂,₃') takes the value 1 (resp. ζ₃, -ζ₃) on W(1). The character φ₁,₈″ is complex conjugate to φ₁,₁₆, and the character φ₁,₈' is complex conjugate to φ₁,₄' . The character φ₂,₅″ is complex conjugate to φ₂,₁; φ₂,₅' takes the value -1 on W(1). The character φ₂,₇' is complex conjugate to φ₂,₅'.
- For
G₇:
We let W=complex_reflection_group(7), so the generators are W(1), W(2) and W(3).
The characters φ₁,₄' and φ₁,₁₀' take the value 1 on W(2). The character φ₁,₈″ is complex conjugate to φ₁,₁₆ and φ₁,₈' is complex conjugate to φ₁,₄'. The characters φ₁,₁₂' and φ₁,₁₈' take the value ζ₃ on W(2). The character φ₁,₁₄″ is complex conjugate to φ₁,₂₂ and φ₁,₁₄' is complex conjugate to φ₁,₁₀'. The character φ₂,₃' takes the value -ζ₃ on W(2) and φ₂,₁₃' takes the value -1 on W(2). The characters φ₂,₁₁″, φ₂,₅″, φ₂,₇‴ and φ₂,₁ are Galois conjugate, as well as the characters φ₂,₇', φ₂,₁₃', φ₂,₁₁' and φ₂,₅'. The character φ₂,₉' is complex conjugate to φ₂,₁₅ and φ₂,₉‴ is complex conjugate to φ₂,₃'.
Finally, for the remaining groups G₆, G₈ to G₁₁, G₁₃ to G₂₁, G₂₅, G₂₆, G₃₂ and G₃₃ there are only pairs of characters with same value (d,b). We give labels uniformly to these characters by applying in order the following rules :
If the two characters have different fake degrees, label
φ_{d,b}'the one whose fake degree is minimal for the lexicographic order of polynomials (starting with the highest term).For the not yet labeled pairs, if only one of the two characters has the property that in its Galois orbit at least one character is distinguished by its
(d,b)-invariant, label itφ_{d,b}'.For the not yet labeled pairs, if the minimum of the
(d,b)-value (for the lexicographic order(d,b)) in the Galois orbits of the two character is different, labelφ_{d,b}'the character with the minimal minimum.We define now a new invariant
tfor a characterφ: consider all the pairs of irreducible charactersχandψuniquely determined by their(d,b)-invariant such thatφoccurs with non-zero multiplicityminχ⊗ψ. We definet(φ)to be the minimal (for lexicographic order) possible list(d(χ),b(χ),d(ψ),b(ψ),m).
For the not yet labeled pairs, if the t-invariants are different, label φ_{d,b}' the character with the minimal t-invariant.
After applying the last rule all the pairs will be labelled for the considered groups. The labelling obtained is compatible for G₂₅, G₂₆, G₃₂ and G₃₃ with that of (Malle, 2000) and for G₈ with that described in (Malle and Rouquier, 2003).
We should emphasize that for all groups with a few exceptions, the parameters for characters do not depend on any non-canonical choice. The exceptions are G(de,e,n) with e>1, and G₅, G₇, G₂₇, G₂₈, G₂₉ and G₃₄, groups which admit outer automorphisms preserving the set of reflections, so choices of a particular value on a particular generator must be made for characters which are not invariant by these automorphisms.
- Labels for the classes.
For the exceptional complex reflection groups, the labels for the classes represent the decomposition of a representative of the class as a product of generators, with the additional conventions that z represents the generator of the center and for well-generated groups c represents a Coxeter element (a product of the generators which is a regular element for the highest reflection degree).
Chevie.Chars.CharTable — Type
CharTable is a structure to hold character tables of groups and Hecke algebras
Chevie.Chars.decompose — Method
decompose(ct::CharTable,c::Vector;exact=true)
decompose class function c (given by its values on conjugacy classes) on irreducible characters as given by CharTable ct. By default c is expected to be a virtual character so the result will be an integer vector. If c is not a virtual character give the keyword exact=false to get a correct result.
julia> ct=CharTable(coxsym(4));
julia> decompose(ct,ct.irr[2,:].*ct.irr[2,:])
5-element Vector{Int64}:
0
1
1
1
1Chevie.Chars.scalar_product — Method
scalar_product(ct::CharTable,φ₁,φ₂;exact=true)
scalar product of the class functions φ₁ and φ₂ according to the character table ct. By default φ₁ and φ₂ are expected to be virtual characters so the result will be an integer. If one of them is not a virtual character give the keyword exact=false to get a correct result.
julia> ct=CharTable(coxsym(4));
julia> scalar_product(ct,3*ct.irr[2,:],ct.irr[2,:])
3Chevie.Chars.on_chars — Function
on_chars(G,aut)
aut is an automorphism of the group G (for a permutation group, this could be given as a permutation normalizing G). The result is the permutation of the indices of the irreducible characters induced by aut.
julia> WF=rootdatum("3D4")
³D₄
julia> on_chars(Group(WF),WF.phi)
(1,2,7)(8,9,12)Chevie.Chars.charinfo — Function
charinfo(W)
returns information about the irreducible characters of the finite reflection group or Spets W. The result is an object with various entries describing properties of the irreducible characters of W. This object prints at the Repl or in Pluto or Jupyter as a table synthesizing most information.
A field not printed is .charparams: it contains parameters for the irreducible characters. A parameter is a list with one item for each irreducible component of W (as given by refltype). For an irreducible W see the explanation in Chars for what are the parameters.
julia> charinfo(coxgroup(:G,2)).charparams
6-element Vector{Vector{Vector{Int64}}}:
[[1, 0]]
[[1, 6]]
[[1, 3, 1]]
[[1, 3, 2]]
[[2, 1]]
[[2, 2]]julia> charinfo(coxgroup(:G,2))
┌──┬──────────────────────────────────────────────────────────┐
│n0│ name ext b B a A spaltenstein lusztig symbol│
├──┼──────────────────────────────────────────────────────────┤
│1 │ φ₁‚₀ Id 0 0 0 0 1 1 (0,0,0,0,0,2)│
│2 │ φ₁‚₆ det 6 6 6 6 ε ε (01,01,01,01,01,12)│
│3 │φ′₁‚₃ 3 3 1 5 εₗ ε′ (0,0,1+)│
│4 │φ″₁‚₃ 3 3 1 5 ε_c ε″ (0,0,1-)│
│5 │ φ₂‚₁ Λ¹ 1 5 1 5 θ′ θ′ (0,0,0,0,1,1)│
│6 │ φ₂‚₂ 2 4 1 5 θ″ θ″ (0,0,0,1,0,1)│
└──┴──────────────────────────────────────────────────────────┘In the table printed at the Repl, the columns reflect various fields of charinfo. The column name reflects the field .charnames, a name computed from .charparams. This is the same as charnames(io,W) where here io being the Repl has the property :limit true.
The column ext shows the exterior powers of the reflection representation. It corresponds to the field .extrefl which is present only if W is irreducible. Otherwise, only two items are shown in the column: Id corresponds to the field .positionId and shows the trivial character. det corresponds to the field .positionDet and shows the determinant character (for Coxeter groups the sign character). When W is irreducible, the characters marked Λⁱ are the i-th exterior power of the reflection representation. They are irreducible by a theorem of Steinberg.
The column b shows the field .b listing for each character the valuation of the fake degree, and the column B shows the field .B, the degree of the fake degree.
The columns a and A only appear for Spetsial groups. They correspond then to the fields .a and .A, and contain respectively the valuation and the degree of the generic degree of the character (in the one-parameter Hecke algebra hecke(W,Pol()) for W).
For irreducible groups, the table shows sometimes additional columns, corresponding to a field of the same name.
for F₄, the column kondo gives the labeling of the characters in (Kondo, 1965). The columns spaltenstein and lusztig show variants used in (Spaltenstein, 1985) and (Lusztig, 1985; (4.10)).
for E₆, E₇, E₈ the column frame gives the labeling of the characters in (Frame, 1951; Frame, 1970), also used in (Lusztig, 1985; (4.11) to (4.13)).
for G₂ the column spaltenstein gives the labeling of the characters used by (Spaltenstein, 1985) and the column lusztig shows a variant used in (Lusztig, 1985).
for H₃ and H₄ the column gp gives the labeling of the characters used in (Geck and Pfeiffer, 2000).
for G(de,e,2) even e and d>1, the column malle gives the parameters for the characters used in (Malle, 1994).
If W is irreducible spetsial and imprimitive, the column symbol (corresponding to the field .charSymbols) shows the symbol attached to the corresponding unipotent caracter.
If W isa Spets, the column restr. (corresponding to the field .charRestrictions) gives the index of the corresponding character of Group(W).
Finally, the field .hgal contains the permutation of the characters resulting from a Galois action on the characters of H=hecke(W,Pol()^e) where e is the order of the center of W. H splits by taking v an e-th root of Pol(), and .hgal records the permutation effected by the Galois action v->E(e)*v (charinfo does not have the key :hgal if this permutation is trivial). .hgal*conj, where conj is the complex conjugaison, is the Opdam involution.
julia> charinfo(complex_reflection_group(24))
┌──┬─────────────────────┐
│n0│ name ext b B a A│
├──┼─────────────────────┤
│1 │ φ₁‚₀ Id 0 0 0 0│
│2 │φ₁‚₂₁ det 21 21 21 21│
│3 │ φ₃‚₈ 8 18 8 20│
│4 │ φ₃‚₁ Λ¹ 1 11 1 13│
│5 │φ₃‚₁₀ Λ² 10 20 8 20│
│6 │ φ₃‚₃ 3 13 1 13│
│7 │ φ₆‚₂ 2 12 1 13│
│8 │ φ₆‚₉ 9 19 8 20│
│9 │ φ₇‚₆ 6 18 6 18│
│10│ φ₇‚₃ 3 15 3 15│
│11│ φ₈‚₄ 4 16 4 17│
│12│ φ₈‚₅ 5 17 4 17│
└──┴─────────────────────┘
hgal=(11,12)Chevie.Chars.charnames — Method
charnames(W;options...) or charnames(io::IO,W)
returns the list of character names for the reflection group or Spets W (W could also be a CharTable or CharInfo). The options may imply alternative names in certain cases, or a different formatting of names in general. They are specified by IO attributes if giving an IO as first argument.
julia> W=coxgroup(:G,2)
G₂
julia> charnames(W;limit=true)
6-element Vector{String}:
"φ₁‚₀"
"φ₁‚₆"
"φ′₁‚₃"
"φ″₁‚₃"
"φ₂‚₁"
"φ₂‚₂"
julia> charnames(W;TeX=true)
6-element Vector{String}:
"\phi_{1,0}"
"\phi_{1,6}"
"\phi_{1,3}'"
"\phi_{1,3}''"
"\phi_{2,1}"
"\phi_{2,2}"
julia> charnames(W;spaltenstein=true,limit=true)
6-element Vector{String}:
"1"
"ε"
"εₗ"
"ε_c"
"θ′"
"θ″"
julia> charnames(W;spaltenstein=true,TeX=true)
6-element Vector{String}:
"1"
"\varepsilon"
"\varepsilon_l"
"\varepsilon_c"
"\theta'"
"\theta''"The last two commands show the character names used in (Spaltenstein, 1985). Other keywords available are frame, kondo, malle, gp, lusztig, see charinfo for a description.
Chevie.Chars.classnames — Function
classnames(W;options...) or classnames(io::IO,W)
returns the list of class names for the reflection group W (W may also be a CharTable or the result of classinfo). The optional options are IOContext attributes which can give alternative names in certain cases, or a different formatting of names in general. They can be specified by giving an IO as argument.
julia> classnames(coxgroup(:G,2),TeX=true)
6-element Vector{String}:
"A_0"
"\tilde A_1"
"A_1"
"G_2"
"A_2"
"A_1+\tilde A_1"Chevie.Chars.classinfo — Function
classinfo(W)
returns information about the conjugacy classes of the finite reflection group or Spets W. The result is an object with various entries describing properties of the conjugacy classes of W. This object prints at the Repl or in Pluto or Jupyter as a table synthesizing most information.
A field not shown in the table is .classparams, containing parameters for the conjugacy classes. Each parameter is a vector which has one item for each irreducible component of W. For what are the parameters for an irreducible W, see the description for each type in Chars.
julia> classinfo(coxgroup(:A,2))
┌──┬──────────────────────┐
│n0│name length order word│
├──┼──────────────────────┤
│1 │ 111 1 1 .│
│2 │ 21 3 2 1│
│3 │ 3 2 3 12│
└──┴──────────────────────┘The table contains the columns:
name, corresponding to the field.classnames: strings describing the conjugacy classes, made out of the information in:classparams.length, corresponding to the field.classes, is the number of elements in the conjugacy class.order, corresponding to the field.orders, is the order of elements in the conjugacy class.word, corresponding to the field.classwords, describes a word in the generators for the representatives of each conjugacy class. Each word is a list of integers where the generatorW(i)is represented by the integeri. For finite Coxeter groups, it is the same asword.(Ref(W),classreps(W)), and each such representative is of minimal length in its conjugacy class and is a "very good" element in the sense of (Geck and Michel, 1997).
Chevie.Symbols.fakedegree — Method
fakedegree(W, φ, q=Pol())
returns the fake degree (see fakedegrees for a definition) of the character of parameter φ (see charinfo(W).charparams) of the reflection group W, evaluated at q .
julia> fakedegree(coxgroup(:A,2),[[2,1]],Pol(:q))
Pol{Int64}: q²+qChevie.Chars.fakedegrees — Function
fakedegrees(W, q=Pol())
returns a list holding the fake degrees of the reflection group W on the vector space V, evaluated at q. These are the graded multiplicities of the irreducible characters of W in the quotient SV/I where SV is the symmetric algebra of V and I is the ideal generated by the homogeneous invariants of positive degree in SV. The ordering of the result corresponds to the ordering of the characters in charinfo(W).
julia> fakedegrees(coxgroup(:A,2),Pol(:q))
3-element Vector{Pol{Int64}}:
q³
q²+q
1Chevie.Chars.representation — Method
representation(W,i)
returns, for the i-th irreducible representation of the complex reflection group or Spets W, a list of matrices images of the generating reflections of W in a model of the representation (for Spets, the result is a NamedTuple with fields gens, a representation of Group(W), and F, the matrix for W.phi in the representation). This function is based on the classification, and is not yet fully implemented for G₃₄; 60 representations are missing out of 169, that is, about half of representations of dimension ≥140. nothing is returned for a missing representation.
julia> representation(complex_reflection_group(24),3)
3-element Vector{Matrix{Cyc{Int64}}}:
[1 0 0; -1 -1 0; -1 0 -1]
[-1 0 -1; 0 -1 (1-√-7)/2; 0 0 1]
[-1 -1 0; 0 1 0; 0 (1+√-7)/2 -1]Chevie.Chars.representations — Method
representations(W)
returns the list of representations of the complex reflection group or Spets W (see representation).
julia> representations(coxgroup(:B,2))
5-element Vector{Vector{Matrix{Int64}}}:
[[1;;], [-1;;]]
[[1 0; -1 -1], [1 2; 0 -1]]
[[-1;;], [-1;;]]
[[1;;], [1;;]]
[[-1;;], [1;;]]Chevie.Chars.induction_table — Function
induction_table(u,g)
returns an object describing the decomposition of the irreducible characters of the subgroup u induced to the group g. At the repl or IJulia or Pluto, a table is displayed where the rows correspond to the characters of the parent group, and the columns to those of the subgroup. The returned object has a field scalar which is a Matrix{Int} containing the induction table, and the other fields contain labeling information taken from the character tables of u and g when it exists.
julia> g=Group([Perm(1,2),Perm(2,3),Perm(3,4)])
Group([(1,2),(2,3),(3,4)])
julia> u=Group( [ Perm(1,2), Perm(3,4) ])
Group([(1,2),(3,4)])
julia> induction_table(u,g) # needs "using GAP"
Induction table from Group((1,2),(3,4)) to Group((1,2),(2,3),(3,4))
┌───┬───────────────┐
│ │X.1 X.2 X.3 X.4│
├───┼───────────────┤
│X.1│ . 1 . .│
│X.2│ . 1 1 1│
│X.3│ 1 1 . .│
│X.4│ 1 . 1 1│
│X.5│ 1 . . .│
└───┴───────────────┘julia> g=coxgroup(:G,2)
G₂
julia> u=reflection_subgroup(g,[1,6])
G₂₍₁₅₎=A₂
julia> t=induction_table(u,g)
Induction table from G₂₍₁₅₎=A₂ to G₂
┌─────┬────────┐
│ │111 21 3│
├─────┼────────┤
│φ₁‚₀ │ . . 1│
│φ₁‚₆ │ 1 . .│
│φ′₁‚₃│ 1 . .│
│φ″₁‚₃│ . . 1│
│φ₂‚₁ │ . 1 .│
│φ₂‚₂ │ . 1 .│
└─────┴────────┘IO attributes can be transmitted to the table format method
julia> xdisplay(t;rows=[5],cols=[3,2])
Induction table from G₂₍₁₅₎=A₂ to G₂
┌─────┬────┐
│ │3 21│
├─────┼────┤
│φ₂‚₁ │. 1│
└─────┴────┘It is also possible to TeX induction tables with xdisplay(t;TeX=true).
induction_table also works for spets (reflection cosets).
Chevie.Chars.j_induction_table — Function
j_induction_table(H, W)
computes the decomposition into irreducible characters of the reflection group W of the j-induced of the irreducible characters of the reflection subgroup H. The j-induced of φ is the sum of the irreducible components of the induced of φ which have same b-function (see charinfo) as φ. What is returned is an InductionTable struct.
julia> W=coxgroup(:D,4)
D₄
julia> H=reflection_subgroup(W,[1,3])
D₄₍₁₃₎=A₂Φ₁²
julia> j_induction_table(H,W)
j-induction table from D₄₍₁₃₎=A₂Φ₁² to D₄
┌─────┬────────┐
│ │111 21 3│
├─────┼────────┤
│11+ │ . . .│
│11- │ . . .│
│1.111│ . . .│
│.1111│ . . .│
│11.2 │ . . .│
│1.21 │ 1 . .│
│.211 │ . . .│
│2+ │ . . .│
│2- │ . . .│
│.22 │ . . .│
│1.3 │ . 1 .│
│.31 │ . . .│
│.4 │ . . 1│
└─────┴────────┘Chevie.Chars.J_induction_table — Function
J_induction_table(H, W)
computes the decomposition into irreducible characters of the reflection group W of the J-induced of the irreducible characters of the reflection subgroup H. The J-induced of φ is the sum of the irreducible components of the induced of φ which have same a-function (see charinfo) as φ. What is returned is an InductionTable struct.
julia> W=coxgroup(:D,4)
D₄
julia> H=reflection_subgroup(W,[1,3])
D₄₍₁₃₎=A₂Φ₁²
julia> J_induction_table(H,W)
J-induction table from D₄₍₁₃₎=A₂Φ₁² to D₄
┌─────┬────────┐
│ │111 21 3│
├─────┼────────┤
│11+ │ . . .│
│11- │ . . .│
│1.111│ . . .│
│.1111│ . . .│
│11.2 │ 1 . .│
│1.21 │ 1 . .│
│.211 │ . . .│
│2+ │ . . .│
│2- │ . . .│
│.22 │ . . .│
│1.3 │ . 1 .│
│.31 │ . . .│
│.4 │ . . 1│
└─────┴────────┘Chevie.Chars.schur_functor — Function
schur_functor(mat,λ)
mat should be a square matrix and λ a partition. The result is the Schur functor of the matrix mat corresponding to partition λ; for example, if λ==[n] it returns the n-th symmetric power and if λ==[1,1,1] it returns the 3rd exterior power. The current algorithm (from Littlewood) is rather inefficient so it is quite slow for partitions of n where n>6.
julia> m=cartan(:A,3)
3×3 Matrix{Int64}:
2 -1 0
-1 2 -1
0 -1 2
julia> schur_functor(m,[2,2])
6×6 Matrix{Rational{Int64}}:
9 -6 4 3//2 -2 1
-12 16 -16 -4 8 -4
4 -8 16 2 -8 4
12 -16 16 10 -16 12
-4 8 -16 -4 16 -12
1 -2 4 3//2 -6 9schur_functor(ct::CharTable,φ::AbstractVector,λ)
schur_functor(ct::CharTable,i::Integer,λ)
ct should be a character table for some group G. In the first form φ should be a vector representing a character of G, and in the second form i denotes the i-th character φ of G. λ is a partition of some integer n, representing an irreducible character of $𝔖 ₙ$. The function returns the Schur functor φ[λ] of φ defined by λ . This is the character defined by the formula
$φ[λ](g)=∑_μ λ(μ)∏_{k∈1:n}φ(gᵏ)^{nₖ(μ)}$
where μ runs over the partitions of n, representing the classes of $𝔖 ₙ$, where λ(μ) is the value of the character λ at the class μ, and nₖ(μ) is the number of parts of μ equal to k.
Particular examples are the exterior powers, corresponding to λ=1ⁿ, and the symmetric powers, corresponding λ=n.
ct should have .powermaps containing powermaps for at least the prime divisors of the order of G.
Chevie.Chars.detPerm — Function
detPerm(W)
return the permutation of the characters of the reflection group W which is effected when tensoring by the determinant character (for Coxeter groups this is the sign character).
julia> W=coxgroup(:D,4)
D₄
julia> detPerm(W)
(1,8)(2,9)(3,11)(4,13)(7,12)Chevie.Chars.conjPerm — Function
conjPerm(W)
return the permutation of the characters of the group W which is effected when taking the complex conjugate of the character table.
julia> W=complex_reflection_group(4)
G₄
julia> conjPerm(W)
(2,3)(5,6)