Macaulay2 » Documentation
Packages » PushForward > pushFwd(RingMap)
next | previous | forward | backward | up | index | toc

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

Synopsis

Description

If $f: A \to B$ is a ring map, and $B$ is finitely generated as an $A$-module, then the function returns a sequence $(M, g, pf)$ containing (1) $M \cong B^1$ as $A$-modules, (2) a 1-row matrix $g$ of elements of B whose entries generate B as A-module, (3) a function $pf$ that assigns to each element $b \in B$, a matrix $A^1 \to M$, where the image of 1 is the element $b \in M$.

i1 : kk = QQ;
i2 : S = kk[a..d];
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 : B = S/I

o4 = B

o4 : QuotientRing
i5 : A = kk[a,d];
i6 : f = map(B,A)

o6 = map (B, A, {a, d})

o6 : RingMap B <-- A
i7 : (M,g,pf) = pushFwd f;
i8 : M

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

                            5
o8 : A-module, quotient of A
i9 : g

o9 = | 1 b b2 c c2 |

             1      5
o9 : Matrix B  <-- B
i10 : use B

o10 = B

o10 : QuotientRing
i11 : pf(a*b - c^2)

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

                    1
o11 : Matrix M <-- A

Caveat

This function is meant to be internally used.

See also

Ways to use this method: