next | previous | forward | backward | up | index | toc

# MatchingFields -- A package for working with matching fields for Grassmannians and partial flag varieties

## Description

A matching field $\Lambda$ for the Grassmannian Gr($k$, $n$), is a simple combinatorial object. It may be thought of as a choice of initial term for each maximal minor of a generic $k \times n$ matrix of variables. For example, take $k = 2$ and $n = 4$. Let $X = (x_{i,j})$ be a generic $2 \times 4$ matrix of variables. Suppose that a matching field $\Lambda$ has tuples $\{12, 31, 14, 32, 24, 34\}$. This means that $\Lambda$ distinguishes the term $x_{1,1} x_{2,2}$ from the maximal minors on columns $1$ and $2$ of $X$: $x_{1,1} x_{2,2} - x_{1,2} x_{2,1}$. Similarly for the terms $x_{1,3} x_{2,1}$, $x_{1,1} x_{2,4}$, and so on.

If the terms of all maximal minors distinguished by a matching field are their initial terms with respect to a fixed weight matrix, then we say that the matching field is coherent. Each such weight matrix induces a weight vector on the Pluecker coordinates of the Grassmannian. If the initial ideal of the Pluecker ideal of the Grassmannian with respect to this weight vector is a toric ideal, i.e. a prime binomial ideal, then we say that the matching field gives rise to a toric degeneration of the Grassmannian. By a result of Sturmfels (1996), a matching field gives rise to a toric degeneration if and only if the maximal minors of $X$ form a subalgebra basis (or SAGBI basis) with respect to the order induced by the weight matrix.

This concept naturally generalises to partial flag varieties under the Pluecker embedding.

The MatchingFields package gives basic functions, to construct many of the well-studied examples of matching fields. Given a matching field $L$, it is straight forward to check whether $L$ is coherent, what is a weight matrix that induces it, and whether is gives rise to a toric degeneration. The package also produces polytopes associated to matching fields and Newton-Okounkov bodies.

 i1 : L = grMatchingField(2, 4, {{1,2}, {3,1}, {1,4}, {3,2}, {2,4}, {3,4}}) o1 = Grassmannian Matching Field for Gr(2, 4) o1 : GrMatchingField i2 : isCoherent L o2 = true i3 : getWeightMatrix L o3 = | 0 0 0 0 | | 0 -1 1 -2 | 2 4 o3 : Matrix ZZ <-- ZZ i4 : isToricDegeneration L o4 = true

## Version

This documentation describes version 1.2 of MatchingFields.

## Source code

The source code from which this documentation is derived is in the file MatchingFields.m2.

## Exports

