Hi Peter,
variety() calls triangular_decomposition() which indeed changes the term
ordering for you if required:
# make sure to work w.r.t. 'lex'
if P.term_order() != 'lex':
Q = P.change_ring(order='lex')
else:
Q = P
So the documentation should be updated.
Cheers,
Martin
On Monday 20 Apr 2015 06:21:21 Peter Mueller wrote:
> Dear All,
>
> let I be an ideal of a polynomial ring. Then, according to the doc,
> I.variety() expects the underlying polynomial ring to have lexicographic
> order. However, no error is raised if the polynomial order is a different
> one (degrevlex in my case). Does it mean that internally a Groebner basis
> is computed with respect to the lex order, no matter what the original
> order was?
>
> I looked at the code for variety(), but wasn't able to quickly recognize
> the behavior of this method.
>
> The reason that I looked at the doc of variety() at all was that I came
> across a case where points were missing. It was a complicated situation, so
> I'm not quite sure that this is due to variety() giving wrong results if
> the polynomial order isn't lex, or if I made a mathematical or programming
> error somewhere.
>
> Anyway, if variety() works for any polynomial order, then the doc should
> tell so. And if it does not, then using the method should raise an error
> rather than returning an unreliable answer.
>
> Best wishes,
> Peter Mueller
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.