Reduced( tbl, constituents, reducibles )
Reduced( tbl, reducibles )
returns a record with fields remainders and irreducibles, both
lists: Let rems be the set of nonzero characters obtained from
reducibles by subtraction of
[ sum_chiin constituents
fracScalarProduct( tbl, chi, reducibles[i] )
ScalarProduct( tbl, chi, constituents[j] )
cdot chi ]
from reducibles[i] in the first case or subtraction of
[ sum_j leq i
fracScalarProduct( tbl, reducibles[j], reducibles[i] )
ScalarProduct( tbl, reducibles[j], reducibles[j] )
cdot reducibles[j] ]
in the second case.
Let irrs be the list of irreducible characters in rems. rems is
reduced with irrs and all found irreducibles until no new irreducibles
are found. Then irreducibles is the set of all found irreducible
characters, remainders is the set of all nonzero remainders.
If one knows that reducibles are ordinary characters of tbl and
constituents are irreducible ones, ReducedOrdinary ReducedOrdinary
may be faster.
Note that elements of remainders may be only virtual characters even if
reducibles are ordinary characters.
gap> t:= CharTable( "A5" );;
gap> chars:= Sublist( t.irreducibles, [ 2 .. 4 ] );;
gap> chars:= Set( Tensored( chars, chars ) );;
gap> Reduced( t, chars );
rec(
remainders := [ ],
irreducibles :=
[ [ 1, 1, 1, 1, 1 ], [ 3, -1, 0, -E(5)-E(5)^4, -E(5)^2-E(5)^3 ],
[ 3, -1, 0, -E(5)^2-E(5)^3, -E(5)-E(5)^4 ], [ 4, 0, 1, -1, -1 ],
[ 5, 1, -1, 0, 0 ] ] )
GAP 3.4.4