Macaulay2 » Documentation
Packages » ExteriorExtensions » exteriorExtension
next | previous | forward | backward | up | index | toc

exteriorExtension -- Make an extension of an exterior algebra

Description

This module sets the functions and parameters that make the required algebra. It constructs a natural graded algebra \(\mathfrak{a}\), with \(\mathfrak{a}_0 = \mathfrak{sl}_n\), and \(\mathfrak{a}_1= \bigwedge^k \mathbb{C}^n\), and \(\mathfrak{a}_i\) for \(i>1\) defined as needed to make the algebra closed. Provides some functionalitity for computations with the algebra. Sometimes we build a known algebra. Let's see how this might work.

i1 : ea24 = exteriorExtension(2, 4, QQ)

o1 = ExteriorExtension{...14...}

o1 : ExteriorExtension

We have set the algebra \(\mathfrak{sl}_2(\mathbb C) \oplus \bigwedge^{2}\mathbb{C}\). The functions associated to this algebra are stored by the symbol we assign the output. Let's see if the bilinear bracket satisfies the Lie algebra axioms at least at random points in each graded piece of the algebra: i.e. we check skew-commutativity and the Jacobi identity.

i2 : A = makeTraceless random(QQ^4, QQ^4)

o2 = | 403/140 7/9      7        5/4      |
     | 9/4     -129/140 3/7      2/9      |
     | 3/4     7/10     -107/140 3/10     |
     | 7/4     7/3      6        -167/140 |

              4       4
o2 : Matrix QQ  <-- QQ
i3 : B = makeTraceless random(QQ^4, QQ^4)

o3 = | 41/12 7/8  5/3    5/7    |
     | 10/9  -3/4 7/2    5/9    |
     | 10    5    -71/60 5/3    |
     | 3/2   2/5  6/5    -89/60 |

              4       4
o3 : Matrix QQ  <-- QQ
i4 : ea24.bracket(A, B) + ea24.bracket(B, A)

o4 = 0

              4       4
o4 : Matrix QQ  <-- QQ
i5 : ea24.ad(ea24.bracket(A, B)) - ea24.bracket(ea24.ad(A), ea24.ad(B))

o5 = 0

              21       21
o5 : Matrix QQ   <-- QQ

We shouldn't be surprised that we get 0 for both since the grade 0 piece is a Lie algebra by assumption.

i6 : A = random(2, ea24.appendage)

     4       3       4        9       5       5
o6 = -e e  + -e e  + -e e  + --e e  + -e e  + -e e
     3 0 1   7 0 2   7 1 2   10 0 3   9 1 3   9 2 3

o6 : QQ[e ..e ]
         0   3
i7 : B = random(2, ea24.appendage)

     6               2       5       8       9
o7 = -e e  + 6e e  + -e e  + -e e  + -e e  + -e e
     7 0 1     0 2   9 1 2   4 0 3   5 1 3   4 2 3

o7 : QQ[e ..e ]
         0   3
i8 : ea24.bracket(A, B) + ea24.bracket(B, A)

o8 = 0

                        4                 4
o8 : Matrix (QQ[e ..e ])  <-- (QQ[e ..e ])
                 0   3             0   3
i9 : ea24.ad(ea24.bracket(A, B)) - ea24.bracket(ea24.ad(A), ea24.ad(B))

o9 = 0

              21       21
o9 : Matrix QQ   <-- QQ

For both points in grade 1 we see the axioms hold at least for random elements.

i10 : A = makeTraceless random(QQ^4, QQ^4)

o10 = | -11/30 4      1/7   3/8   |
      | 9/8    -23/90 7/5   5/2   |
      | 1/8    9/10   -7/18 1/6   |
      | 10/3   5/4    5/7   91/90 |

               4       4
o10 : Matrix QQ  <-- QQ
i11 : B = random(2, ea24.appendage)

               10       3       8       9       3
o11 = 10e e  + --e e  + -e e  + -e e  + -e e  + -e e
         0 1    9 0 2   4 1 2   3 0 3   5 1 3   5 2 3

o11 : QQ[e ..e ]
          0   3
i12 : ea24.bracket(A, B) + ea24.bracket(B, A)

o12 = 0

o12 : QQ[e ..e ]
          0   3
i13 : ea24.ad(ea24.bracket(A, B)) - ea24.bracket(ea24.ad(A), ea24.ad(B))

o13 = 0

               21       21
o13 : Matrix QQ   <-- QQ

