Skip to content

Direct Implementation of Chow Rings of Matroids #37987

Open
@25shriya

Description

@25shriya

This Google Summer of Code project aims to build a custom class in SageMath for the Chow rings of matroids by using a result which explicitly computes a Gröbner basis for the same. This implementation would improve speed and provide many additional features to the class, resulting from the properties the basis of monomials of the Chow ring enjoys.
Check relevant issue
@tscrim

The Chow ring ideal is implemented as an abstract class (ChowRingIdeal). The ideal defined in this paper is implemented as a custom class (a subclass of MPolynomialIdeal and ChowRingIdeal). The groebner_basis() method has been rewritten and implemented based on Theorem 2.19 of the above paper.

The FY-presentation and atom-free presentation of the augmented Chow Ring Ideal are also implemented as concrete classes which similarly inherit from MPolynomialIdeal and ChowRingIdeal. The implementation of their groebner_basis() method is taken from this paper.

The new implementation of Chow rings is a custom class (a subclass of QuotientRing_generic). This initial version of the custom class takes the ideal from the subclasses of ChowRingIdeal. It also includes a basis() method that returns the monomial basis of the Chow ring given in the above two papers.

The next step would be implementing the Poincare duality and Hard Lefchetz properties. This would be done by implementing G-equivariant injective and bijective maps from Theorem 1.1 of this paper.

The initial version of ChowRingIdeal and ChowRing classes have been implemented with the final set of tests left to be passed. A challenging aspect of this project was translating the mathematics to Python code, and making it compatible with the pre-existing code.

The following PRs have been worked on as a part of this project:

  1. set_legend_options example
  2. _repr_ method update
  3. Addition of Chow ring ideal and Chow ring class

The following PRs have been worked on as an extension of this project:

  1. Addition of Kahler algebras as a category
  2. Addition of new presentations to Chow rings of matroids

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions