[GAP Forum] Algebras

Max Horn max at quendi.de
Wed Feb 20 14:23:50 GMT 2013


Dear Sandeep,

let me try to address your first question.

On 16.02.2013, at 18:51, Sandeep Murthy wrote:

> Hi,
> 
> 1. I can't make sense of the following result on GAP:
> 
> gap> IsAlgebraWithOne( MatAlgebra( Rationals, 1 ) );
> true
> gap> IsAlgebraWithOne( MatAlgebra( Rationals, 2 ) );
> true
> gap> IsAlgebraWithOne( DirectSumOfAlgebras( MatAlgebra( Rationals, 1 ), MatAlgebra( Rationals, 2 ) ) );
> false
> 
> Surely the result should also be an algebra with one.

Not quite. This (admittedly irritating) behavior is due to the fact that IsAlgebraWithOne does not really check whether its argument is an "algebra with an identity element".

Rather, it checks whether its argument has the *type* AlgebraWithOne, e.g. was created using the constructor AlgebraWithOne() as opposed to Algebra(). Perhaps thinking of it in terms of (mathematical) categories helps: The real numbers certainly are objects in both the category of real associate algebras, and its subcategory of real associative  algebras with identity. Or perhaps think of the difference between a topological space, and a pointed topological space, where single out one specific point.

Here is another, perhaps even more succinct GAP example to emphasis this point:

gap> F:=GF(2);;g:=IdentityMat(4,F);;
gap> IsAlgebra(Algebra(F,[g]));
true
gap> IsAlgebraWithOne(Algebra(F,[g]));
false
gap> IsAlgebra(AlgebraWithOne(F,[g]));
true
gap> IsAlgebraWithOne(AlgebraWithOne(F,[g]));
true


The problem in your example is that DirectSumOfAlgebras is defined in the category of algebras, not of algebras-with-one. You have to coerce the result into an algebra with one:

gap> alg := DirectSumOfAlgebras( MatAlgebra( Rationals, 1 ), MatAlgebra( Rationals, 2 ) );
<algebra over Rationals, with 6 generators>
gap> IsAlgebraWithOne(alg);
false
gap> alg := AsAlgebraWithOne(Rationals,alg);
<algebra-with-one over Rationals, with 6 generators>
gap> IsAlgebraWithOne(alg);
true


Perhaps there should be a DirectSumOfAlgebrasWithOne, or perhaps DirectSumOfAlgebras should simply be enhanced to check if its arguments all are algebras with one, and if so, carry this information through...


Best regards,
Max


More information about the Forum mailing list