-
-
Notifications
You must be signed in to change notification settings - Fork 481
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
Conversion from Singular to Sage #11431
Comments
comment:1
Note to the reviewer: I did not check whether the doc strings look nice in html. |
Conversion Singular -> Sage |
comment:2
Attachment: trac11431_singular_sage_conversion.patch.gz So far, the method The examples that are visible in the html version of the documentation still do not cover all features (quotient rings etc.), but I guess if a user knows about the existence of |
comment:3
|
Reviewer: Martin Albrecht |
comment:4
Hi Martin! Replying to @malb:
Sounds fine to me. Obviously I took the name
Right, that should be taken care of as well.
Why "off"? With two f? Wouldn't it be correct English to say "If it is provided, then you must take care that it matches the current ring in Singular"? (i.e., I forgot the "that" in my patch)
I made it upper case because it returns a
Yep! |
comment:5
Replying to @simon-king-jena:
Perhaps not. But "If it is provided, then you have to make sure that it matches..." is fine, isn't it?
|
Show examples of .sage() to the singular interface tutorial. Fix some details of the previous patch. |
comment:6
Attachment: trac11431_singular_sage_documentation.patch.gz I've put my changes into the second patch, so, please replace that when you test it. Names: I changed Precision: Singular does not tell the precision of a real field in Grammar: It is now "Invalid term order" (not "termorder") and "If it is provided, then you have to make sure that it matches..." (not "If it is provided, then you must take care it matches...") Tests: Of course I added a test showing that the precision of real fields is taken care of. And it turned out that one doctest needed a fix, because when I created it I used a different term order (so that the same polynomial was printed in a different way). |
comment:7
I'll give this a positive review: I agree with Simon's fixes (and the patchbot can take care of any doctest failures etc.) |
comment:8
Thank you! And the patchbot actually says that the doctests pass... |
Merged: sage-4.7.1.alpha3 |
Changed merged from sage-4.7.1.alpha3 to none |
comment:10
There are some issues on Solaris. On the "marks" and "t2" buildbots, I get the following error (identical on both systems):
|
comment:11
Hi Jeroen, Replying to @jdemeyer:
That is very strange. I can not imagine that my patch introduced that bug: It changes the conversion from Singular to Sage, but it should not change Singular itself (and what you get in your example is an error from Singular, not from the interface). Hence, I wonder whether my patch has introduced or uncovered that bug. Can you test on marks and t2 with unpatched Sage whether the line
fails? |
Work Issues: Singular trouble on Solaris |
comment:16
As I have indicated on #11645, there is a potential work around for the missing gftables: If one has a polynomial ring over a finite non-prime field in Sage and converts it into Singular, then the missing gftable is created. Hence, one could ensure that the problematic doc test passes by repending that test with another one that converts a ring from Sage into Singular. That would be a nasty work-around, but at least it would mean that my patch could be used. |
Work around a bug on Solaris revealed by the first patch |
Changed upstream from Reported upstream. Little or no feedback. to None of the above - read trac for reasoning. |
Changed work issues from Singular trouble on Solaris to none |
This comment has been minimized.
This comment has been minimized.
comment:17
Attachment: trac11431_solaris_workaround.patch.gz I provided a third patch that uses - as a workaround - the fact that libsingular is able to create missing gftables files. On Singular trac, Hannes said "No, gftables are parts of the sources and will be copied during installation, but usually not computed (the program for that, a part of factory, will not be build during a standard compilation and installation). So, I wonder why the files aren't copied on Solaris and how libsingular is able to create them. But I think the third patch (that isn't tested, yet) should suffice to make the doc tests of the first two patches work on solaris. Back to "needs review" - I hope that someone can doctest on Solaris. |
comment:18
Note that #11645 also fixes the problem with the new doc test. So, if someone would like to review my patches, I see two ways to make things work: Either
or |
comment:19
What's the status of this ticket now? Since #11645 has been merged in sage-4.7.1, we can assume that as prerequisite. Which patches should be applied then? If somebody can give these patches a "tentative positive review" (without testing on Solaris), I can test them on the buildbot machines, including Solaris. |
comment:20
Replying to @jdemeyer:
To the reviewer: if you do give such a "tentative positive review", you can set the status to "positive review" (even if it has not been tested properly). |
comment:21
Simon, can you rebase your patches to 4.7.1? |
comment:23
Hi, I get this:
|
comment:24
Hi Martin, you forgot the other dependency: #11316 was only merged in sage-4.7.2.alpha1, but you started with alpha0. |
comment:25
Right, now it applies! |
comment:26
applies & doctests pass. I read the patch a while ago so positive review it is. |
This comment has been minimized.
This comment has been minimized.
comment:27
Simon, are you ok with dropping the (IMHO obsolete) Solaris patch? |
comment:28
Replying to @nexttime:
Yes, it can be dropped, since that problem has been successfully dealt with on a different ticket. |
Merged: sage-4.7.2.alpha3 |
On sage-devel, Francisco Botana complained about some shortcomings of the conversion from Singular (pexpect interface) to Sage.
I think the conversions provided by this patch are quite thorough.
First of all, the patch provides a conversion of base rings, even with minpoly, with complicated block, matrix and weighted orders (note that one needs #11316) and even quotient rings:
By consequence, it is now straight forward to convert polynomials or ideals to sage:
Apply
to the Sage library.
Depends on #11316
Depends on #11645
Upstream: None of the above - read trac for reasoning.
CC: @malb
Component: interfaces
Author: Simon King
Reviewer: Martin Albrecht
Merged: sage-4.7.2.alpha3
Issue created by migration from https://trac.sagemath.org/ticket/11431
The text was updated successfully, but these errors were encountered: