next | previous | forward | backward | up | top | index | toc | Macaulay2 website
PushForward :: pushFwd(RingMap)

pushFwd(RingMap) -- push forward of a finite ring map

Synopsis

Description

i1 : kk = QQ

o1 = QQ

o1 : Ring
i2 : S = kk[a..d]

o2 = S

o2 : PolynomialRing
i3 : I = monomialCurveIdeal(S, {1,3,4})

                        3      2     2    2    3    2
o3 = ideal (b*c - a*d, c  - b*d , a*c  - b d, b  - a c)

o3 : Ideal of S
i4 : R = S/I

o4 = R

o4 : QuotientRing
i5 : A = kk[a,d]

o5 = A

o5 : PolynomialRing
i6 : use R

o6 = R

o6 : QuotientRing
i7 : F = map(R,A)

o7 = map(R,A,{a, d})

o7 : RingMap R <--- A
i8 : (M,g,pf) = pushFwd F;
i9 : M

o9 = cokernel {0} | 0  |
              {1} | 0  |
              {2} | -d |
              {1} | 0  |
              {2} | a  |

                            5
o9 : A-module, quotient of A
i10 : g

o10 = | 1 b b2 c c2 |

              1       5
o10 : Matrix R  <--- R
i11 : pf(a*b - c^2)

o11 = {0} | 0  |
      {1} | a  |
      {2} | 0  |
      {1} | 0  |
      {2} | -1 |

o11 : Matrix
In a previous version of this package, the third output was a function which assigned to each element of the target of f its representation as an element of a free module which surjected onto the pushed forward module.