• Types
• Functions and commands
• Methods
• algebraicMatroid(GrMatchingField) -- see algebraicMatroid -- The algebraic matroid of the tropical cone that induces the matroid
• algebraicMatroidBases(GrMatchingField) -- see algebraicMatroidBases -- The bases of the algebraic matroid
• algebraicMatroidCircuits(GrMatchingField) -- see algebraicMatroidCircuits -- The bases of the algebraic matroid
• amalgamation(ZZ,GrMatchingField) -- see amalgamation -- The $i$th amalgamation of a tope field
• amalgamation(ZZ,TopeField) -- see amalgamation -- The $i$th amalgamation of a tope field
• diagonalMatchingField(List,ZZ) -- see diagonalMatchingField -- the diagonal matching field
• diagonalMatchingField(ZZ) -- see diagonalMatchingField -- the diagonal matching field
• diagonalMatchingField(ZZ,ZZ) -- see diagonalMatchingField -- the diagonal matching field
• flMatchingField(List,Matrix) -- see flMatchingField -- Construct a matching field for a partial flag variety
• flMatchingField(List,ZZ,List) -- see flMatchingField -- Construct a matching field for a partial flag variety
• flMatchingField(Matrix) -- see flMatchingField -- Construct a matching field for a partial flag variety
• FlMatchingField == FlMatchingField -- equality of flag matching fields
• getGrMatchingFields(FlMatchingField) -- see getGrMatchingFields -- The Grassmannian matching fields of a Flag matching field
• getTuples(FlMatchingField) -- see getTuples -- The tuples of a matching field
• getTuples(GrMatchingField) -- see getTuples -- The tuples of a matching field
• getTuples(TopeField) -- tuples of a tope field
• getWeightMatrix(FlMatchingField) -- see getWeightMatrix -- weight matrix that induces the matching field
• getWeightMatrix(GrMatchingField) -- see getWeightMatrix -- weight matrix that induces the matching field
• getWeightPluecker(FlMatchingField) -- see getWeightPluecker -- weight of the Pluecker variables induced by the weight matrix
• getWeightPluecker(GrMatchingField) -- see getWeightPluecker -- weight of the Pluecker variables induced by the weight matrix
• grMatchingField(Matrix) -- see grMatchingField -- Construct a matching field for the Grassmannian variety
• grMatchingField(ZZ,ZZ,List) -- see grMatchingField -- Construct a matching field for the Grassmannian variety
• GrMatchingField == GrMatchingField -- equality of Grassmannian matching fields
• isCoherent(FlMatchingField) -- see isCoherent -- Is the matching field coherent
• isCoherent(GrMatchingField) -- see isCoherent -- Is the matching field coherent
• isToricDegeneration(FlMatchingField) -- see isToricDegeneration -- Does the matching field give rise to a toric degeneration
• isToricDegeneration(GrMatchingField) -- see isToricDegeneration -- Does the matching field give rise to a toric degeneration
• linearSpanTropCone(GrMatchingField) -- see linearSpanTropCone -- linear span of the tropical cone associated to the matching field
• matchingFieldFromPermutation(List,ZZ,List) -- see matchingFieldFromPermutation -- matching field parametrised by permutations
• matchingFieldFromPermutation(ZZ,ZZ,List) -- see matchingFieldFromPermutation -- matching field parametrised by permutations
• matchingFieldIdeal(FlMatchingField) -- see matchingFieldIdeal -- The toric ideal of a matching field
• matchingFieldIdeal(GrMatchingField) -- see matchingFieldIdeal -- The toric ideal of a matching field
• matchingFieldPolytope(FlMatchingField) -- see matchingFieldPolytope -- The polytope of a matching field
• matchingFieldPolytope(GrMatchingField) -- see matchingFieldPolytope -- The polytope of a matching field
• matchingFieldRingMap(FlMatchingField) -- see matchingFieldRingMap -- monomial map of the matching field
• matchingFieldRingMap(GrMatchingField) -- see matchingFieldRingMap -- monomial map of the matching field
• matroidSubdivision(GrMatchingField) -- see matroidSubdivision -- The matroid subdivision induced by the Pluecker weight of a coherent matching field
• matroidSubdivision(ZZ,ZZ,List) -- see matroidSubdivision -- The matroid subdivision induced by the Pluecker weight of a coherent matching field
• net(FlMatchingField) -- see net(GrMatchingField) -- display a matching field
• net(GrMatchingField) -- display a matching field
• net(TopeField) -- display a tope field
• NOBody(FlMatchingField) -- see NOBody -- Newton-Okounkov body of the matching field
• NOBody(GrMatchingField) -- see NOBody -- Newton-Okounkov body of the matching field
• plueckerAlgebra(FlMatchingField) -- see plueckerAlgebra -- Pluecker algebra of a (partial) flag variety
• plueckerAlgebra(GrMatchingField) -- see plueckerAlgebra -- Pluecker algebra of a (partial) flag variety
• Grassmannian(GrMatchingField) -- see plueckerIdeal -- The Pluecker ideal of a matching field
• plueckerIdeal(FlMatchingField) -- see plueckerIdeal -- The Pluecker ideal of a matching field
• plueckerIdeal(GrMatchingField) -- see plueckerIdeal -- The Pluecker ideal of a matching field
• plueckerMap(FlMatchingField) -- see plueckerMap -- The ring map of the Pluecker embedding
• plueckerMap(GrMatchingField) -- see plueckerMap -- The ring map of the Pluecker embedding
• topeField(GrMatchingField) -- see topeField -- Constructor of a tope field
• topeField(GrMatchingField,List) -- see topeField -- Constructor of a tope field
• weightMatrixCone(FlMatchingField) -- see weightMatrixCone -- The cone of weight matrices that induce the matching field
• weightMatrixCone(GrMatchingField) -- see weightMatrixCone -- The cone of weight matrices that induce the matching field
• Symbols
• ExtraZeroRows -- enlarging a matrix with zero rows
• VerifyToricDegeneration -- see linearSpanTropCone -- linear span of the tropical cone associated to the matching field
• RowNum -- the row of the diagonal weight matrix to permute
• ScalingCoefficient -- scale the permuted row of the weight matrix
• PowerValue -- see UsePrimePowers -- use a diagonal weight matrix with multiples of certain powers
• UsePrimePowers -- use a diagonal weight matrix with multiples of certain powers

## For the programmer

The object MatchingFields is .