#### 7.10.4.7 isOrderingShiftInvariant

Procedure from library `freegb.lib` (see freegb_lib).

Usage:
  isOrderingShiftInvariant(b); b an integer interpreted as a boolean

Return:
  int

Note:
  Tests whether the ordering of the current ring is shift invariant, which is the case, when LM(p) > LM(p') for all p and p' where p' is p shifted by any number of places.

  If withHoles != 0 even Letterplace polynomials with holes (eg. x(1)*y(4)) are considered.

Assume:
  - basering is a Letterplace ring.

Example:

    LIB "freegb.lib";
    ring r = 0,(x,y,z),dp;
    def R = freeAlgebra(r, 5);
    setring R;
    isOrderingShiftInvariant(0);// should be 1
    ==> 1
    ring r2 = 0,(x,y,z),dp;
    def R2 = freeAlgebra(r2, 5);
    list RL = ringlist(R2);
    RL[3][1][1] = "wp";
    intvec weights = 1,1,1,1,1,1,1,2,3,1,1,1,1,1,1;
    RL[3][1][2] = weights;
    attrib(RL,"isLetterplaceRing",3);
    attrib(RL,"maxExp",1);
    def Rw = setLetterplaceAttributes(ring(RL),5,3);
    setring Rw;
    /* printlevel = voice + 1; */
    isOrderingShiftInvariant(0);
    ==> 0
    isOrderingShiftInvariant(1);
    ==> 0

User manual for Singular version 4.4.1, 2025, generated by texi2html.