Changes in matrix ordering with zero entries

14 views
Skip to first unread message

Jean-Pierre Flori

unread,
Oct 25, 2016, 11:12:21 AM10/25/16
to libsingular-devel
Hi all,

After this commit:
* https://github.com/Singular/Sources/commit/0d91221c4a45f7a2621d280d09e628b3e963a60d#diff-d09c8493af07f5c7209a8ad3ce8842feR3826
the behavior of the p_WTotalDegree function changed regarding matrix ordering with zero entries.
For such ordering OrdSgn is now -1, which makes the former function return negative results.

As we use it in Sage for matrix ordering it breaks stuff.
IIRC you previously stated we should use pLDeg but for some reason we did not, e.g. it seemed that pLDeg gave strange results for lexicographic ordering.

I'm not knowledgeable about all of this, so I'm just opening this so that we find out what to use in Sage.

Best,
JPF

Jean-Pierre Flori

unread,
Oct 25, 2016, 11:23:56 AM10/25/16
to libsingular-devel
Hummm, it seems that using p_LDeg instead of monomials and calling p_WTotalDegree works right now.

Is there any place documenting what all the degree functions do?
And to what the degree function pointers point to depending on OrdSgn and MixedOrder?

Jean-Pierre Flori

unread,
Oct 25, 2016, 11:27:03 AM10/25/16
to libsingular-devel
Argh, I meant p_Deg...
Ok, now I'm lost again.
Especially given https://groups.google.com/forum/#!topic/libsingular-devel/dulzKFTF3g8 that I cannot reproduce.

Jean-Pierre Flori

unread,
Oct 25, 2016, 12:33:42 PM10/25/16
to libsingular-devel


On Tuesday, October 25, 2016 at 5:27:03 PM UTC+2, Jean-Pierre Flori wrote:
Argh, I meant p_Deg...
And in fact it does not gives what we want in all cases.
The only solution I did not defeat so far is looping over the monomials and calling p_WDegree.

han...@mathematik.uni-kl.de

unread,
Oct 26, 2016, 12:19:56 PM10/26/16
to libsingu...@googlegroups.com
It depends on the representation of monomial,
in this case p_Deg is 2^n*exponent1+exponent2.
It simply has only the fullfille the given requirements.

The new libpolys/polys/monomials/degree.txt should give an overview.

A weight 0 (or positive and negative weights) allow infinitely many
monomials of the same degree which lead to infinite cycles in GB
computations - p_FDeg uses p_Totaldegree in this cases now.

I am not in Kaiserslautern in the moment, will look
at the other issues in 10 days.

Hans

Jean-Pierre Flori

unread,
Oct 27, 2016, 6:37:33 AM10/27/16
to libsingular-devel


On Wednesday, October 26, 2016 at 6:19:56 PM UTC+2, han...@mathematik.uni-kl.de wrote:
On Tue, Oct 25, 2016 at 08:27:03AM -0700, Jean-Pierre Flori wrote:
>    Argh, I meant p_Deg...
>    Ok, now I'm lost again.
>    Especially given
>    https://groups.google.com/forum/#!topic/libsingular-devel/dulzKFTF3g8 that
>    I cannot reproduce.
It depends on the representation of monomial,
in this case p_Deg is 2^n*exponent1+exponent2.
It simply has only the fullfille the given requirements.

The new libpolys/polys/monomials/degree.txt should give an overview.

Thanks a lot!
I did not see this file before, that's very helpful.
 

Jean-Pierre Flori

unread,
Oct 27, 2016, 6:44:17 AM10/27/16
to libsingular-devel


On Thursday, October 27, 2016 at 12:37:33 PM UTC+2, Jean-Pierre Flori wrote:


On Wednesday, October 26, 2016 at 6:19:56 PM UTC+2, han...@mathematik.uni-kl.de wrote:
On Tue, Oct 25, 2016 at 08:27:03AM -0700, Jean-Pierre Flori wrote:
>    Argh, I meant p_Deg...
>    Ok, now I'm lost again.
>    Especially given
>    https://groups.google.com/forum/#!topic/libsingular-devel/dulzKFTF3g8 that
>    I cannot reproduce.
It depends on the representation of monomial,
in this case p_Deg is 2^n*exponent1+exponent2.
It simply has only the fullfille the given requirements.

The new libpolys/polys/monomials/degree.txt should give an overview.

Thanks a lot!
I did not see this file before, that's very helpful.
Ahah it's because you just added it :)
 
 
A weight 0 (or positive and negative weights) allow infinitely many
monomials of the same degree which lead to infinite cycles in GB
computations - p_FDeg uses p_Totaldegree in this cases now.

Ok, whatsoever, the descripiton in degree.txt is then wrong as p_WTotaldegree currently returns -1*"weighted total degree" when the ordering is "bad".
But as I said before, p_WDegree returns "weighted total degree" at the moment, so we'll temporarly use it for Sage.

I am not in Kaiserslautern in the moment, will look
at the other issues in 10 days.
 No worries, at least we have a workaround right now.

Best,
JPF

han...@mathematik.uni-kl.de

unread,
Nov 2, 2016, 7:26:29 AM11/2/16
to libsingu...@googlegroups.com
On Thu, Oct 27, 2016 at 03:44:16AM -0700, Jean-Pierre Flori wrote:
> Ok, whatsoever, the descripiton in degree.txt is then wrong as
> p_WTotaldegree currently returns -1*"weighted total degree" when the
> ordering is "bad".
> But as I said before, p_WDegree returns "weighted total degree" at the
> moment, so we'll temporarly use it for Sage.
Improved the desription in degree.txt
>  No worries, at least we have a workaround right now.
Fine, the "obsolete" in the description only means that it is currently
not used.

Hans
Reply all
Reply to author
Forward
0 new messages