Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improving Character Table Computation #60

Open
aidevnn opened this issue May 19, 2024 · 4 comments
Open

Improving Character Table Computation #60

aidevnn opened this issue May 19, 2024 · 4 comments
Assignees
Labels
enhancement New feature or request

Comments

@aidevnn
Copy link
Owner

aidevnn commented May 19, 2024

The current implementation for computing character tables is based solely on the following methods:

  • Lifting from the derived subgroup
  • Induction from subgroups
  • Restriction from the supergroup, as in the case of SL(2,3)

This implementation can be enhanced by incorporating various named characters and resolving orthogonality and an old implementation for resolving orthogonality can be retrieved from git-history.

@aidevnn aidevnn added the enhancement New feature or request label May 19, 2024
@aidevnn aidevnn self-assigned this May 19, 2024
@aidevnn aidevnn moved this from Todo to In Progress in Group Theory for Undergraduate May 22, 2024
@aidevnn
Copy link
Owner Author

aidevnn commented May 22, 2024

When dealing with the character table, some small improvement can be tested

  • the regular character to complete the last line,
  • an induction from the stabilizer subgroup corresponding to each class,
  • additionally, if the stabilizer subgroup is normal, lifting can also be done.

@aidevnn
Copy link
Owner Author

aidevnn commented May 23, 2024

In the case of abelian group, induction from its subgroups is x3 slower than direct computation of linear characters from tensor property.

{
var ctG = FG.CharacterTableEmpty(g);
ctG.DerivedSubGroupLift();
ctG.InductionFromSubGroups(subgroups);
ctG.DisplayCells(tableOnly: true);
Console.WriteLine();
}
}

It is now fixed.

{
var ctG = FG.CharacterTableEmpty(g);
if(g.GroupType == GroupType.AbelianGroup)
ctG.AbelianTable();
else
{
ctG.DerivedSubGroupLift();
ctG.InductionFromStabilizers();
ctG.InductionFromSubGroups(subgroups);
}
ctG.DisplayCells(tableOnly: true);
Console.WriteLine();
}

@aidevnn
Copy link
Owner Author

aidevnn commented May 24, 2024

When linear characters are associated with a new character with unknowns, it is possible to reduce and solve the system for SL(2,3), GL(2,3), SL(2,3) x C2, and SL(2,3) x: C2. However, a method to avoid unnecessary linear characters still needs to be found.

@aidevnn
Copy link
Owner Author

aidevnn commented May 25, 2024

Pretty print error needs to be fixed, I^2 = -1.

[ Ꭓ.11 2 -2 0 0 -2*I 2*I -I - I^2 -I + I^2 I + I^2 I - I^2 0 0 0 0]
[ Ꭓ.12 2 -2 0 0 -2*I 2*I I + I^2 I - I^2 -I - I^2 -I + I^2 0 0 0 0]
[ Ꭓ.13 2 -2 0 0 2*I -2*I -I + I^2 -I - I^2 I - I^2 I + I^2 0 0 0 0]
[ Ꭓ.14 2 -2 0 0 2*I -2*I I - I^2 I + I^2 -I + I^2 -I - I^2 0 0 0 0]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Development

No branches or pull requests

1 participant