For a point in grade 0 and a point in grade 1 we see the axioms hold. Caveat: It's important to make the matrix traceless, otherwise the Jacobi identity doesn't work.

i14 : printWidth =200;
i15 : K = KillingMatrix ea24

o15 = | 20  -10 0   0  0  0  0  0  0  0  0  0  0  0  0  0   0  0   0   0  0   |
      | -10 20  -10 0  0  0  0  0  0  0  0  0  0  0  0  0   0  0   0   0  0   |
      | 0   -10 20  0  0  0  0  0  0  0  0  0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  0  0  10 0  0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  0  0  0  10 0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  0  0  0  0  10 0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  0  0  0  0  0  10 0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  0  0  0  0  0  0  10 0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  0  0  0  0  0  0  0  10 0   0  0   0   0  0   |
      | 0   0   0   10 0  0  0  0  0  0  0  0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  10 0  0  0  0  0  0  0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  10 0  0  0  0  0  0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  10 0  0  0  0  0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  10 0  0  0  0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  0  10 0  0  0  0  0  0  0   0  0   0   0  0   |
      | 0   0   0   0  0  0  0  0  0  0  0  0  0  0  0  0   0  0   0   0  -10 |
      | 0   0   0   0  0  0  0  0  0  0  0  0  0  0  0  0   0  0   0   10 0   |
      | 0   0   0   0  0  0  0  0  0  0  0  0  0  0  0  0   0  0   -10 0  0   |
      | 0   0   0   0  0  0  0  0  0  0  0  0  0  0  0  0   0  -10 0   0  0   |
      | 0   0   0   0  0  0  0  0  0  0  0  0  0  0  0  0   10 0   0   0  0   |
      | 0   0   0   0  0  0  0  0  0  0  0  0  0  0  0  -10 0  0   0   0  0   |

               21       21
o15 : Matrix QQ   <-- QQ
i16 : rank K

o16 = 21

The Killing matrix is \(21 \times 21\) and non-degenerate. The only possibility is \(\mathfrak{sp}_6\). One checks that the Killing matrix has a full set of real eigenvectors, so the isomorphism of \(\mathfrak{a}\) and \(\mathfrak{sp}_6\) holds over the real numbers.

i17 : toList eigenvalues K

o17 = {34.1421, 20, 5.85786, 10, -10, 10, -10, 10, -10, 10, -10, 10, -10, 10, -10, 10, -10, 10, -10, 10, -10}

o17 : List
i18 : ea36 = exteriorExtension(3, 6, QQ)

o18 = ExteriorExtension{...14...}

o18 : ExteriorExtension

Let's try a slightly larger example.

i19 : printWidth = 200

o19 = 200
i20 : A = ea36.ad first ea36.bases#1

o20 = | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  1/2 |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  1   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  3/2 |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  1   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  1/2 |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 -1 0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  1 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 -1 0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 -1 0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  1 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 -1 0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 -1 0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  1 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  -1 0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 -1 0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  -1 0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  -1 0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 1 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 1 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 1 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  -1 0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  -1 0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |
      | 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0 0 0 0 0  0  0  0 0 0 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0  0 0  0   |

               55       55
o20 : Matrix QQ   <-- QQ

Produces the \(55 \times 55\) adjoint matrix associated to the first basis vector of \(\mathfra{a}_1\), and computes the ranks of the blocks for each power.

i21 : ea36.prettyBlockPowerRanks A

      +---+---+---+---+-----+
o21 = |g00|g10|g01|g11|total|
      +---+---+---+---+-----+
      |0  |10 |10 |0  |20   |
      +---+---+---+---+-----+
      |0  |0  |0  |1  |1    |
      +---+---+---+---+-----+
      |0  |0  |0  |0  |0    |
      +---+---+---+---+-----+
      |0  |0  |0  |0  |0    |
      +---+---+---+---+-----+
      |0  |0  |0  |0  |0    |
      +---+---+---+---+-----+

This computes the ranks of the blocks for each power of the matrix. The blocks are determined by the dimensions of the graded pieces of the algebra.

Ways to use exteriorExtension:

  • exteriorExtension(ZZ,ZZ)
  • exteriorExtension(ZZ,ZZ,Ring)
  • exteriorExtension(ZZ,ZZ,Symbol)
  • exteriorExtension(ZZ,ZZ,Symbol,Ring)

For the programmer

The object exteriorExtension is a method function.


The source of this document is in ExteriorExtensions.m2:415:0.