# [GAP Forum] [GAP Support] SubAlgebraModule of an eigenvector of the algebra element?

degraaf at science.unitn.it degraaf at science.unitn.it
Thu Aug 19 17:11:04 BST 2010

```Dear Dima,

One way is to set up a map from the vector space to the module.

gap> regmats := [
>  [ [ 0, 2, 0, 0 ], [ 1, 1, 0, 0 ], [ 0, 0, 0, 2 ], [ 0, 0, 1, 1 ] ],
>  [ [ -2, 0, -4, -4 ], [ 0, 0, 0, 4 ], [ 1, 1, 0, 2 ], [ 0, -1, 0, -2 ] ],
>  [ [ 0, 0, 0, 8 ], [ -2, 0, -4, 0 ], [ 0, -2, 0, -4 ], [ 1, 0, 0, 0 ] ],
> \$0 ] ],
>     \$ ] ] ];
[ [ [ 0, 2, 0, 0 ], [ 1, 1, 0, 0 ], [ 0, 0, 0, 2 ], [ 0, 0, 1, 1 ] ],
[ [ -2, 0, -4, -4 ], [ 0, 0, 0, 4 ], [ 1, 1, 0, 2 ], [ 0, -1, 0, -2 ] ],
[ [ 0, 0, 0, 8 ], [ -2, 0, -4, 0 ], [ 0, -2, 0, -4 ], [ 1, 0, 0, 0 ] ],
[ [ 0, 0, 4, 0 ], [ 1, -2, 2, -4 ], [ -1, 0, -2, 0 ], [ -1/2, 1, 0, 0 ] ],
[ [ 1, -2, 0, -4 ], [ 0, 0, 2, 0 ], [ 0, 1, 1, 0 ], [ -1/2, 0, -1, 0 ] ] ]
gap> es := First(Eigenspaces(Rationals,
> TransposedMat(regmats[1])),x->Dimension(x)=2);
<vector space of dimension 2 over Rationals>
gap> A := AlgebraWithOne(Rationals, regmats);
<algebra-with-one over Rationals, with 5 generators>
gap> W:= Rationals^4;
( Rationals^4 )
gap> M:=LeftAlgebraModule(A,\*,W);
<left-module over <algebra-with-one over Rationals, with 5 generators>>
gap> f:= LeftModuleHomomorphismByImages( W, M, Basis(W), Basis(M) );
CanonicalBasis( ( Rationals^4 ) ) -> Basis( <
4-dimensional left-module over <algebra-with-one over Rationals, with
5 generators>>, [ [ 1, 0, 0, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 0 ],
[ 0, 0, 0, 1 ] ] )
gap> V:=SubAlgebraModule(M,[Image( f, Basis(es)[1] )]);
<left-module over <algebra-with-one over Rationals, with 5 generators>>
gap> MatrixOfAction(Basis(V),regmats[1]);
[ [ 2, 2 ], [ 0, -1 ] ]

Best wishes,

Willem

On Thu, Aug 19, 2010 at 4:40 PM, Asst. Prof. Dmitrii (Dima) Pasechnik
<dima at ntu.edu.sg> wrote:
> Dear all,
>
> I need to construct the action of a matrix algebra A on an A-invariant
> subspace,
> which is spanned by an eigenvector of one of matrix generators.
> And I get a weird type clash that I don't know how to get around:
>
> regmats := [
>  [ [ 0, 2, 0, 0 ], [ 1, 1, 0, 0 ], [ 0, 0, 0, 2 ], [ 0, 0, 1, 1 ] ],
>  [ [ -2, 0, -4, -4 ], [ 0, 0, 0, 4 ], [ 1, 1, 0, 2 ], [ 0, -1, 0, -2 ] ],
>  [ [ 0, 0, 0, 8 ], [ -2, 0, -4, 0 ], [ 0, -2, 0, -4 ], [ 1, 0, 0, 0 ] ],
>  [ [ 0, 0, 4, 0 ], [ 1, -2, 2, -4 ], [ -1, 0, -2, 0 ], [ -1/2, 1, 0, 0 ] ],
>  [ [ 1, -2, 0, -4 ], [ 0, 0, 2, 0 ], [ 0, 1, 1, 0 ], [ -1/2, 0, -1, 0 ] ] ];
> es := First(Eigenspaces(Rationals,
> TransposedMat(regmats[1])),x->Dimension(x)=2);
> A := AlgebraWithOne(Rationals, regmats);
> M:=LeftAlgebraModule(A,\*,Rationals^4);
> V:=SubAlgebraModule(M,[Basis(es)[1]]);
>
> and I get at the last line:
>
> Error, no method found! For debugging hints type ?Recovery from NoMethodFound
> Error, no 1st choice method found for `SubAlgebraModule' on 2
> arguments called\
>  from
> <function>( <arguments> ) called from read-eval-loop
> Entering break read-eval-print loop ...
> you can 'quit;' to quit to outer loop, or
> you can 'return;' to continue
> brk>
>
> while
> gap> Basis(es)[1];
> [ 1, 1, 0, 0 ]
> and also
> gap> BM:=Basis(M);
> Basis( <4-dimensional left-module over <algebra-with-one over Rationals, with
> 5 generators>>, [ [ 1, 0, 0, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 0 ],
>  [ 0, 0, 0, 1 ] ] )
> gap>  V:=SubAlgebraModule(M,[BM[1]+BM[2]]);
> <left-module over <algebra-with-one over Rationals, with 5 generators>>
> gap> MatrixOfAction(Basis(V),regmats[1]);
> [ [ 2, 2 ], [ 0, -1 ] ]
>
> does what it should.
>
> But I do not understand how to write GAP code to compute the decomposition of
> my vector Basis(es)[1] in the basis BM of M !
>
> Dmitrii Pasechnik
>
> CONFIDENTIALITY: This email is intended solely for the person(s)
> named and may be confidential and/or privileged. If you are not the
> intended recipient, please delete it, notify us and do not copy,
> use, or disclose its content. Thank you.
>
> Towards A Sustainable Earth: Print Only When Necessary
>
> _______________________________________________
> Support mailing list
> Support at gap-system.org
> http://mail.gap-system.org/mailman/listinfo/support
>

```