-
-
Notifications
You must be signed in to change notification settings - Fork 673
Open
Description
GAP's character tables could be better exposed from Sage. One
approach is to just improve the GAP interface: conversion of objects
back to Sage (see #7890), introspection, ... Another approach is to
implement an abstract class in Sage for character tables, with a
concrete subclass whose elements wraps GAP's character tables. The
later offers a more integrated user experience, at the price of
needing to explicitly wrap all GAP's functions.
Here is a rough draft of an abstract class, written during Sage Days 20:
class AbstractCharacterTable
def row_indices()
"""
That's irredinfo in Chevie (a Family of irreducible reps)
"""
def column_indices()
classparam / classname in Chevie (a Family of conjugacy classes)
def __getitem__(self, r,c)
def powermap(self, c, n)
"""
Specific to group
INPUT:
- ``c`` - the index of a conjugacy class C
Returns the index of the conjugacy class of x^n for x in C
"""
def irreducibles(self):
"""
returns the character table as a matrix
"""
def orders(self):
"""
orders of the conjugacy classes
"""
def centralizer(self):
"""
cardinality of the centralizer of the conjugacy classes
"""
For the record, here is the data structure of a character table of a
Coxeter group in GAP3:
T := CharTable(CoxeterGroup("E",8));
RecFields(T.operations);
[ "name", "operations", "ScalarProduct", "NoMessageScalarProduct", "Print",
"Eigenvalues", "IsAbelian", "IsCyclic", "IsSimple", "IsSolvable",
"SupersolvableResiduum", "IsSupersolvable", "UpperCentralSeriesFactor",
"UpperCentralSeries", "LowerCentralSeries", "IsNilpotentFactor",
"IsNilpotent", "IsNilpotentNormalSubgroup", "AbelianInvariants", "Agemo",
"Automorphisms", "Centre", "CharacterDegrees", "DerivedSubgroup",
"ElementaryAbelianSeries", "Exponent", "FittingSubgroup", "InertiaSubgroup",
"MaximalNormalSubgroups", "NormalClosure", "NormalSubgroups", "Size",
"FusionConjugacyClasses", "SizesConjugacyClasses", "*", "/", "mod",
"Restricted", "Induced", "Lattice", "Display", "CharNames", "StringEntry" ]
Component: group theory
Issue created by migration from https://trac.sagemath.org/ticket/9293