Macaulay2 » Documentation
Packages » MatrixFactorizations :: directSum(ZZdFactorization)
next | previous | forward | backward | up | index | toc

directSum(ZZdFactorization) -- direct sum of ZZ/d-graded factorizations

Description

The direct sum of two factorizations is another factorization, assuming the inputs factor the same ring element. The differentials are simply the direct sum of the constituent differentials.

i1 : S = ZZ/101[x,y];
i2 : C1 = randomLinearMF(2,S)

      4      4      4
o2 = S  <-- S  <-- S
                    
     0      1      0

o2 : ZZdFactorization
i3 : C2 = randomLinearMF(2,S)

      4      4      4
o3 = S  <-- S  <-- S
                    
     0      1      0

o3 : ZZdFactorization
i4 : C12 = C1 ++ C2

      8      8      8
o4 = S  <-- S  <-- S
                    
     0      1      0

o4 : ZZdFactorization
i5 : potential(C1) == potential(C2)

o5 = false
i6 : isdFactorization(C12)

o6 = (false, no potential)

o6 : Sequence
i7 : C12.dd^2

          8                                                                                                                                           8
o7 = 0 : S  <--------------------------------------------------------------------------------------------------------------------------------------- S  : 0
               {3} | 24x2-36xy-30y2 0              0              0              0               0               0               0               |
               {3} | 0              24x2-36xy-30y2 0              0              0               0               0               0               |
               {3} | 0              0              24x2-36xy-30y2 0              0               0               0               0               |
               {3} | 0              0              0              24x2-36xy-30y2 0               0               0               0               |
               {3} | 0              0              0              0              -29x2+19xy+19y2 0               0               0               |
               {3} | 0              0              0              0              0               -29x2+19xy+19y2 0               0               |
               {3} | 0              0              0              0              0               0               -29x2+19xy+19y2 0               |
               {3} | 0              0              0              0              0               0               0               -29x2+19xy+19y2 |

          8                                                                                                                                           8
     1 : S  <--------------------------------------------------------------------------------------------------------------------------------------- S  : 1
               {3} | 24x2-36xy-30y2 0              0              0              0               0               0               0               |
               {3} | 0              24x2-36xy-30y2 0              0              0               0               0               0               |
               {3} | 0              0              24x2-36xy-30y2 0              0               0               0               0               |
               {3} | 0              0              0              24x2-36xy-30y2 0               0               0               0               |
               {3} | 0              0              0              0              -29x2+19xy+19y2 0               0               0               |
               {3} | 0              0              0              0              0               -29x2+19xy+19y2 0               0               |
               {3} | 0              0              0              0              0               0               -29x2+19xy+19y2 0               |
               {3} | 0              0              0              0              0               0               0               -29x2+19xy+19y2 |

o7 : ZZdFactorizationMap

As we can see in the above example, the problem stems from the fact that the direct sum of matrix factorizations with different potentials is no longer a matrix factorization. Constructing factorizations with the same potential will solve this:

i8 : Q = ZZ/101[x,y]

o8 = Q

o8 : PolynomialRing
i9 : f = x^3+y^3;
i10 : R = Q/(f)

o10 = R

o10 : QuotientRing
i11 : m = ideal vars R

o11 = ideal (x, y)

o11 : Ideal of R
i12 : F1 = tailMF m

       2      2      2
o12 = Q  <-- Q  <-- Q
                     
      0      1      0

o12 : ZZdFactorization
i13 : F2 = tailMF (m^2)

       3      3      3
o13 = Q  <-- Q  <-- Q
                     
      0      1      0

o13 : ZZdFactorization
i14 : potential(F1) == potential(F2)

o14 = true
i15 : F12 = F1++ F2

       5      5      5
o15 = Q  <-- Q  <-- Q
                     
      0      1      0

o15 : ZZdFactorization
i16 : isdFactorization F12

              3    3
o16 = (true, x  + y )

o16 : Sequence

The direct sum is an n-ary operator with projection and inclusion maps from each component satisfying appropriate identities.

i17 : C4 = directSum(first => F1, second => F2)

       5      5      5
o17 = Q  <-- Q  <-- Q
                     
      0      1      0

o17 : ZZdFactorization
i18 : C4_[first] -- inclusion map C1 --> C4

           5                   2
o18 = 0 : Q  <--------------- Q  : 0
                {2} | 1 0 |
                {3} | 0 1 |
                {3} | 0 0 |
                {3} | 0 0 |
                {3} | 0 0 |

           5                   2
      1 : Q  <--------------- Q  : 1
                {4} | 1 0 |
                {4} | 0 1 |
                {5} | 0 0 |
                {5} | 0 0 |
                {5} | 0 0 |

o18 : ZZdFactorizationMap
i19 : C4^[first] -- projection map C4 --> C1

           2                         5
o19 = 0 : Q  <--------------------- Q  : 0
                {2} | 1 0 0 0 0 |
                {3} | 0 1 0 0 0 |

           2                         5
      1 : Q  <--------------------- Q  : 1
                {4} | 1 0 0 0 0 |
                {4} | 0 1 0 0 0 |

o19 : ZZdFactorizationMap
i20 : C4^[first] * C4_[first] == 1

o20 = true
i21 : C4^[second] * C4_[second] == 1

o21 = true
i22 : C4^[first] * C4_[second] == 0

o22 = true
i23 : C4^[second] * C4_[first] == 0

o23 = true
i24 : C4_[first] * C4^[first] + C4_[second] * C4^[second] == 1

o24 = true

There are two short exact sequences associated to a direct sum.

i25 : isShortExactSequence(C4^[first], C4_[second])

o25 = true
i26 : isShortExactSequence(C4^[second], C4_[first])

o26 = true

Given a factorization which is a direct sum, we obtain the component complexes and their names (indices) as follows (even if the resulting factorization is not well-defined, we can still obtain the components).

i27 : components C12

        4      4      4   4      4      4
o27 = {S  <-- S  <-- S , S  <-- S  <-- S }
                                        
       0      1      0   0      1      0

o27 : List
i28 : indices C12

o28 = {0, 1}

o28 : List
i29 : components C4

        2      2      2   3      3      3
o29 = {Q  <-- Q  <-- Q , Q  <-- Q  <-- Q }
                                        
       0      1      0   0      1      0

o29 : List
i30 : indices C4

o30 = {first, second}

o30 : List

See also

Ways to use this method:


The source of this document is in MatrixFactorizations/MatrixFactorizationsDOC.m2:1195:0.