Closed mwageringel closed 4 years ago
Branch: u/gh-mwageringel/28574
Commit: 49d5c0b
Dependencies: #28571, #28074
New commits:
5709e61 | 28074: refactor caching of Macaulay2 polynomial rings |
c2d89a0 | Merge tag '9.0.beta0' |
2823dc0 | pass macaulay2 as argument to _macaulay2_init_() |
af595de | 28574: construct Macaulay2 polynomial rings over arbitrary base rings |
e854720 | 28574: fix conversion of polynomials to M2 |
49d5c0b | 28574: convert elements of nested polynomial rings from M2 to sage |
Author: Markus Wageringel
Description changed:
---
+++
@@ -1 +1,7 @@
+This ticket implements conversion to and from Macaulay2 of polynomial rings over arbitrary base rings – nested polynomial rings in particular – as well as their elements.
+This ticket also implements `_macaulay2_()` for polydicts. This is used in elements of nested polynomial rings, for example.
+
+It also fixes an issue where constant polynomials are accidentally converted to elements of the base ring in Macaulay2, not to elements of the polynomial ring.
+
+We add a special case in the conversion of Galois fields, since in Macaulay2 it is more natural to define finite fields as `ZZ/p` rather than `GF p`. This has a positive effect on performance, and simplifies the construction of Macaulay2 polynomial rings.
Changed branch from u/gh-mwageringel/28574 to public/interfaces/m2/28574
reviewer name missing
Reviewer: Franco Saliola
Thanks.
Work Issues: Fix merge conflicts with #28566
Changed dependencies from #28571, #28074 to #28566, #28571, #28074
Branch pushed to git repo; I updated commit sha1. New commits:
03d1460 | 28566: implement _matrix_() in Macaulay2 interface |
5308c90 | 28566: implement conversion of vectors in Macaulay2 interface |
602f6eb | 28566: preserve variable name in Macaulay2 Galois fields |
ce24186 | simplify some doctests |
21025bd | 28566: use ring-preserving constructor for Macaulay2 matrix/vector |
0c1e001 | Merge remote-tracking branch 'origin/public/interfaces/m2/28566' into public/interfaces/m2/28574 |
72abe24 | finish merging |
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
ec1773e | disable caching of M2 conversion of polynomials in quotient rings (change _macaulay2_init_ to _macaulay2_) |
25afa2f | simplify doctest |
19d9995 | 28572: remove unnecessary doctests |
0d90888 | f4 and mgb opts for M2 gb computations |
59b3215 | add documentation and minor fixes |
1ad24c3 | pass F4 and MGB to M2 as strings |
7038ba2 | 28567: run Macaulay2 f4 and mgb doctests over a finite field |
00c028f | 28567: add missing optional doctest flag |
15d35e3 | Merge remote-tracking branch 'origin/public/interfaces/m2/f4etc' into public/interfaces/m2/m2_quotient_rings |
a312b15 | Merge branch 'public/interfaces/m2/m2_quotient_rings' into public/interfaces/m2/28574 |
Changed dependencies from #28566, #28571, #28074 to #28566, #28571, #28572, #28074
Changed work issues from Fix merge conflicts with #28566 to none
In order to make this ticket merge cleanly with some of the other M2 tickets summarized at #28573, I set dependencies and merged the appropriate branches. Provided the dependencies are respected, everything should merge cleanly now.
I am happy with this ticket. Markus, if you accept the proposed merging, then you can set this to positive review.
Work Issues: rebase on #28572
Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:
61ca2db | conversion of quotient rings to macaulay2 & improvements to conversion of ideals |
84702b4 | 28572: fix conversion of quotient rings from Macaulay2 to Sage |
4db4a3c | mark m2 doctests as optional |
80b99b9 | add _macaulay2_init_ method to QuotientRingElement |
c185cff | correct inaccuracy in doctest description |
ca619b8 | properly handle conversion of quotient ring elements & inherit variable names when converting from M2 quotient rings |
3a0e906 | disable caching of M2 conversion of polynomials in quotient rings (change _macaulay2_init_ to _macaulay2_) |
117ab9f | simplify doctest |
3f4f6f5 | 28572: remove unnecessary doctests |
ac2ff35 | 28574: Merge #28572 into 'public/interfaces/m2/28574' |
I have replaced the last merge commit by a new merge with #28572 and still all tests pass on my end.
Franco, please review the merging, though maybe wait for the next beta to see if it merges cleanly.
Changed work issues from rebase on #28572 to none
Changed reviewer from Franco Saliola to Franco Saliola, Dima Pasechnik
seems to be merging just fine (with 9.0.beta4)
Changed branch from public/interfaces/m2/28574 to ac2ff35
This ticket implements conversion to and from Macaulay2 of polynomial rings over arbitrary base rings – nested polynomial rings in particular – as well as their elements.
This ticket also implements
_macaulay2_()
for polydicts. This is used in elements of nested polynomial rings, for example.It also fixes an issue where constant polynomials are accidentally converted to elements of the base ring in Macaulay2, not to elements of the polynomial ring.
We add a special case in the conversion of Galois fields, since in Macaulay2 it is more natural to define finite fields as
ZZ/p
rather thanGF p
. This has a positive effect on performance, and simplifies the construction of Macaulay2 polynomial rings.Depends on #28566 Depends on #28571 Depends on #28572 Depends on #28074
CC: @saliola @dimpase @antonleykin
Component: interfaces: optional
Keywords: macaulay2, IMA Coding Sprint
Author: Markus Wageringel
Branch/Commit:
ac2ff35
Reviewer: Franco Saliola, Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/28574