Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Working with group algebras

I want to work with group algebras in SageMath. But they do not behave as they should. Is this a bug or do I do something wrong? For my application, I need to work with a group defined by a presentation (the bug does not appear with permutation groups). So the simplest example should be $\mathbb{F}_2[C_2]$, with $C_2 = \langle X : X^2 = 1\rangle$.

sage: F.<X> = FreeGroup(1)
sage: G = F / [X^2]
sage: display(G)
Finitely presented group < X | X^2 >
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2 == A.one()
False

It seems that the relations of $G$ will not be presented in $R[G]$. Why?

Working with group algebras

I want to work with group algebras in SageMath. But they do not behave as they should. Is this a bug or do I do something wrong? For my application, I need to work with a group defined by a presentation (the bug does not appear with permutation groups). presentation. So the simplest example should be $\mathbb{F}_2[C_2]$, with $C_2 = \langle X : X^2 = 1\rangle$.

sage: F.<X> = FreeGroup(1)
sage: G = F / [X^2]
sage: display(G)
Finitely presented group < X | X^2 >
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2 == A.one()
False

It seems that the relations of $G$ will not be presented in $R[G]$. Why?

Let's try to define the group as a permutation group instead. This throws an error.

sage: G = PermutationGroup([[1,2]])
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2
()
sage: A.one()
()
sage: x^2 == A.one()
RuntimeError: There is a bug in the coercion code in Sage.

Working with group algebras

I want to work with group algebras in SageMath. But they do not behave as they should. Is this a bug or do I do something wrong? For my application, I need to work with a group defined by a presentation. So the simplest example should be $\mathbb{F}_2[C_2]$, with $C_2 = \langle X : X^2 = 1\rangle$.

sage: F.<X> = FreeGroup(1)
sage: G = F / [X^2]
sage: display(G)
Finitely presented group < X | X^2 >
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2 == A.one()
False

It seems that the relations of $G$ will not be presented in $R[G]$. Why?

Let's try to define the group as a permutation group instead. This throws an error.

sage: G = PermutationGroup([[1,2]])
PermutationGroup([[2,1]])
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2
()
sage: A.one()
()
sage: x^2 == A.one()
RuntimeError: There is a bug in the coercion code in Sage.

Working with group algebras

I want to work with group algebras in SageMath. But they do not behave as they should. Is this a bug or do I do something wrong? For my application, I need to work with a group defined by a presentation. So the simplest example should be $\mathbb{F}_2[C_2]$, with $C_2 = \langle X : X^2 = 1\rangle$.

sage: F.<X> = FreeGroup(1)
sage: G = F / [X^2]
sage: display(G)
Finitely presented group < X | X^2 >
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2 == A.one()
False

It seems that the relations of $G$ will not be presented in $R[G]$. Why?

Let's try to define the group as a permutation group instead. This throws an error.

sage: G = PermutationGroup([[2,1]])
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2
()
sage: A.one()
()
sage: x^2 == A.one()
RuntimeError: There is a bug in the coercion code in Sage.

There is also an error when I just want to compute $(x+1)^2$.

Working with group algebras

I want to work with group algebras in SageMath. But they do not behave as they should. Is this a bug or do I do something wrong? For my application, I need to work with a group defined by a presentation. So the simplest example should be $\mathbb{F}_2[C_2]$, with $C_2 = \langle X : X^2 = 1\rangle$.

sage: F.<X> = FreeGroup(1)
sage: G = F / [X^2]
sage: display(G)
Finitely presented group < X | X^2 >
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2 == A.one()
False

It seems that the relations of $G$ will not be presented in $R[G]$. Why?

Let's try to define the group as a permutation group instead. This throws an error.

sage: G = PermutationGroup([[2,1]])
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2
()
sage: A.one()
()
sage: x^2 == A.one()
RuntimeError: There is a bug in the coercion code in Sage.

There is also an error when I just want to compute $(x+1)^2$.

PS: SageMath seems to be so buggy that I consider switching to a different CAS.

Working with group algebras

I want to work with group algebras in SageMath. But they do not behave as they should. Is this a bug or do I do something wrong? For my application, I need to work with a group defined by a presentation. So the simplest example should be $\mathbb{F}_2[C_2]$, with $C_2 = \langle X : X^2 = 1\rangle$.

sage: F.<X> = FreeGroup(1)
sage: G = F / [X^2]
sage: display(G)
Finitely presented group < X | X^2 >
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2 == A.one()
False

It seems that the relations of $G$ will not be presented in $R[G]$. Why?

Let's try to define the group as a permutation group instead. This throws an error.

sage: G = PermutationGroup([[2,1]])
sage: A = G.algebra(GF(2))
sage: x = A.gen()
sage: x^2
()
sage: A.one()
()
sage: x^2 == A.one()
RuntimeError: There is a bug in the coercion code in Sage.

There is also an error when I just want to compute $(x+1)^2$.

PS: SageMath seems to be so buggy that I consider switching to a different CAS.