#### D.15.29.13 regionComplex

Procedure from library `tateProdCplxNegGrad.lib` (see tateProdCplxNegGrad_lib).

Usage:
  regionComplex(T,d,I,J,K); T multigradedcomplex, d intvec, I intvec, J intvec, K intvec

Purpose:
  compute the region complex of T w.r.t. the sets I,J,K and the vector d

Assume:
  I,J,K are intvecs representing disjoint subsets of {1,...,t}, T is a complex in ring E, zero represents the empty set

Return:
  multigraded complex which is the region complex T_d(I,J,K) of T

Example:

    LIB "tateProdCplxNegGrad.lib";
    intvec f = 1,1;
    def (S,E) = productOfProjectiveSpaces(f);
    intvec low = -3,-3;
    intvec high = 3,3;
    setring(S);
    module M = 0;
    intmat MGrading[2][1] = -1,-1;
    M = setModuleGrading(M,MGrading);
    multigradedcomplex tate;
    (E,tate) = tateResolution(M,low,high);
    setring(E);
    tate;
    ==> E^25  <--  E^40  <--  E^46  <--  E^44  <--  E^35  <--  E^30  <--  E^38  <\
       --  E^56  <--  E^81  <--  E^110  <--  E^141  <--  E^174  <--  E^210
    ==> -6         -5         -4         -3         -2         -1         0      \
           1          2          3           4           5           6
    ==>
    ring Z = cohomologyMatrixFromResolution(tate,low,high);
    setring(Z);
    print(cohomologymat);
    ==> 5h,0,5,10,15,20,25,
    ==> 4h,0,4,8, 12,16,20,
    ==> 3h,0,3,6, 9, 12,15,
    ==> 2h,0,2,4, 6, 8, 10,
    ==> h, 0,1,2, 3, 4, 5,
    ==> 0, 0,0,0, 0, 0, 0,
    ==> h2,0,h,2h,3h,4h,5h
    setring(E);
    intvec  c= 0,-3;
    intvec I = 0;
    intvec J = 0,1;
    intvec K = 0,2;
    multigradedcomplex U = regionComplex(tate,c,I,J,K);
    U;
    ==> 0  <--  E^10  <--  E^8  <--  E^6  <--  E^4  <--  E^2  <--  E^2  <--  0
    ==> -4      -3         -2        -1        0         1         2         3
    ==>
    Z = cohomologyMatrixFromResolution(U,low,high);
    setring(Z);
    print(cohomologymat);
    ==> 0,0,0,10,0,0,0,
    ==> 0,0,0,8, 0,0,0,
    ==> 0,0,0,6, 0,0,0,
    ==> 0,0,0,4, 0,0,0,
    ==> 0,0,0,2, 0,0,0,
    ==> 0,0,0,0, 0,0,0,
    ==> 0,0,0,2h,0,0,0
    setring(E);
    multigradedcomplex V = regionComplex(tate,c,I,J,J);
    ==>    ? I,J,K have to be disjoint.
    ==>    ? leaving tateProdCplxNegGrad.lib::regionComplex (0)

User manual for Singular version 4.4.1, 2025, generated by texi2html.