Macaulay2 » Documentation
Packages » Brackets :: GCMatrix
next | previous | forward | backward | up | index | toc

GCMatrix -- Matrices of Grassmann-Cayley algebra / bracket-ring expressions

Description

An object of class GCMatrix is a matrix whose entries are GCExpressions belonging to a common AbstractGCRing (missing documentation) . These matrices support the usual operations -- addition, multiplication, transposition, row/column slicing, scalar multiplication on either side, and determinant -- and are built via matrix(B, L) where B is the bracket ring (or GC algebra) and L is a list of rows of GCExpressions.

i1 : B = bracketRing(6, 3)

o1 = B
      6,3

o1 : BracketRing
i2 : M = matrix(B, for i from 4 to 6 list {[1 2 i]_B, [1 i 3]_B, [i 2 3]_B})

o2 = | [124] -[134] [234] |
     | [125] -[135] [235] |
     | [126] -[136] [236] |

o2 : GCMatrix
i3 : class M

o3 = GCMatrix

o3 : Type
i4 : normalForm det M

o4 = -[456]*[123]^2

o4 : GCExpression
i5 : transpose M

o5 = | [124]  [125]  [126]  |
     | -[134] -[135] -[136] |
     | [234]  [235]  [236]  |

o5 : GCMatrix
i6 : M_(0, 0)

o6 = [124]

o6 : GCExpression
i7 : M^{0}             -- first row

o7 = | [124] -[134] [234] |

o7 : GCMatrix
i8 : M_{0}             -- first column

o8 = | [124] |
     | [125] |
     | [126] |

o8 : GCMatrix
i9 : entries (M + M)

o9 = {{2*[124], -2*[134], 2*[234]}, {2*[125], -2*[135], 2*[235]}, {2*[126],
     ------------------------------------------------------------------------
     -2*[136], 2*[236]}}

o9 : List
i10 : 2 * M             -- numeric scalar multiplication

o10 = | 2*[124] -2*[134] 2*[234] |
      | 2*[125] -2*[135] 2*[235] |
      | 2*[126] -2*[136] 2*[236] |

o10 : GCMatrix

The determinant of a generic 3x3 GCMatrix over the bracket ring $B_{6,3}$ recovers the classical Sturmfels identity -[456]*[123]^2 after taking the normalForm.

See also

Methods that use an object of class GCMatrix:

  • determinant(GCMatrix) (missing documentation)
  • entries(GCMatrix) (missing documentation)
  • GCExpression * GCMatrix (missing documentation)
  • GCMatrix * GCExpression (missing documentation)
  • GCMatrix * GCMatrix (missing documentation)
  • GCMatrix * Number (missing documentation)
  • GCMatrix * RingElement (missing documentation)
  • GCMatrix + GCMatrix (missing documentation)
  • GCMatrix ^ List (missing documentation)
  • GCMatrix ^ ZZ (missing documentation)
  • GCMatrix _ List (missing documentation)
  • GCMatrix _ Sequence (missing documentation)
  • GCMatrix _ ZZ (missing documentation)
  • net(GCMatrix) (missing documentation)
  • Number * GCMatrix (missing documentation)
  • ring(GCMatrix) (missing documentation)
  • RingElement * GCMatrix (missing documentation)
  • transpose(GCMatrix) (missing documentation)

For the programmer

The object GCMatrix is a type, with ancestor classes HashTable < Thing.


The source of this document is in /build/reproducible-path/macaulay2-1.26.06+ds/M2/Macaulay2/packages/Brackets.m2:732:0.