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

homomorphism(ZZdFactorizationMap) -- get the homomorphism from an element of Hom

Description

As a first example, consider two Koszul complexes $C$ and $D$. From a random map $f : R^1 \to Hom(C, D)$, we construct the corresponding map of chain complexes $g : C \to D$.

i1 : S = ZZ/101[a,b];
i2 : R = S/(a^3+b^3);
i3 : m = ideal vars R

o3 = ideal (a, b)

o3 : Ideal of R
i4 : C = tailMF m

      2      2      2
o4 = S  <-- S  <-- S
                    
     0      1      0

o4 : ZZdFactorization
i5 : D = tailMF (m^2)

      3      3      3
o5 = S  <-- S  <-- S
                    
     0      1      0

o5 : ZZdFactorization
i6 : H = Hom(C,D)

      12      12      12
o6 = S   <-- S   <-- S
                      
     0       1       0

o6 : ZZdFactorization
i7 : f = randomFactorizationMap(H, ZZdfactorization( S^{-2}, 2))

          12                               1
o7 = 0 : S   <--------------------------- S  : 0
                {1} | 24a-36b         |
                {1} | -30a-29b        |
                {1} | 19a+19b         |
                {0} | -10a2-29ab-8b2  |
                {0} | -22a2-29ab-24b2 |
                {0} | -38a2-16ab+39b2 |
                {1} | 21a+34b         |
                {1} | 19a-47b         |
                {1} | -39a-18b        |
                {1} | -13a-43b        |
                {1} | -15a-28b        |
                {1} | -47a+38b        |

          12
     1 : S   <----- 0 : 1
                0

o7 : ZZdFactorizationMap
i8 : isWellDefined f

o8 = true
i9 : g = homomorphism f

          3                                        2
o9 = 0 : S  <------------------------------------ S  : 0
               {3} | 24a-36b  -10a2-29ab-8b2  |
               {3} | -30a-29b -22a2-29ab-24b2 |
               {3} | 19a+19b  -38a2-16ab+39b2 |

          3                                 2
     1 : S  <----------------------------- S  : 1
               {5} | 21a+34b  -13a-43b |
               {5} | 19a-47b  -15a-28b |
               {5} | -39a-18b -47a+38b |

o9 : ZZdFactorizationMap
i10 : isWellDefined g

o10 = true
i11 : assert not isCommutative g

The map $g : C \to D$ corresponding to a random map into $Hom(C,D)$ does not generally commute with the differentials. However, if the element of $Hom(C,D)$ is a cycle, then the corresponding map does commute.

i12 : f = randomFactorizationMap(H, ZZdfactorization( S^{-2}, 2), Cycle => true)

           12                               1
o12 = 0 : S   <--------------------------- S  : 0
                 {1} | 25a-45b         |
                 {1} | -20a+48b        |
                 {1} | 21a+16b         |
                 {0} | 2a2-18ab-b2     |
                 {0} | -22a2-43ab-38b2 |
                 {0} | -34a2-26ab-37b2 |
                 {1} | 25a+37b         |
                 {1} | 20a-b           |
                 {1} | 21a-38b         |
                 {1} | 2a+16b          |
                 {1} | 22a+45b         |
                 {1} | -34a-48b        |

           12
      1 : S   <----- 0 : 1
                 0

o12 : ZZdFactorizationMap
i13 : isWellDefined f

o13 = true
i14 : g = homomorphism f

           3                                        2
o14 = 0 : S  <------------------------------------ S  : 0
                {3} | 25a-45b  2a2-18ab-b2     |
                {3} | -20a+48b -22a2-43ab-38b2 |
                {3} | 21a+16b  -34a2-26ab-37b2 |

           3                                2
      1 : S  <---------------------------- S  : 1
                {5} | 25a+37b 2a+16b   |
                {5} | 20a-b   22a+45b  |
                {5} | 21a-38b -34a-48b |

o14 : ZZdFactorizationMap
i15 : isWellDefined g

o15 = true
i16 : assert isCommutative g
i17 : assert(degree g === 0)
i18 : assert(source g === C)
i19 : assert(target g === D)
i20 : assert(homomorphism' g == f)

A homomorphism of non-zero degree can be encoded in (at least) two ways.

i21 : f1 = randomFactorizationMap(H, ZZdfactorization( S^1, 2), Degree => 1)

           12                         1
o21 = 1 : S   <--------------------- S  : 0
                 {3}  | 0        |
                 {3}  | 0        |
                 {3}  | 0        |
                 {2}  | 0        |
                 {2}  | 0        |
                 {2}  | 0        |
                 {-1} | -16a+7b  |
                 {-1} | 15a-23b  |
                 {-1} | 39a+43b  |
                 {-1} | -17a-11b |
                 {-1} | 48a+36b  |
                 {-1} | 35a+11b  |

           12
      0 : S   <----- 0 : 1
                 0

o21 : ZZdFactorizationMap
i22 : f2 = map(target f1, (source f1)[1], i -> f1_(i+1))

           12
o22 = 0 : S   <----- 0 : 0
                 0

           12                         1
      1 : S   <--------------------- S  : 1
                 {3}  | 0        |
                 {3}  | 0        |
                 {3}  | 0        |
                 {2}  | 0        |
                 {2}  | 0        |
                 {2}  | 0        |
                 {-1} | -16a+7b  |
                 {-1} | 15a-23b  |
                 {-1} | 39a+43b  |
                 {-1} | -17a-11b |
                 {-1} | 48a+36b  |
                 {-1} | 35a+11b  |

o22 : ZZdFactorizationMap
i23 : assert isWellDefined f2
i24 : g1 = homomorphism f1

           3         2
o24 = 1 : S  <----- S  : 0
                0

           3                                2
      0 : S  <---------------------------- S  : 1
                {3} | -16a+7b -17a-11b |
                {3} | 15a-23b 48a+36b  |
                {3} | 39a+43b 35a+11b  |

o24 : ZZdFactorizationMap
i25 : g2 = homomorphism f2

           3         2
o25 = 1 : S  <----- S  : 0
                0

           3                                2
      0 : S  <---------------------------- S  : 1
                {3} | -16a+7b -17a-11b |
                {3} | 15a-23b 48a+36b  |
                {3} | 39a+43b 35a+11b  |

o25 : ZZdFactorizationMap
i26 : assert(g1 == g2)
i27 : assert isWellDefined g1
i28 : assert isWellDefined g2
i29 : homomorphism' g1 == f1

o29 = true
i30 : homomorphism' g2 == f1

o30 = true

See also

Ways to use this method:


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