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

add check_commutative_group_algebra to check whether Group Algebra is Commutative, L(a) = R(a) #447

Closed

Conversation

Fe-r-oz
Copy link
Contributor

@Fe-r-oz Fe-r-oz commented Dec 8, 2024

This PR implements a method to check whether group algebra is commutative, $L(a) = R(a)$. This check is inspired from the Appendix B of this paper and will be used when working with non-abelian groups.

Abelian Groups

julia> using Oscar

julia> G = cyclic_group(6);

julia> GA = group_algebra(GF(2), G);

julia> a = rand(GA);

julia> L_a = representation_matrix(a);

julia> R_a = representation_matrix(a, :right);

julia> L_a == R_a
true

Non-Abelian Groups

julia> using Oscar

julia> G = dihedral_group(6);

julia> GA = group_algebra(GF(2), G);

julia> a = rand(GA);

julia> L_a = representation_matrix(a);

julia> R_a = representation_matrix(a, :right);

julia> L_a == R_a
false

Related Issue: #446

  • The code is properly formatted and commented.
  • Substantial new functionality is documented within the docs.
  • All new functionality is tested.
  • All of the automated tests on github pass.
  • We recently started enforcing formatting checks. If formatting issues are reported in the new code you have written, please correct them.

@Fe-r-oz Fe-r-oz marked this pull request as draft December 8, 2024 09:38
@Fe-r-oz
Copy link
Contributor Author

Fe-r-oz commented Dec 8, 2024

Hecke has the is_commutative method, so we don't need to manually check $L(a) = R(a)$.

is_commutative: https://github.com/thofma/Hecke.jl/blob/e76d83a97bf3e70437f37701d1e98703d0d68642/src/AlgAss/AlgGrp.jl#L131

Abeian groups

julia> using Hecke: is_commutative

julia> using Oscar

julia> G = cyclic_group(6);

julia> GA = group_algebra(GF(2), G);

julia>  is_commutative(GA)
true

Non-abelian

julia> using Hecke: is_commutative

julia> using Oscar

julia> G = dihedral_group(6);

julia> GA = group_algebra(GF(2), G);

julia> is_commutative(GA)
false

@Fe-r-oz Fe-r-oz closed this Dec 8, 2024
@Fe-r-oz Fe-r-oz deleted the fa/checkcommutativealgebra branch December 8, 2024 09:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant