If $M_1$ and $M_2$ are both finite generated as $A$-modules, via $f$, this returns the induced map on $A$-modules.
i1 : kk = QQ
o1 = QQ
o1 : Ring
|
i2 : A = kk[a,b]
o2 = A
o2 : PolynomialRing
|
i3 : B = kk[z,t]
o3 = B
o3 : PolynomialRing
|
i4 : f = map(B,A,{z^2,t^2})
2 2
o4 = map (B, A, {z , t })
o4 : RingMap B <-- A
|
i5 : M = B^1/ideal(z^3,t^3)
o5 = cokernel | z3 t3 |
1
o5 : B-module, quotient of B
|
i6 : g = map(M,M,matrix{{z*t}})
o6 = | zt |
o6 : Matrix M <-- M
|
i7 : p = pushFwd(f,g)
o7 = | 0 0 ab 0 |
| 0 0 0 b |
| 1 0 0 0 |
| 0 a 0 0 |
o7 : Matrix
|
i8 : source p == pushFwd(f, source g)
o8 = true
|
i9 : target p == pushFwd(f, target g)
o9 = true
|
i10 : kerg = pushFwd(f,ker g)
o10 = cokernel | b a 0 0 0 0 0 |
| 0 -b a 0 0 0 0 |
| 0 0 0 b a 0 0 |
| 0 0 0 0 0 b a |
4
o10 : A-module, quotient of A
|
i11 : kerp = prune ker p
o11 = cokernel {1} | b a 0 0 0 0 0 |
{1} | 0 -b a 0 0 0 0 |
{1} | 0 0 0 b a 0 0 |
{1} | 0 0 0 0 0 b a |
4
o11 : A-module, quotient of A
|
i12 : k = ZZ/32003
o12 = k
o12 : QuotientRing
|
i13 : A = k[x,y]/(y^4-2*x^3*y^2-4*x^5*y+x^6-y^7)
o13 = A
o13 : QuotientRing
|
i14 : A = k[x,y]/(y^3-x^7)
o14 = A
o14 : QuotientRing
|
i15 : B = integralClosure(A, Keep =>{})
o15 = B
o15 : PolynomialRing
|
i16 : describe B
o16 = k[w , Degrees => {3}, Heft => {1}, MonomialOrder => {MonomialSize => 32}]
3,0 {GRevLex => {3} }
{4:(GRevLex => {}) }
{Position => Up }
|
i17 : f = map(B^1, B^1, matrix{{w_(3,0)}})
o17 = | w_(3,0) |
1 1
o17 : Matrix B <-- B
|
i18 : g = pushFwd(icMap A, f)
o18 = | 0 0 x |
| 1 0 0 |
| 0 1 0 |
o18 : Matrix
|
i19 : pushFwd(icMap A, f^2) == g*g
o19 = true
|
i20 : A = kk[x]
o20 = A
o20 : PolynomialRing
|
i21 : B = A[y, Join => false]/(y^3-x^7)
o21 = B
o21 : QuotientRing
|
i22 : pushFwd B^1
3
o22 = A
o22 : A-module, free
|
i23 : pushFwd matrix{{y}}
o23 = | 0 0 x7 |
| 1 0 0 |
| 0 1 0 |
3 3
o23 : Matrix A <-- A
|
i24 : B = A[y,z,Join => false]/(y^3 - x*z, z^3-y^7);
|
i25 : pushFwd B^1
9
o25 = A
o25 : A-module, free
|
i26 : fy = pushFwd matrix{{y}}
o26 = | 0 0 0 0 0 0 0 0 0 |
| 1 0 0 0 0 0 0 0 0 |
| 0 1 0 0 0 0 0 0 0 |
| 0 0 0 0 1 0 0 0 0 |
| 0 0 0 0 0 1 0 0 0 |
| 0 0 x 0 0 0 0 0 0 |
| 0 0 0 x 0 0 0 0 0 |
| 0 0 0 0 0 0 1 0 x3 |
| 0 0 0 0 0 0 0 1 0 |
9 9
o26 : Matrix A <-- A
|
i27 : fz = pushFwd matrix{{z}};
9 9
o27 : Matrix A <-- A
|
i28 : fx = pushFwd matrix{{x_B}};
9 9
o28 : Matrix A <-- A
|
i29 : g = pushFwd matrix{{y*z -x_B*z^2}}
o29 = | 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 |
| 0 1 0 0 0 0 0 0 0 |
| 1 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 |
| -x 0 x 0 0 0 0 0 0 |
| 0 -x 0 -x6+x3 0 -x3+1 0 -x8+x5 0 |
| 0 0 -x 0 -x3+1 0 -x5+x2 0 -x8+x5 |
9 9
o29 : Matrix A <-- A
|
i30 : g == fy*fz-fx*fz^2
o30 = true
|
i31 : fz^3-fy^7 == 0
o31 = true
|