-
Notifications
You must be signed in to change notification settings - Fork 112
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
Add more monomial and module orderings #723
Conversation
wbhart
commented
Oct 7, 2021
•
edited
Loading
edited
- Module orderings (incl. TOP and POT defined via * operator)
- Weighted orderings defined by weight vector
- Numerous missing orderings
- Factored out orderings into orderings.jl
I have two questions here:
Currently, this reads groebner_basis(I::MPolyIdeal; ordering::Symbol = :degrevlex, complete_reduction::Bool = false) Should we write groebner_basis(I::MPolyIdeal; ordering=:degrevlex, complete_reduction::Bool = false) and something like groebner_basis(I::MPolyIdeal; ordering=:wdegrevlex(W::Vector{Int}), complete_reduction::Bool = false) in the weighted case? Opinions? |
We currently haven't dealt with the std function, and will need to change the signature to support orderings that are not given by symbols. I have no opinion on renaming the orderings. I thought that we followed the decision that was made at the meeting, but on second thought perhaps we didn't discuss this part in sufficient detail. |
Has any further progress been made so that the groebner_basis function can digest the new orderings which are not merely given by symbols? Edit: I found that the Did I miss out on the intended way to use this, or is this going to be addressed in the future? |
Access to the private fields shouldn't be the part of any publich interface (unless it is explicitly documented). |
We haven't done that yet. We are waiting on some things downstream, but they are well in hand. |
f581579
to
5c40c09
Compare
What's the status of this? Briefly, please: you said you are waiting for some things downstream. Which downstream is meant? AA? or Singular? It would be good to track this here so we know who is waiting for whom right now |
At present that has been worked around. We were waiting for block_diagonal matrices in AbstractAlgebra, but it turns out Hecke had them under a different name. The main thing preventing merge here is documentation, which is today's task. |
Actually, I take it back. It seems that all the orderings need to be implemented on the Oscar side so that we can test them. The only reasonable test would be to check that a list of terms with respect to all these orderings end up in the right order. As we don't maintain the Singular polynomials as well (or even have a conversion function as far as I can see), this means the orderings need to be implemented on the Oscar side, and this appears to be somewhat nontrivial (some of the basic ones are already there). Also, presumably some of the existing code actually depends on this working... On the other hand, writing code to test on the Oscar side hardly tests that we hooked it all up to Singular correctly. So we also need tests of some Singular functionality that tests the orderings such as GB and GB_with_transform. @hannes14 said he will also provide some test cases for the GB and leading_ideal stuff we added, tomorrow. So, it's going to be next week before all this is done. |
Current status: we fixed the problems we were aware of. I also want to add the ability to do monomial comparison using the new orderings (on the Oscar side) and tests for this. This will be a priority next week. |
I am also unsure if leading_term/monomial/coefficient are working with the new orderings. I need to check this and possibly add more tests, etc. |
…ions and update lists of orderings in docstrings.
…rs work for all MonomialOrdering objects.
…y fail: good, we found bugs to fix).
caf83f5
to
3423fa1
Compare
So, what is the status here? I see a test is failing with |
No, x*y should be larger than z3, the weight matrix should be [-1 -2 -1;0 0 -1; 0 -1 0]. |
What's the status of this? |
The monomial orderings simply need to be corrected by @hannes14 . The branch belongs to him currently. However, I believe he's been busy working on the Singular release, so we have to wait until he gets back to it. |
Someone recently asked me about this. Is there an update on this? @hannes14? |
I've merged master into this now. I hope this can now proceed? |
819e4bf
to
6fe80d7
Compare
So, I am looking into the merge conflicts right now. They do not look too bad, but I hope I haven't spoken too soon. |
this should be good to go now |
I can only guess the following was happening with the orderings: |
Docstrings need adjustment. |
merge me please |