next | previous | forward | backward | up | top | index | toc | Macaulay2 website
Complexes :: truncate(List,ComplexMap)

truncate(List,ComplexMap) -- truncation of a complex map at a specified degree or set of degrees

Synopsis

Description

Truncation of homogeneous (graded) maps induces a natural operation on maps of chain complexes.

In the singly graded case, the truncation of a homogeneous module $M$ at degree $d$ is generated by all homogeneous elements of degree at least $d$ in $M$. The truncation of a map between homogeneous modules is the induced map between the truncation of the source and the truncation of the target. This method applies this operation to each term in a map of chain complexes.

i1 : R = QQ[a,b,c];
i2 : C = freeResolution ideal(a*b, a*c, b*c)

      1      3      2
o2 = R  <-- R  <-- R
                    
     0      1      2

o2 : Complex
i3 : D = (freeResolution ideal(a*b, a*c, b*c, a^2-b^2))[-1]

      1      4      4      1
o3 = R  <-- R  <-- R  <-- R
                           
     1      2      3      4

o3 : Complex
i4 : f = randomComplexMap(D,C, Cycle => true)

                   1
o4 = 0 : 0 <----- R  : 0
              0

          1                                                                                                           3
     1 : R  <------------------------------------------------------------------------------------------------------- R  : 1
               | 9/2a2+ab+b2+9/4ac+3/4bc 7/9a2+7/10ab+6b2+13/14ac+5/2bc+6/7c2 2a2+3/2ab+3/4b2+7/10ac+49/12bc+7c2 |

          4                                                    2
     2 : R  <------------------------------------------------ R  : 2
               {2} | 6b-c              -2a-6b-5/4c        |
               {2} | -61/9a-7/10b-7/6c 95/18a-41/20b-5/4c |
               {2} | 11/2a+7/6b+9/4c   11/20a-7/3b-7c     |
               {2} | 1/14a-5/2b-3/28c  3/7a+5/4b+6/7c     |

o4 : ComplexMap
i5 : g = truncate(3,f)

o5 = 1 : image | c3 bc2 ac2 b2c abc a2c b3 ab2 a2b a3 | <----------------------------------------------------------- image {2} | c b a 0 0 0 0 0 0 | : 1
                                                           {3} | 0   0   0   6/7   0     0     7     0     0     |         {2} | 0 0 0 c b a 0 0 0 |
                                                           {3} | 3/4 0   0   5/2   6/7   0     49/12 7     0     |         {2} | 0 0 0 0 0 0 c b a |
                                                           {3} | 9/4 0   0   13/14 0     6/7   7/10  0     7     |
                                                           {3} | 1   3/4 0   6     5/2   0     3/4   49/12 0     |
                                                           {3} | 1   9/4 3/4 7/10  13/14 5/2   3/2   7/10  49/12 |
                                                           {3} | 9/2 0   9/4 7/9   0     13/14 2     0     7/10  |
                                                           {3} | 0   1   0   0     6     0     0     3/4   0     |
                                                           {3} | 0   1   1   0     7/10  6     0     3/2   3/4   |
                                                           {3} | 0   9/2 1   0     7/9   7/10  0     2     3/2   |
                                                           {3} | 0   0   9/2 0     0     7/9   0     0     2     |

                                                                          2
     2 : image {2} | c b a 0 0 0 0 0 0 0 0 0 | <------------------------ R  : 2
               {2} | 0 0 0 c b a 0 0 0 0 0 0 |    {3} | -1    -5/4   |
               {2} | 0 0 0 0 0 0 c b a 0 0 0 |    {3} | 6     -6     |
               {2} | 0 0 0 0 0 0 0 0 0 c b a |    {3} | 0     -2     |
                                                  {3} | -7/6  -5/4   |
                                                  {3} | -7/10 -41/20 |
                                                  {3} | -61/9 95/18  |
                                                  {3} | 9/4   -7     |
                                                  {3} | 7/6   -7/3   |
                                                  {3} | 11/2  11/20  |
                                                  {3} | -3/28 6/7    |
                                                  {3} | -5/2  5/4    |
                                                  {3} | 1/14  3/7    |

o5 : ComplexMap
i6 : assert isWellDefined g
i7 : assert (source g == truncate(3, source f))
i8 : assert (target g == truncate(3, target f))

Truncating at a degree less than the minimal generators is the identity operation.

i9 : assert(f == truncate(0, f))

In the multi-graded case, the truncation of a homogeneous module at a list of degrees is generated by all homogeneous elements of degree that are component-wise greater than or equal to at least one of the degrees. As in the singly graded case, this induces a map between the truncations the source and target.

i10 : A = ZZ/101[x_0, x_1, y_0, y_1, y_2, Degrees => {2:{1,0}, 3:{0,1}}];
i11 : I = intersect(ideal(x_0, x_1), ideal(y_0, y_1, y_2))

o11 = ideal (x y , x y , x y , x y , x y , x y )
              1 2   0 2   1 1   0 1   1 0   0 0

o11 : Ideal of A
i12 : C = freeResolution I

       1      6      9      5      1
o12 = A  <-- A  <-- A  <-- A  <-- A
                                   
      0      1      2      3      4

o12 : Complex
i13 : J = intersect(ideal(x_0^2, x_1^2), ideal(y_0^2, y_1^2, y_2^2))

              2 2   2 2   2 2   2 2   2 2   2 2
o13 = ideal (x y , x y , x y , x y , x y , x y )
              1 2   0 2   1 1   0 1   1 0   0 0

o13 : Ideal of A
i14 : D = freeResolution J

       1      6      9      5      1
o14 = A  <-- A  <-- A  <-- A  <-- A
                                   
      0      1      2      3      4

o14 : Complex
i15 : f = extend(C, D, id_(A^1))

           1             1
o15 = 0 : A  <--------- A  : 0
                | 1 |

           6                                                            6
      1 : A  <-------------------------------------------------------- A  : 1
                {1, 1} | x_0y_0 0      0      0      0      0      |
                {1, 1} | 0      x_1y_0 0      0      0      0      |
                {1, 1} | 0      0      x_0y_1 0      0      0      |
                {1, 1} | 0      0      0      x_1y_1 0      0      |
                {1, 1} | 0      0      0      0      x_0y_2 0      |
                {1, 1} | 0      0      0      0      0      x_1y_2 |

           9                                                                                                            9
      2 : A  <-------------------------------------------------------------------------------------------------------- A  : 2
                {2, 1} | x_0x_1y_0 0         0         0         0         0         0         0         0         |
                {2, 1} | 0         x_0x_1y_1 0         0         0         0         0         0         0         |
                {1, 2} | 0         0         x_0y_0y_1 0         0         0         0         0         0         |
                {1, 2} | 0         0         0         x_1y_0y_1 0         0         0         0         0         |
                {2, 1} | 0         0         0         0         x_0x_1y_2 0         0         0         0         |
                {1, 2} | 0         0         0         0         0         x_0y_0y_2 0         0         0         |
                {1, 2} | 0         0         0         0         0         0         x_1y_0y_2 0         0         |
                {1, 2} | 0         0         0         0         0         0         0         x_0y_1y_2 0         |
                {1, 2} | 0         0         0         0         0         0         0         0         x_1y_1y_2 |

           5                                                                                   5
      3 : A  <------------------------------------------------------------------------------- A  : 3
                {2, 2} | x_0x_1y_0y_1 0            0            0            0            |
                {2, 2} | 0            x_0x_1y_0y_2 0            0            0            |
                {2, 2} | 0            0            x_0x_1y_1y_2 0            0            |
                {1, 3} | 0            0            0            x_0y_0y_1y_2 0            |
                {1, 3} | 0            0            0            0            x_1y_0y_1y_2 |

           1                                  1
      4 : A  <------------------------------ A  : 4
                {2, 3} | x_0x_1y_0y_1y_2 |

o15 : ComplexMap
i16 : g1 = prune truncate({{1,1}}, f)

o16 = 0 : cokernel {1, 1} | x_0  y_1  0    0    y_0  0    0    0    0    | <-------------------------- cokernel {1, 1} | x_0  y_1  0    0    y_0  0    0    0    0    | : 0
                   {1, 1} | -x_1 0    y_1  0    0    0    y_0  0    0    |    {1, 1} | 1 0 0 0 0 0 |            {1, 1} | -x_1 0    y_1  0    0    0    y_0  0    0    |
                   {1, 1} | 0    -y_2 0    x_0  0    y_0  0    0    0    |    {1, 1} | 0 1 0 0 0 0 |            {1, 1} | 0    -y_2 0    x_0  0    y_0  0    0    0    |
                   {1, 1} | 0    0    -y_2 -x_1 0    0    0    y_0  0    |    {1, 1} | 0 0 1 0 0 0 |            {1, 1} | 0    0    -y_2 -x_1 0    0    0    y_0  0    |
                   {1, 1} | 0    0    0    0    -y_2 -y_1 0    0    x_0  |    {1, 1} | 0 0 0 1 0 0 |            {1, 1} | 0    0    0    0    -y_2 -y_1 0    0    x_0  |
                   {1, 1} | 0    0    0    0    0    0    -y_2 -y_1 -x_1 |    {1, 1} | 0 0 0 0 1 0 |            {1, 1} | 0    0    0    0    0    0    -y_2 -y_1 -x_1 |
                                                                              {1, 1} | 0 0 0 0 0 1 |

           6                                                            6
      1 : A  <-------------------------------------------------------- A  : 1
                {1, 1} | x_0y_0 0      0      0      0      0      |
                {1, 1} | 0      x_1y_0 0      0      0      0      |
                {1, 1} | 0      0      x_0y_1 0      0      0      |
                {1, 1} | 0      0      0      x_1y_1 0      0      |
                {1, 1} | 0      0      0      0      x_0y_2 0      |
                {1, 1} | 0      0      0      0      0      x_1y_2 |

           9                                                                                                            9
      2 : A  <-------------------------------------------------------------------------------------------------------- A  : 2
                {2, 1} | x_0x_1y_0 0         0         0         0         0         0         0         0         |
                {2, 1} | 0         x_0x_1y_1 0         0         0         0         0         0         0         |
                {1, 2} | 0         0         x_0y_0y_1 0         0         0         0         0         0         |
                {1, 2} | 0         0         0         x_1y_0y_1 0         0         0         0         0         |
                {2, 1} | 0         0         0         0         x_0x_1y_2 0         0         0         0         |
                {1, 2} | 0         0         0         0         0         x_0y_0y_2 0         0         0         |
                {1, 2} | 0         0         0         0         0         0         x_1y_0y_2 0         0         |
                {1, 2} | 0         0         0         0         0         0         0         x_0y_1y_2 0         |
                {1, 2} | 0         0         0         0         0         0         0         0         x_1y_1y_2 |

           5                                                                                   5
      3 : A  <------------------------------------------------------------------------------- A  : 3
                {2, 2} | x_0x_1y_0y_1 0            0            0            0            |
                {2, 2} | 0            x_0x_1y_0y_2 0            0            0            |
                {2, 2} | 0            0            x_0x_1y_1y_2 0            0            |
                {1, 3} | 0            0            0            x_0y_0y_1y_2 0            |
                {1, 3} | 0            0            0            0            x_1y_0y_1y_2 |

           1                                  1
      4 : A  <------------------------------ A  : 4
                {2, 3} | x_0x_1y_0y_1y_2 |

o16 : ComplexMap
i17 : g2 = truncate({{1,0}}, f)

o17 = 0 : image | x_1 x_0 | <------------------ image | x_1 x_0 | : 0
                               {1, 0} | 1 0 |
                               {1, 0} | 0 1 |

      1 : image {1, 1} | 1 0 0 0 0 0 | <-------------------------------------------------------- image {2, 2} | 1 0 0 0 0 0 | : 1
                {1, 1} | 0 1 0 0 0 0 |    {1, 1} | x_0y_0 0      0      0      0      0      |         {2, 2} | 0 1 0 0 0 0 |
                {1, 1} | 0 0 1 0 0 0 |    {1, 1} | 0      x_1y_0 0      0      0      0      |         {2, 2} | 0 0 1 0 0 0 |
                {1, 1} | 0 0 0 1 0 0 |    {1, 1} | 0      0      x_0y_1 0      0      0      |         {2, 2} | 0 0 0 1 0 0 |
                {1, 1} | 0 0 0 0 1 0 |    {1, 1} | 0      0      0      x_1y_1 0      0      |         {2, 2} | 0 0 0 0 1 0 |
                {1, 1} | 0 0 0 0 0 1 |    {1, 1} | 0      0      0      0      x_0y_2 0      |         {2, 2} | 0 0 0 0 0 1 |
                                          {1, 1} | 0      0      0      0      0      x_1y_2 |

      2 : image {2, 1} | 1 0 0 0 0 0 0 0 0 | <-------------------------------------------------------------------------------------------------------- image {4, 2} | 1 0 0 0 0 0 0 0 0 | : 2
                {2, 1} | 0 1 0 0 0 0 0 0 0 |    {2, 1} | x_0x_1y_0 0         0         0         0         0         0         0         0         |         {4, 2} | 0 1 0 0 0 0 0 0 0 |
                {1, 2} | 0 0 1 0 0 0 0 0 0 |    {2, 1} | 0         x_0x_1y_1 0         0         0         0         0         0         0         |         {2, 4} | 0 0 1 0 0 0 0 0 0 |
                {1, 2} | 0 0 0 1 0 0 0 0 0 |    {1, 2} | 0         0         x_0y_0y_1 0         0         0         0         0         0         |         {2, 4} | 0 0 0 1 0 0 0 0 0 |
                {2, 1} | 0 0 0 0 1 0 0 0 0 |    {1, 2} | 0         0         0         x_1y_0y_1 0         0         0         0         0         |         {4, 2} | 0 0 0 0 1 0 0 0 0 |
                {1, 2} | 0 0 0 0 0 1 0 0 0 |    {2, 1} | 0         0         0         0         x_0x_1y_2 0         0         0         0         |         {2, 4} | 0 0 0 0 0 1 0 0 0 |
                {1, 2} | 0 0 0 0 0 0 1 0 0 |    {1, 2} | 0         0         0         0         0         x_0y_0y_2 0         0         0         |         {2, 4} | 0 0 0 0 0 0 1 0 0 |
                {1, 2} | 0 0 0 0 0 0 0 1 0 |    {1, 2} | 0         0         0         0         0         0         x_1y_0y_2 0         0         |         {2, 4} | 0 0 0 0 0 0 0 1 0 |
                {1, 2} | 0 0 0 0 0 0 0 0 1 |    {1, 2} | 0         0         0         0         0         0         0         x_0y_1y_2 0         |         {2, 4} | 0 0 0 0 0 0 0 0 1 |
                                                {1, 2} | 0         0         0         0         0         0         0         0         x_1y_1y_2 |

      3 : image {2, 2} | 1 0 0 0 0 | <------------------------------------------------------------------------------- image {4, 4} | 1 0 0 0 0 | : 3
                {2, 2} | 0 1 0 0 0 |    {2, 2} | x_0x_1y_0y_1 0            0            0            0            |         {4, 4} | 0 1 0 0 0 |
                {2, 2} | 0 0 1 0 0 |    {2, 2} | 0            x_0x_1y_0y_2 0            0            0            |         {4, 4} | 0 0 1 0 0 |
                {1, 3} | 0 0 0 1 0 |    {2, 2} | 0            0            x_0x_1y_1y_2 0            0            |         {2, 6} | 0 0 0 1 0 |
                {1, 3} | 0 0 0 0 1 |    {1, 3} | 0            0            0            x_0y_0y_1y_2 0            |         {2, 6} | 0 0 0 0 1 |
                                        {1, 3} | 0            0            0            0            x_1y_0y_1y_2 |

      4 : image {2, 3} | 1 | <------------------------------ image {4, 6} | 1 | : 4
                                {2, 3} | x_0x_1y_0y_1y_2 |

o17 : ComplexMap
i18 : g3 = truncate({{0,1}}, f)

o18 = 0 : image | y_2 y_1 y_0 | <-------------------- image | y_2 y_1 y_0 | : 0
                                   {0, 1} | 1 0 0 |
                                   {0, 1} | 0 1 0 |
                                   {0, 1} | 0 0 1 |

      1 : image {1, 1} | 1 0 0 0 0 0 | <-------------------------------------------------------- image {2, 2} | 1 0 0 0 0 0 | : 1
                {1, 1} | 0 1 0 0 0 0 |    {1, 1} | x_0y_0 0      0      0      0      0      |         {2, 2} | 0 1 0 0 0 0 |
                {1, 1} | 0 0 1 0 0 0 |    {1, 1} | 0      x_1y_0 0      0      0      0      |         {2, 2} | 0 0 1 0 0 0 |
                {1, 1} | 0 0 0 1 0 0 |    {1, 1} | 0      0      x_0y_1 0      0      0      |         {2, 2} | 0 0 0 1 0 0 |
                {1, 1} | 0 0 0 0 1 0 |    {1, 1} | 0      0      0      x_1y_1 0      0      |         {2, 2} | 0 0 0 0 1 0 |
                {1, 1} | 0 0 0 0 0 1 |    {1, 1} | 0      0      0      0      x_0y_2 0      |         {2, 2} | 0 0 0 0 0 1 |
                                          {1, 1} | 0      0      0      0      0      x_1y_2 |

      2 : image {2, 1} | 1 0 0 0 0 0 0 0 0 | <-------------------------------------------------------------------------------------------------------- image {4, 2} | 1 0 0 0 0 0 0 0 0 | : 2
                {2, 1} | 0 1 0 0 0 0 0 0 0 |    {2, 1} | x_0x_1y_0 0         0         0         0         0         0         0         0         |         {4, 2} | 0 1 0 0 0 0 0 0 0 |
                {1, 2} | 0 0 1 0 0 0 0 0 0 |    {2, 1} | 0         x_0x_1y_1 0         0         0         0         0         0         0         |         {2, 4} | 0 0 1 0 0 0 0 0 0 |
                {1, 2} | 0 0 0 1 0 0 0 0 0 |    {1, 2} | 0         0         x_0y_0y_1 0         0         0         0         0         0         |         {2, 4} | 0 0 0 1 0 0 0 0 0 |
                {2, 1} | 0 0 0 0 1 0 0 0 0 |    {1, 2} | 0         0         0         x_1y_0y_1 0         0         0         0         0         |         {4, 2} | 0 0 0 0 1 0 0 0 0 |
                {1, 2} | 0 0 0 0 0 1 0 0 0 |    {2, 1} | 0         0         0         0         x_0x_1y_2 0         0         0         0         |         {2, 4} | 0 0 0 0 0 1 0 0 0 |
                {1, 2} | 0 0 0 0 0 0 1 0 0 |    {1, 2} | 0         0         0         0         0         x_0y_0y_2 0         0         0         |         {2, 4} | 0 0 0 0 0 0 1 0 0 |
                {1, 2} | 0 0 0 0 0 0 0 1 0 |    {1, 2} | 0         0         0         0         0         0         x_1y_0y_2 0         0         |         {2, 4} | 0 0 0 0 0 0 0 1 0 |
                {1, 2} | 0 0 0 0 0 0 0 0 1 |    {1, 2} | 0         0         0         0         0         0         0         x_0y_1y_2 0         |         {2, 4} | 0 0 0 0 0 0 0 0 1 |
                                                {1, 2} | 0         0         0         0         0         0         0         0         x_1y_1y_2 |

      3 : image {2, 2} | 1 0 0 0 0 | <------------------------------------------------------------------------------- image {4, 4} | 1 0 0 0 0 | : 3
                {2, 2} | 0 1 0 0 0 |    {2, 2} | x_0x_1y_0y_1 0            0            0            0            |         {4, 4} | 0 1 0 0 0 |
                {2, 2} | 0 0 1 0 0 |    {2, 2} | 0            x_0x_1y_0y_2 0            0            0            |         {4, 4} | 0 0 1 0 0 |
                {1, 3} | 0 0 0 1 0 |    {2, 2} | 0            0            x_0x_1y_1y_2 0            0            |         {2, 6} | 0 0 0 1 0 |
                {1, 3} | 0 0 0 0 1 |    {1, 3} | 0            0            0            x_0y_0y_1y_2 0            |         {2, 6} | 0 0 0 0 1 |
                                        {1, 3} | 0            0            0            0            x_1y_0y_1y_2 |

      4 : image {2, 3} | 1 | <------------------------------ image {4, 6} | 1 | : 4
                                {2, 3} | x_0x_1y_0y_1y_2 |

o18 : ComplexMap
i19 : g4 = truncate({{1,0},{0,1}}, f)

o19 = 0 : image | y_2 y_1 y_0 x_1 x_0 | <------------------------ image | y_2 y_1 y_0 x_1 x_0 | : 0
                                           {0, 1} | 1 0 0 0 0 |
                                           {0, 1} | 0 1 0 0 0 |
                                           {0, 1} | 0 0 1 0 0 |
                                           {1, 0} | 0 0 0 1 0 |
                                           {1, 0} | 0 0 0 0 1 |

      1 : image {1, 1} | 1 0 0 0 0 0 | <-------------------------------------------------------- image {2, 2} | 1 0 0 0 0 0 | : 1
                {1, 1} | 0 1 0 0 0 0 |    {1, 1} | x_0y_0 0      0      0      0      0      |         {2, 2} | 0 1 0 0 0 0 |
                {1, 1} | 0 0 1 0 0 0 |    {1, 1} | 0      x_1y_0 0      0      0      0      |         {2, 2} | 0 0 1 0 0 0 |
                {1, 1} | 0 0 0 1 0 0 |    {1, 1} | 0      0      x_0y_1 0      0      0      |         {2, 2} | 0 0 0 1 0 0 |
                {1, 1} | 0 0 0 0 1 0 |    {1, 1} | 0      0      0      x_1y_1 0      0      |         {2, 2} | 0 0 0 0 1 0 |
                {1, 1} | 0 0 0 0 0 1 |    {1, 1} | 0      0      0      0      x_0y_2 0      |         {2, 2} | 0 0 0 0 0 1 |
                                          {1, 1} | 0      0      0      0      0      x_1y_2 |

      2 : image {2, 1} | 1 0 0 0 0 0 0 0 0 | <-------------------------------------------------------------------------------------------------------- image {4, 2} | 1 0 0 0 0 0 0 0 0 | : 2
                {2, 1} | 0 1 0 0 0 0 0 0 0 |    {2, 1} | x_0x_1y_0 0         0         0         0         0         0         0         0         |         {4, 2} | 0 1 0 0 0 0 0 0 0 |
                {1, 2} | 0 0 1 0 0 0 0 0 0 |    {2, 1} | 0         x_0x_1y_1 0         0         0         0         0         0         0         |         {2, 4} | 0 0 1 0 0 0 0 0 0 |
                {1, 2} | 0 0 0 1 0 0 0 0 0 |    {1, 2} | 0         0         x_0y_0y_1 0         0         0         0         0         0         |         {2, 4} | 0 0 0 1 0 0 0 0 0 |
                {2, 1} | 0 0 0 0 1 0 0 0 0 |    {1, 2} | 0         0         0         x_1y_0y_1 0         0         0         0         0         |         {4, 2} | 0 0 0 0 1 0 0 0 0 |
                {1, 2} | 0 0 0 0 0 1 0 0 0 |    {2, 1} | 0         0         0         0         x_0x_1y_2 0         0         0         0         |         {2, 4} | 0 0 0 0 0 1 0 0 0 |
                {1, 2} | 0 0 0 0 0 0 1 0 0 |    {1, 2} | 0         0         0         0         0         x_0y_0y_2 0         0         0         |         {2, 4} | 0 0 0 0 0 0 1 0 0 |
                {1, 2} | 0 0 0 0 0 0 0 1 0 |    {1, 2} | 0         0         0         0         0         0         x_1y_0y_2 0         0         |         {2, 4} | 0 0 0 0 0 0 0 1 0 |
                {1, 2} | 0 0 0 0 0 0 0 0 1 |    {1, 2} | 0         0         0         0         0         0         0         x_0y_1y_2 0         |         {2, 4} | 0 0 0 0 0 0 0 0 1 |
                                                {1, 2} | 0         0         0         0         0         0         0         0         x_1y_1y_2 |

      3 : image {2, 2} | 1 0 0 0 0 | <------------------------------------------------------------------------------- image {4, 4} | 1 0 0 0 0 | : 3
                {2, 2} | 0 1 0 0 0 |    {2, 2} | x_0x_1y_0y_1 0            0            0            0            |         {4, 4} | 0 1 0 0 0 |
                {2, 2} | 0 0 1 0 0 |    {2, 2} | 0            x_0x_1y_0y_2 0            0            0            |         {4, 4} | 0 0 1 0 0 |
                {1, 3} | 0 0 0 1 0 |    {2, 2} | 0            0            x_0x_1y_1y_2 0            0            |         {2, 6} | 0 0 0 1 0 |
                {1, 3} | 0 0 0 0 1 |    {1, 3} | 0            0            0            x_0y_0y_1y_2 0            |         {2, 6} | 0 0 0 0 1 |
                                        {1, 3} | 0            0            0            0            x_1y_0y_1y_2 |

      4 : image {2, 3} | 1 | <------------------------------ image {4, 6} | 1 | : 4
                                {2, 3} | x_0x_1y_0y_1y_2 |

o19 : ComplexMap
i20 : g5 = truncate({{2,2}}, f)

o20 = 0 : image | x_1^2y_2^2 x_0x_1y_2^2 x_0^2y_2^2 x_1^2y_1y_2 x_0x_1y_1y_2 x_0^2y_1y_2 x_1^2y_0y_2 x_0x_1y_0y_2 x_0^2y_0y_2 x_1^2y_1^2 x_0x_1y_1^2 x_0^2y_1^2 x_1^2y_0y_1 x_0x_1y_0y_1 x_0^2y_0y_1 x_1^2y_0^2 x_0x_1y_0^2 x_0^2y_0^2 | <-------------------------------------------------- image | x_1^2y_2^2 x_0x_1y_2^2 x_0^2y_2^2 x_1^2y_1y_2 x_0x_1y_1y_2 x_0^2y_1y_2 x_1^2y_0y_2 x_0x_1y_0y_2 x_0^2y_0y_2 x_1^2y_1^2 x_0x_1y_1^2 x_0^2y_1^2 x_1^2y_0y_1 x_0x_1y_0y_1 x_0^2y_0y_1 x_1^2y_0^2 x_0x_1y_0^2 x_0^2y_0^2 | : 0
                                                                                                                                                                                                                                            {2, 2} | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 |
                                                                                                                                                                                                                                            {2, 2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 |

      1 : image {1, 1} | x_1y_2 x_0y_2 x_1y_1 x_0y_1 x_1y_0 x_0y_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      0      0      0      0      0      0      | <-------------------------- image {2, 2} | 1 0 0 0 0 0 | : 1
                {1, 1} | 0      0      0      0      0      0      x_1y_2 x_0y_2 x_1y_1 x_0y_1 x_1y_0 x_0y_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      |    {2, 2} | 0 0 0 0 0 0 |         {2, 2} | 0 1 0 0 0 0 |
                {1, 1} | 0      0      0      0      0      0      0      0      0      0      0      0      x_1y_2 x_0y_2 x_1y_1 x_0y_1 x_1y_0 x_0y_0 0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      |    {2, 2} | 0 0 0 0 0 0 |         {2, 2} | 0 0 1 0 0 0 |
                {1, 1} | 0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      x_1y_2 x_0y_2 x_1y_1 x_0y_1 x_1y_0 x_0y_0 0      0      0      0      0      0      0      0      0      0      0      0      |    {2, 2} | 0 0 0 0 0 0 |         {2, 2} | 0 0 0 1 0 0 |
                {1, 1} | 0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      x_1y_2 x_0y_2 x_1y_1 x_0y_1 x_1y_0 x_0y_0 0      0      0      0      0      0      |    {2, 2} | 0 0 0 0 0 0 |         {2, 2} | 0 0 0 0 1 0 |
                {1, 1} | 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      0      0      0      0      0      x_1y_2 x_0y_2 x_1y_1 x_0y_1 x_1y_0 x_0y_0 |    {2, 2} | 0 0 0 0 0 0 |         {2, 2} | 0 0 0 0 0 1 |
                                                                                                                                                                                                                                                                                          {2, 2} | 1 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 1 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 1 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 1 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 1 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 1 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |
                                                                                                                                                                                                                                                                                          {2, 2} | 0 0 0 0 0 0 |

      2 : image {2, 1} | y_2 y_1 y_0 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   | <----------------------------------------------------------------------------- image {4, 2} | 1 0 0 0 0 0 0 0 0 | : 2
                {2, 1} | 0   0   0   y_2 y_1 y_0 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   |    {2, 2} | 0      0      0      0      0      0      0      0      0      |         {4, 2} | 0 1 0 0 0 0 0 0 0 |
                {1, 2} | 0   0   0   0   0   0   x_1 x_0 0   0   0   0   0   0   0   0   0   0   0   0   0   |    {2, 2} | 0      0      0      0      0      0      0      0      0      |         {2, 4} | 0 0 1 0 0 0 0 0 0 |
                {1, 2} | 0   0   0   0   0   0   0   0   x_1 x_0 0   0   0   0   0   0   0   0   0   0   0   |    {2, 2} | x_0x_1 0      0      0      0      0      0      0      0      |         {2, 4} | 0 0 0 1 0 0 0 0 0 |
                {2, 1} | 0   0   0   0   0   0   0   0   0   0   y_2 y_1 y_0 0   0   0   0   0   0   0   0   |    {2, 2} | 0      0      0      0      0      0      0      0      0      |         {4, 2} | 0 0 0 0 1 0 0 0 0 |
                {1, 2} | 0   0   0   0   0   0   0   0   0   0   0   0   0   x_1 x_0 0   0   0   0   0   0   |    {2, 2} | 0      x_0x_1 0      0      0      0      0      0      0      |         {2, 4} | 0 0 0 0 0 1 0 0 0 |
                {1, 2} | 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   x_1 x_0 0   0   0   0   |    {2, 2} | 0      0      0      0      0      0      0      0      0      |         {2, 4} | 0 0 0 0 0 0 1 0 0 |
                {1, 2} | 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   x_1 x_0 0   0   |    {2, 2} | 0      0      0      0      0      0      0      0      0      |         {2, 4} | 0 0 0 0 0 0 0 1 0 |
                {1, 2} | 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   x_1 x_0 |    {2, 2} | 0      0      y_0y_1 0      0      0      0      0      0      |         {2, 4} | 0 0 0 0 0 0 0 0 1 |
                                                                                                                  {2, 2} | 0      0      0      y_0y_1 0      0      0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      x_0x_1 0      0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      y_0y_2 0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      y_0y_2 0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      0      0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      y_1y_2 0      |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      0      y_1y_2 |
                                                                                                                  {2, 2} | 0      0      0      0      0      0      0      0      0      |

      3 : image {2, 2} | 1 0 0 0   0   0   0   | <------------------------------------------------------------------------- image {4, 4} | 1 0 0 0 0 | : 3
                {2, 2} | 0 1 0 0   0   0   0   |    {2, 2} | x_0x_1y_0y_1 0            0            0         0         |         {4, 4} | 0 1 0 0 0 |
                {2, 2} | 0 0 1 0   0   0   0   |    {2, 2} | 0            x_0x_1y_0y_2 0            0         0         |         {4, 4} | 0 0 1 0 0 |
                {1, 3} | 0 0 0 x_1 x_0 0   0   |    {2, 2} | 0            0            x_0x_1y_1y_2 0         0         |         {2, 6} | 0 0 0 1 0 |
                {1, 3} | 0 0 0 0   0   x_1 x_0 |    {2, 3} | 0            0            0            0         0         |         {2, 6} | 0 0 0 0 1 |
                                                    {2, 3} | 0            0            0            y_0y_1y_2 0         |
                                                    {2, 3} | 0            0            0            0         y_0y_1y_2 |
                                                    {2, 3} | 0            0            0            0         0         |

      4 : image {2, 3} | 1 | <------------------------------ image {4, 6} | 1 | : 4
                                {2, 3} | x_0x_1y_0y_1y_2 |

o20 : ComplexMap
i21 : assert all({g1,g2,g3,g4,g5}, isWellDefined)

See also