# character(PolynomialRing,ZZ,HashTable) -- construct a character

## Synopsis

• Function: character
• Usage:
character(R,l,H)
• Inputs:
• R, , over a field
• l, an integer, character length
• H, , raw character data
• Outputs:

## Description

This function is provided by the package BettiCharacters.

The character method is mainly designed to compute characters of finite group actions defined via action. The user who wishes to define characters by hand may do so with this particular application of the method.

The first argument is the polynomial ring the character values will live in; this makes it possible to compare or combine the hand-constructed character with other characters over the same ring. The second argument is the length of the character, i.e., the number of conjugacy classes of the group whose representations the character is coming from. The third argument is a hash table containing the "raw" character data. The hash table entries are in the format (i,d) => c, where i is an integer representing homological degree, d is a list representing the internal (multi)degree, and c is a list containing the values of the character in the given degrees. Note that the values of the character are elements in the ring given as the first argument.

 i1 : R = QQ[x_1..x_3] o1 = R o1 : PolynomialRing i2 : regRep = character(R,3, hashTable { (0,{0}) => matrix{{1,1,1}}, (0,{1}) => matrix{{-1,0,2}}, (0,{2}) => matrix{{-1,0,2}}, (0,{3}) => matrix{{1,-1,1}}, }) o2 = Character over R (0, {0}) => | 1 1 1 | (0, {1}) => | -1 0 2 | (0, {2}) => | -1 0 2 | (0, {3}) => | 1 -1 1 | o2 : Character i3 : I = ideal(x_1+x_2+x_3,x_1*x_2+x_1*x_3+x_2*x_3,x_1*x_2*x_3) o3 = ideal (x + x + x , x x + x x + x x , x x x ) 1 2 3 1 2 1 3 2 3 1 2 3 o3 : Ideal of R i4 : S3 = {matrix{{x_2,x_3,x_1}}, matrix{{x_2,x_1,x_3}}, matrix{{x_1,x_2,x_3}} } o4 = {| x_2 x_3 x_1 |, | x_2 x_1 x_3 |, | x_1 x_2 x_3 |} o4 : List i5 : Q = R/I o5 = Q o5 : QuotientRing i6 : A = action(Q,S3) o6 = QuotientRing with 3 actors o6 : ActionOnGradedModule i7 : character(A,0,3) === regRep o7 = true

## Caveat

This constructor implements basic consistency checks, but it is still be possible to construct objects that are not actually characters (not even virtual).

• character -- compute characters of finite group action