next | previous | forward | backward | up | top | index | toc | Macaulay2 website
ExactCouples :: expectCoupleRing

expectCoupleRing -- accepts certain rings of the form R[e_r,f_r], and installs Page, isEvenDegree, and isOddDegree

Synopsis

Description

Specifically, Q should have exactly two generators over its coefficient ring, and these must be indexed variables with the same subscript. Moreover, the degree of $f$ must be divisible by two.

Q.Page = r

Q.isEvenDegree is set to be a boolean-valued function so that

Q.isEvenDegree(deg) = not Q.isOddDegree(deg)

Q.isEvenDegree(deg + degree e_r) = Q.isOddDegree(deg)

Q.isEvenDegree(deg + degree f_r) = Q.isEvenDegree(deg)

i1 : Q = coupleRing(QQ, 7, e, f)

o1 = Q

o1 : PolynomialRing
i2 : describe Q

o2 = QQ[e , f , Degrees => {{1}, {-2}}, Heft => {1..2}, MonomialOrder => {MonomialSize => 32}, DegreeRank => 2]
         7   7              {0}  {2 }                                    {GRevLex => {1..2} }
                                                                         {Position => Up    }
i3 : expectCoupleRing Q
i4 : Q.Page

o4 = 7
i5 : netList table(5,10,(i,j)->Q.isEvenDegree({i,j}))

     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
o5 = |true |true |true |true |true |true |true |true |true |true |
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
     |false|false|false|false|false|false|false|false|false|false|
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
     |true |true |true |true |true |true |true |true |true |true |
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
     |false|false|false|false|false|false|false|false|false|false|
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
     |true |true |true |true |true |true |true |true |true |true |
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
i6 : netList table(5,10,(i,j)->Q.isOddDegree({i,j}))

     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
o6 = |false|false|false|false|false|false|false|false|false|false|
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
     |true |true |true |true |true |true |true |true |true |true |
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
     |false|false|false|false|false|false|false|false|false|false|
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
     |true |true |true |true |true |true |true |true |true |true |
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
     |false|false|false|false|false|false|false|false|false|false|
     +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+

See also

Ways to use expectCoupleRing:

For the programmer

The object expectCoupleRing is a method function.