Singular Manual: cohomologyMatrix

| #### D.15.21.7 cohomologyMatrix Procedure from library `tateProdCplxNegGrad.lib` (see tateProdCplxNegGrad_lib). Usage: cohomologyMatrix(M,L,low,high); M module, L list, low intvec, high intvec Purpose: computes the cohomology matrix of the sheaf corresponding to coker(M) Assume: M module over S, L list of two rings S and E (e.g. result of productOfProjectiveSpaces) first entry L[1] = S and L[2] = E, integer vectors low <= high Return: ring Z in which cohomology matrix lives, it is exported in the variable cohomologymat, cohomologymat covers all cohomology groups of twists in the range between low and high Example:
    LIB "tateProdCplxNegGrad.lib";
    // example 1
    intvec c1 = 1,1;
    def (S1,E1) = productOfProjectiveSpaces(c1);
    intvec low1 = -3,-3;
    intvec high1 = 3,3;
    setring(S1);
    module M1 = 0;
    intmat grading1[2][1] = -1,-1;
    M1 = setModuleGrading(M1,grading1);
    ring Z1 = cohomologyMatrix(M1,low1,high1);
    setring(Z1);
    print(cohomologymat);
    // example 2
    intvec c2 = 1,2;
    def (S2,E2) = productOfProjectiveSpaces(c2);
    intvec low2 = -3,-3;
    intvec high2 = 0,0;
    setring(S2);
    module M2 = 0;
    intmat grading2[2][1] = 0,0;
    M2 = setModuleGrading(M2,grading2);
    ring Z2 = cohomologyMatrix(M2,low2,high2);
    setring(Z2);
    print(cohomologymat);
    // example 3
    setring(S2);
    module M3 = x(0)(0),x(1)(0)^3 + x(1)(1)^3 +x(1)(2)^3;
    intmat grading3[2][1] = 0,0;
    M3 = setModuleGrading(M3,grading3);
    ring Z3 = cohomologyMatrix(M3,low2,high2);
    setring(Z3);
    print(cohomologymat);

User manual for Singular version 4.3.2, 2023, generated by texi2html.