nrussoniello

10 Reputation

One Badge

5 years, 6 days

MaplePrimes Activity


These are questions asked by nrussoniello

I have the following program which constructs the multiplication table, CI, for a matrix Lie algebra and evaluates the difference between CI's row dimension and its rank. The code is a little convoluted because "LieTable" formats the entries very strangely and forces incorrect rank values.

The matrix CI is constructed rather quickly (within a few seconds), and everything works well with "small" examples (up to 12 basis elements has evaluated within seconds). However, the example I've included is for a 27-dimensional Lie algebra. As I stated, CI is constructed quickly, even in larger examples, but the rank evaluation (i.e., LinearAlgebra:-Rank(CI)) has never completed for the example I've included. I let it run for about 3 hours before shutting it down.

I have an older Macbook Air which I am using to run these computations. Could this simply be an issue of not enough computing power?

I have attempted to import the matrix CI into Mathematica (to see if it was simply a limitation of Maple), but that's its own headache (reads entries of the matrix incorrectly).

 

Any recommendations would help. If this is an issue of computing power, I can get access to a more powerful system soon. It doesn't seem that the code itself would cause the issue, since it is not the construction of the matrix which is giving me issues, it is the evaluation of the rank. I am rather naive about Maple (and programming in general) though, so I may be wrong.

 

Index_and_Contact.mw

I am trying to compute the rank of the Commutator Matrix of a Lie algebra. That is, I wish to construct a matrix version of the multiplication table for a given matrix Lie algebra, and then compute the rank of this matrix.

 

Download CommutatorExample.mw
 

with(DifferentialGeometry); with(LieAlgebras)

``

``

M := [Matrix([[1, 0], [0, 0]]), Matrix([[0, 0], [0, 1]]), Matrix([[0, 1], [0, 0]])]

[Matrix(%id = 18446744078224010646), Matrix(%id = 18446744078224010766), Matrix(%id = 18446744078224003190)]

(1)

L := LieAlgebraData(M, Alg1)

_DG([["LieAlgebra", Alg1, [3, table( [ ] )]], [[[1, 3, 3], 1], [[2, 3, 3], -1]]])

(2)

``

DGsetup(L)

`Lie algebra: Alg1`

(3)

T := MultiplicationTable("LieTable")

Matrix(%id = 18446744078223968366)

(4)

``

``

``

``

 

 

I have the above, but I run into two issues:

1. It doesn't have matrix format, so Rank is undefined (I have tried convert(T,matrix) to no avail),

2. I need to be able to remove the first and second rows and columns from T (because these rows/columns are occupied by the Lie algebra's basis elements, and separating lines, respectively).

 

I believe that if I can convert T into a matrix somehow, I can simply use SubMatrix to remove the things I don't want, and then Rank should work.

 

Any help would be greatly appreciated!

 

P.S. Thanks to dharr1338 for the suggestion of including the worksheet, I'm very new to Maple and MaplePrimes, so I appreciate the patience.

Page 1 of 1