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

# Brackets -- Brackets, Grassmann-Cayley Algebra, and Projective Geometry

## Description

Fix integers $n \ge d \ge 1,$ and let $X = (x_{i j})$ be an $n\times d$ matrix of distinct variables in the polynomial ring $k [x_{i j}]$ over a fixed field $k.$ Think of each row of $X$ is a point in the projective space $\mathbb{P}^{d-1}$ of dimension $(d-1)$ over $k,$ so that $X$ as represents a configuration of $n$ points in this projective space. Many interesting geometric properties of this point configuration can be expressed in terms of the maximal minors of $X.$

For notational convenience, it is common to write these minors in bracket notation. A bracket is an expression $[\lambda_1 \lambda_2 \ldots \lambda_d]$ representing the minor of $X$ whose rows are given by indices $1\le \lambda_1 < \lambda_2 < \ldots < \lambda_d \le n.$

Formally, we may consider the map of polynomial rings $$\psi_{n,d} : k \left[ [\lambda_{i_1} \cdots \lambda_{i_d}] \mid 1 \le i_1 < \ldots < i_d \le n \right] \to k [X],$$ $$ [\lambda_{i_1} \cdots \lambda_{i_d}] \mapsto \det \begin{pmatrix} x_{i_1, 1} & \cdots & x_{i_1, d} \\ \vdots & & \vdots & \\ x_{i_d 1} & \cdots & x_{i_d d}\end{pmatrix}. $$

The classical bracket ring $B_{n,d}$ is the image of this map. This is the homogeneous coordinate ring of the Grassmannian of $(n-1)$-dimensional planes in $\mathbb{P}^{d-1}$ under its Plücker embedding.

## Acknowledgement

We thank Thomas Yahl for helpful contributions, and the organizers of the 2023 Macaulay2 workshop in Minneapolis, IMA staff, and acknowledge support from the National Science Foundation grant DMS 2302476.

## References

Sturmfels, Bernd. Algorithms in invariant theory. Springer Science & Business Media, 2008.

## Authors

- Dalton Bidleman <deb0036@auburn.edu>
- Timothy Duff <tduff@missouri.edu>
- Jack Kendrick <jackgk@uw.edu>
- Michael Zeng <zengrf@uw.edu>

## Version

This documentation describes version 0.1 of Brackets, released April 15, 2025.

## Citation

If you have used this package in your research, please cite it as follows:

    @misc{BracketsSource,
      title = {{Brackets: Brackets, Grassmann-Cayley Algebra, and Projective Geometry. Version~0.1}},
      author = {Dalton Bidleman and Timothy Duff and Jack Kendrick and Michael Zeng},
      howpublished = {A \emph{Macaulay2} package available at
        \url{https://github.com/Macaulay2/M2/tree/stable/M2/Macaulay2/packages}}
    }

## Exports

- Types
  - Bracket
  - BracketRing
  - GCAlgebra
  - GCExpression
- Functions and commands
  - bracketRing -- Constructor for bracket rings
  - gc -- Constructor for Grassmann-Cayley algebras.
  - normalForm -- Represent a bracket polynomial in a normal form with respect to a Groebner basis
  - toBracketPolynomial -- Represent an invariant polynomial as a polynomial in brackets
- Methods
  - AbstractGCRing Array (missing documentation)
  - Array _ AbstractGCRing (missing documentation)
  - `bracketRing(AbstractGCRing)` -- see bracketRing -- Constructor for bracket rings
  - `bracketRing(BracketRing)` -- see bracketRing -- Constructor for bracket rings
  - `bracketRing(GCAlgebra)` -- see bracketRing -- Constructor for bracket rings
  - `bracketRing(GCExpression)` -- see bracketRing -- Constructor for bracket rings
  - `bracketRing(VisibleList,ZZ)` -- see bracketRing -- Constructor for bracket rings
  - `bracketRing(ZZ,ZZ)` -- see bracketRing -- Constructor for bracket rings
  - coefficients(GCExpression) (missing documentation)
  - commonRing(GCExpression,GCExpression) (missing documentation)
  - degree(GCExpression) (missing documentation)
  - factor(GCExpression) (missing documentation)
  - `gc(VisibleList,ZZ)` -- see gc -- Constructor for Grassmann-Cayley algebras.
  - GCExpression * GCExpression (missing documentation)
  - GCExpression * Number (missing documentation)
  - GCExpression * RingElement (missing documentation)
  - GCExpression + GCExpression (missing documentation)
  - GCExpression - GCExpression (missing documentation)
  - GCExpression ^ GCExpression -- Shuffle product in the Grassmann-Cayley Algebra
  - GCExpression ^ RingElement (missing documentation)
  - GCExpression ^ ZZ (missing documentation)
  - GCExpression _ BracketRing -- Substituting top-degree Grassmann-Cayley elements into the bracket ring
  - GCExpression _ GCAlgebra (missing documentation)
  - generators(AbstractGCRing) (missing documentation)
  - ideal(BracketRing) (missing documentation)
  - matrix(AbstractGCRing,List) (missing documentation)
  - matrix(BracketRing) (missing documentation)
  - net(AbstractGCRing) (missing documentation)
  - net(BracketRing) (missing documentation)
  - net(GCExpression) (missing documentation)
  - `normalForm(GCExpression)` -- see normalForm -- Represent a bracket polynomial in a normal form with respect to a Groebner basis
  - Number * GCExpression (missing documentation)
  - numColumns(BracketRing) (missing documentation)
  - numgens(AbstractGCRing) (missing documentation)
  - numRows(BracketRing) (missing documentation)
  - ring(AbstractGCRing) (missing documentation)
  - ring(GCExpression) (missing documentation)
  - RingElement * GCExpression (missing documentation)
  - RingElement ^ GCExpression (missing documentation)
  - RingElement _ AbstractGCRing -- Substituting ring elements into bracket rings and GC algebras
  - terms(GCExpression) (missing documentation)
  - `toBracketPolynomial(RingElement,BracketRing)` -- see toBracketPolynomial -- Represent an invariant polynomial as a polynomial in brackets
  - use(AbstractGCRing) (missing documentation)
  - ZZ _ AbstractGCRing (missing documentation)

## For the programmer

The object Brackets is a package, defined in Brackets.m2.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/Brackets.m2:396:0.