Macaulay2 » Documentation
Packages » DGAlgebras :: identityDGModuleMap
next | previous | forward | backward | up | index | toc

identityDGModuleMap -- The identity DGModuleMap on a DG module

Description

Returns the identity endomorphism of M as a DGModuleMap. Its underlying natural matrix is $\mathrm{id}_{M.natural}$ and its induced map on every homology degree is the identity.

The shorthand id_M (mirroring the Complexes convention id_C for a Complex C) is an alias, and both forms compare equal to the scalar 1:

i1 : R = ZZ/101[x, y] / ideal(x^2, y^2)

o1 = R

o1 : QuotientRing
i2 : A = koszulComplexDGA R

o2 = {Ring => R                          }
      Underlying algebra => R[T   ..T   ]
                               1,1   1,2
      Differential => {x, y}

o2 : DGAlgebra
i3 : KM = koszulComplexDGM R^1

o3 = {Base ring => R                    }
      DG algebra => R[T   ..T   ]
                       1,1   1,2
                                       1
      Natural module => (R[T   ..T   ])
                            1,1   1,2
      Generator degrees => {{0, 0}}
      Differentials on gens => {0}

o3 : DGModule
i4 : id_KM == identityDGModuleMap KM

o4 = true
i5 : id_KM == 1

o5 = true

The identity is the neutral element for composition of DG module maps. On a semifree resolution of the residue field, the mult-by-y chain map is idempotent under pre- and post-composition with the identity:

i6 : Mdg = minimalSemifreeResolution(A, R^1 / ideal(x, y), EndDegree => 2)

o6 = {Base ring => R                                          }
      DG algebra => R[T   ..T   ]
                       1,1   1,2
                                       3
      Natural module => (R[T   ..T   ])
                            1,1   1,2
      Generator degrees => {{0, 0}, {2, 2}, {2, 2}}
      Differentials on gens => {0, | xT_(1,1) |, | yT_(1,2) |}
                                   |     0    |  |     0    |
                                   |     0    |  |     0    |

o6 : DGModule
i7 : natGens = apply(rank Mdg.natural, i -> (Mdg.natural)_i)

o7 = {| 1 |, | 0 |, | 0 |}
      | 0 |  | 1 |  | 0 |
      | 0 |  | 0 |  | 1 |

o7 : List
i8 : fy = dgModuleMap(Mdg, Mdg, apply(natGens, v -> y * v))

                               3
o8 = {Source => (R[T   ..T   ])  }
                    1,1   1,2
                               3
      Target => (R[T   ..T   ])
                    1,1   1,2
      Natural => {0, 0} | y 0 0 |
                 {2, 2} | 0 y 0 |
                 {2, 2} | 0 0 y |

o8 : DGModuleMap
i9 : idMdg = identityDGModuleMap Mdg

                               3
o9 = {Source => (R[T   ..T   ])  }
                    1,1   1,2
                               3
      Target => (R[T   ..T   ])
                    1,1   1,2
      Natural => {0, 0} | 1 0 0 |
                 {2, 2} | 0 1 0 |
                 {2, 2} | 0 0 1 |

o9 : DGModuleMap
i10 : idMdg * fy == fy

o10 = true
i11 : fy * idMdg == fy

o11 = true
i12 : idMdg * idMdg == idMdg

o12 = true

See also

Ways to use identityDGModuleMap:

  • identityDGModuleMap(DGModule)

For the programmer

The object identityDGModuleMap is a method function.


The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/DGAlgebras/doc.m2:394:0.