-
-
Notifications
You must be signed in to change notification settings - Fork 454
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Addition of Chow ring ideal and Chow ring classes #38281
base: develop
Are you sure you want to change the base?
Conversation
Documentation preview for this PR (built with commit 980c63f; changes) is ready! 🎉 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And similar comments to similar classes/parts of code.
src/sage/matroids/chow_ring.py
Outdated
|
||
..MATH:: | ||
|
||
A(M)_R := R[y_{e_1}, \ldots, y_{e_n}, x_{F_1}, \ldots, x_{F_k}] / (I_M + J_M) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A(M)_R := R[y_{e_1}, \ldots, y_{e_n}, x_{F_1}, \ldots, x_{F_k}] / (I_M + J_M) | |
A(M)_R := R[y_{e_1}, \ldots, y_{e_n}, x_{F_1}, \ldots, x_{F_k}] / (I_M + J_M), |
src/sage/matroids/chow_ring.py
Outdated
A(M)_R := R[x_{F_1}, \ldots, x_{F_k}] / I_{af}M | ||
|
||
where `I_{af}M` is the augmented Chow ring ideal of matroid `M` of atom-free presentation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A(M)_R := R[x_{F_1}, \ldots, x_{F_k}] / I_{af}M | |
where `I_{af}M` is the augmented Chow ring ideal of matroid `M` of atom-free presentation. | |
A(M)_R := R[x_{F_1}, \ldots, x_{F_k}] / I_M^{af}, | |
where `I_M^{af}` is the augmented Chow ring ideal of matroid `M` in the atom-free presentation. |
src/sage/matroids/chow_ring.py
Outdated
else: | ||
self._ideal = ChowRingIdeal_nonaug(M, R) | ||
C = CommutativeRings().Quotients() & GradedAlgebrasWithBasis(R).FiniteDimensional() | ||
QuotientRing_generic.__init__(self, R=self._ideal.ring(), I=self._ideal, names=self._ideal.ring().variable_names(), category=C) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
QuotientRing_generic.__init__(self, R=self._ideal.ring(), I=self._ideal, names=self._ideal.ring().variable_names(), category=C) | |
QuotientRing_generic.__init__(self, R=self._ideal.ring(), | |
I=self._ideal, | |
names=self._ideal.ring().variable_names(), | |
category=C) |
So it is closer to 80 char/ line.
src/sage/matroids/chow_ring.py
Outdated
import sage.misc.latex as latex | ||
return "%s/%s" % (latex.latex(self._ideal.ring()), latex.latex(self._ideal)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
import sage.misc.latex as latex | |
return "%s/%s" % (latex.latex(self._ideal.ring()), latex.latex(self._ideal)) | |
From sage.misc.latex import latex | |
return "{} / {}".format(latex(self._ideal.ring()), latex(self._ideal)) |
src/sage/matroids/chow_ring.py
Outdated
TESTS:: | ||
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TESTS:: | |
TESTS:: | |
src/sage/matroids/chow_ring_ideal.py
Outdated
sage: ch | ||
Chow ring ideal of Fano: Binary matroid of rank 3 on 7 elements, type (3, 0) | ||
""" | ||
return "Chow ring ideal of {}".format(self._matroid) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn’t this be more specific? Also, please add a _latex_()
method.
src/sage/matroids/chow_ring_ideal.py
Outdated
Returns the Groebner basis of the Chow ring ideal. | ||
|
||
EXAMPLES:: | ||
|
||
sage: from sage.matroids.basis_matroid import BasisMatroid | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Returns the Groebner basis of the Chow ring ideal. | |
EXAMPLES:: | |
sage: from sage.matroids.basis_matroid import BasisMatroid | |
Return the Groebner basis of `self`. | |
EXAMPLES:: | |
sage: from sage.matroids.basis_matroid import BasisMatroid |
It would be better to use the standard Sage global namespace way to build the matroid rather than via an import.
|
||
A(M)_R := R[y_{e_1}, \ldots, y_{e_n}, x_{F_1}, \ldots, x_{F_k}] / (I_M + J_M) | ||
|
||
where `(I_M + J_M)` is the augmented Chow ring ideal of matroid `M` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
where `(I_M + J_M)` is the augmented Chow ring ideal of matroid `M` | |
where `(I_M + J_M)` is the :class:`augmented Chow ring ideal | |
<sage.matroids.chow_ring_ideal.ChowRingIdeal_fy>` | |
of the matroid `M` in the |
* ``"atom-free" - Atom-free presentation* | ||
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* ``"atom-free" - Atom-free presentation* | |
* ``"atom-free" - Atom-free presentation* | |
This PR is focused on addition of classes for Chow ring ideal and Chow ring of matroids.
Check relevant issue.
The ideals classes consist of the Chow ring ideal and Augmented Chow ring ideal, with Gröbner basis for each of them.
The Chow ring class is an initial version.
@tscrim
📝 Checklist
⌛ Dependencies