Macaulay2 » Documentation
Packages » PencilsOfQuadrics :: tensorProduct
next | previous | forward | backward | up | index | toc

# tensorProduct -- tensor product of sheaves on the elliptic curve or sheaf times CliffordModule

- Usage:
    `eta = tensorProduct(phi,psi)`
    `G = tensorProduct(M,V)`
    `L = tensorProduct(L1,L2)`
- Inputs:
  - phi, a matrix,
  - psi, a matrix, representing the action of y on a sheaf on PP^1
  - L1, an instance of the type VectorBundleOnE,
  - L2, an instance of the type VectorBundleOnE,
  - M, an instance of the type CliffordModule,
  - V, an instance of the type VectorBundleOnE,
- Outputs:
  - eta, a matrix, action of y
  - N, an instance of the type CliffordModule,
  - L, an instance of the type VectorBundleOnE,

## Description

Sheaves on the hyperelliptic curve y^2 -(-1)^{g}* f(s,t) are represented as sheaves on PP^1 together with the action of y. Clifford modules are represented as the action of maps eOdd_i: M_1 \to M_0 and eEv_i:M_0 \to M_1 between the even and odd parts of the module. The result are the corresponding data for the tensor product.

    i1 : kk=ZZ/101

    o1 = kk

    o1 : QuotientRing

    i2 : setRandomSeed 0
     -- setting random seed to 0

    o2 = 0

    i3 : g=1

    o3 = 1

    i4 : (S, qq,  R,  u, M1, M2, Mu1, Mu2)=randomNicePencil(kk,g) ;

    i5 : (uOdd,uEv)=cliffordOperators(Mu1,Mu2,R);

    i6 : symMatrix(uOdd,uEv)

    o6 = | -5t  -50s 6t     -6t  |
         | -50s 0    -9t    5t   |
         | 6t   -9t  -s-30t 3t   |
         | -6t  5t   3t     -48t |

                 4      4
    o6 : Matrix R  <-- R

    i7 : f=det symMatrix(uOdd,uEv);

    i8 : M = cliffordModule(uOdd, uEv);

    i9 : L = randomLineBundle(0,f);

    i10 : L.yAction

    o10 = {-1} | -18s2-13st-43t2 13s2+45st-16t2 |
          {-1} | 45s2-14st-t2    18s2+13st+43t2 |

                  2      2
    o10 : Matrix R  <-- R

    i11 : L2 = tensorProduct(L,L)

    o11 = VectorBundleOnE{...1...}

    o11 : VectorBundleOnE

    i12 : L2.yAction

    o12 = {-1} | -18s2+6st+19t2 13s2-3st-16t2 |
          {-1} | 45s2-5st+7t2   18s2-6st-19t2 |

                  2      2
    o12 : Matrix R  <-- R

    i13 : M' = tensorProduct(M,L)

    o13 = CliffordModule{...6...}

    o13 : CliffordModule

    i14 : M.evenCenter

    o14 = {-4} | -49st-24t2 -24s2t+47st2-42t3 -10t3     -25st2-43t3   |
          {-3} | -50s       49st+24t2         -25t2     -45t2         |
          {-3} | -9t        5st+49t2          49st-17t2 50s2-15st+7t2 |
          {-3} | 5t         -2t2              24st+41t2 -49st+17t2    |

                  4      4
    o14 : Matrix R  <-- R

    i15 : M'.evenCenter

    o15 = {-4} | 47st+18t2 45s2t-33st2-27t3 24st2-11t3     -6st2+11t3      |
          {-3} | -7s+37t   -30st+7t2        34st+5t2       14st-5t2        |
          {-3} | 35s-34t   -3s2-5st-7t2     -6s2+19st-t2   -50s2-49st+43t2 |
          {-3} | -26s+50t  -36s2-37st+36t2  29s2+44st-35t2 6s2-36st-24t2   |

                  4      4
    o15 : Matrix R  <-- R

## See also

- CliffordModule -- hash table holding details of a Clifford module
- cliffordOperators -- Generators for a Clifford Algebra
- symMatrix -- part of a CliffordModule
- randomLineBundle -- a random balanced line bundle on the hyperelliptic curve
- evenCenter -- part of a CliffordModule

## Ways to use tensorProduct:

- `tensorProduct(CliffordModule,VectorBundleOnE)`
- `tensorProduct(Matrix,Matrix)`
- `tensorProduct(VectorBundleOnE,VectorBundleOnE)`

## For the programmer

The object tensorProduct is a method function.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/PencilsOfQuadrics.m2:2947:0.