Macaulay2 » Documentation
Packages » AInfinity » burkeResolution » extractBlocks
next | previous | forward | backward | up | index | toc

# extractBlocks -- displays components of a map in a labeled complex

- Usage:
    `M = extractBlocks(f, sour)`
    `M = extractBlocks(f, tar, sour)`
- Inputs:
  - sour, a list, list of ZZ, the label of a summand of the source of f
  - sour, a list, list of ZZ, the label of a summand of the source of f OR list of lists of ZZ, specifying multiple summands
  - tar, a list, same as sour, but for the target of f
- Outputs:
  - M, a matrix, the submatrix specified by tar and sour

## Description

The terms of the burkeResolution resolution are direct sums of labeled modules. the function picture shows the symbols associated to the summands, while the function extractBlocks provides the submatrix associated with the summands specified.

    i1 : R = ZZ/101[a,b,c,d]/ideal(a^2, b^2, c^3, d^4)

    o1 = R

    o1 : QuotientRing

    i2 : M = R^1/ideal(a*b,c*d)

    o2 = cokernel | ab cd |

                                1
    o2 : R-module, quotient of R

    i3 : F = burkeResolution(M,5)

          1      6      17      42      112      295
    o3 = R  <-- R  <-- R   <-- R   <-- R    <-- R

         0      1      2       3       4        5

    o3 : Complex

    i4 : picture F.dd_3

         +------+---+------+------+
    o4 = |      |{3}|{3, 0}|{2, 1}|
         +------+---+------+------+
         |  {2} | * |   8  |   8  |
         +------+---+------+------+
         |{2, 0}| . |   .  |   *  |
         +------+---+------+------+

    i5 : extractBlocks(F.dd_3, {2,1})

    o5 = {3} | 0 a  b 0  0 0 -b 0  0 0  0 0 0  0  0  0  0 0   0  0  0  0  0   0 |
         {3} | 0 0  a 0  0 0 -a -b 0 0  0 0 0  0  0  0  0 0   0  0  0  0  0   0 |
         {4} | 0 0  0 1  0 0 0  0  0 0  0 0 0  0  0  0  0 0   0  0  0  0  0   0 |
         {4} | 0 0  0 0  0 0 0  0  0 0  0 0 0  0  0  0  0 0   0  0  0  0  0   0 |
         {4} | 0 0  0 0  0 0 0  0  0 1  0 0 0  0  0  0  0 0   0  0  0  0  0   0 |
         {4} | 0 0  0 0  0 0 0  0  0 0  0 0 0  0  0  -c 0 -d3 0  0  0  0  d3  0 |
         {5} | 0 0  0 0  1 0 0  0  0 0  0 0 -1 0  0  0  0 0   0  0  0  0  0   0 |
         {5} | 0 0  0 0  0 0 0  0  0 0  0 0 0  -1 0  0  0 0   0  0  0  0  0   0 |
         {5} | 0 0  0 0  0 0 0  0  0 0  1 0 0  0  -1 0  0 0   0  0  0  0  0   0 |
         {5} | 0 0  0 0  0 0 0  0  0 0  0 0 0  0  0  0  0 c2  0  0  0  -d -c2 0 |
         {6} | 0 0  0 0  0 1 0  0  0 0  0 0 0  0  0  0  0 0   -1 0  0  0  0   0 |
         {6} | 0 0  0 0  0 0 0  0  0 0  0 0 0  0  0  0  0 0   0  -1 0  0  0   0 |
         {6} | 0 0  0 0  0 0 0  0  0 0  0 1 0  0  0  0  0 0   0  0  -1 0  0   0 |
         {2} | 0 ab 0 cd 0 0 0  0  0 0  0 0 0  0  0  0  0 0   0  0  0  0  0   0 |
         {2} | 0 0  0 0  0 0 0  ab 0 cd 0 0 0  0  0  0  0 0   0  0  0  0  0   0 |
         {3} | 0 0  0 0  0 0 0  0  0 0  0 0 0  ab 0  cd 0 0   0  0  0  0  0   0 |
         {4} | 0 0  0 0  0 0 0  0  0 0  0 0 0  0  0  0  0 0   0  ab 0  cd 0   0 |

                 17      24
    o5 : Matrix R   <-- R

    i6 : extractBlocks(F.dd_3,{2,0}, {2,1})

    o6 = {2} | 0 ab 0 cd 0 0 0 0  0 0  0 0 0 0  0 0  0 0 0 0  0 0  0 0 |
         {2} | 0 0  0 0  0 0 0 ab 0 cd 0 0 0 0  0 0  0 0 0 0  0 0  0 0 |
         {3} | 0 0  0 0  0 0 0 0  0 0  0 0 0 ab 0 cd 0 0 0 0  0 0  0 0 |
         {4} | 0 0  0 0  0 0 0 0  0 0  0 0 0 0  0 0  0 0 0 ab 0 cd 0 0 |

                 4      24
    o6 : Matrix R  <-- R

    i7 : extractBlocks(F.dd_3,{2,0}, {{3,0},{2,1}})

    o7 = {2} | 0 0 0 0 0 0 0 ab 0 cd 0 0 0 0  0 0  0 0 0 0  0 0  0 0 0 0  0 0  0
         {2} | 0 0 0 0 0 0 0 0  0 0  0 0 0 ab 0 cd 0 0 0 0  0 0  0 0 0 0  0 0  0
         {3} | 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0 0 0 ab 0 cd 0 0 0 0  0 0  0
         {4} | 0 0 0 0 0 0 0 0  0 0  0 0 0 0  0 0  0 0 0 0  0 0  0 0 0 ab 0 cd 0
         ------------------------------------------------------------------------
         0 |
         0 |
         0 |
         0 |

                 4      30
    o7 : Matrix R  <-- R

## See also

- burkeResolution -- compute a resolution from A-infinity structures
- picture -- displays information about the blocks of a map or maps between direct sum modules

## Ways to use extractBlocks:

- `extractBlocks(Matrix,List)`
- `extractBlocks(Matrix,List,List)`

## For the programmer

The object extractBlocks is a method function.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/AInfinity.m2:1456:0.