Macaulay2 » Documentation
Packages » Cremona :: toMap
next | previous | forward | backward | up | index | toc

toMap -- rational map defined by a linear system

Synopsis

Description

When the input represents a list of homogeneous elements $F_0,\ldots,F_m\in R=K[t_0,\ldots,t_n]/I$ of the same degree, then the method returns the ring map $\phi:K[x_0,\ldots,x_m] \to R$ that sends $x_i$ into $F_i$.

i1 : QQ[t_0,t_1];
i2 : linSys=gens (ideal(t_0,t_1))^5

o2 = | t_0^5 t_0^4t_1 t_0^3t_1^2 t_0^2t_1^3 t_0t_1^4 t_1^5 |

                        1                 6
o2 : Matrix (QQ[t ..t ])  <-- (QQ[t ..t ])
                 0   1             0   1
i3 : phi=toMap linSys

                                    5   4     3 2   2 3     4   5
o3 = map (QQ[t ..t ], QQ[x ..x ], {t , t t , t t , t t , t t , t })
              0   1       0   5     0   0 1   0 1   0 1   0 1   1

o3 : RingMap QQ[t ..t ] <-- QQ[x ..x ]
                 0   1          0   5

If a positive integer $d$ is passed to the option Dominant, then the method returns the induced map on $K[x_0,\ldots,x_m]/J_d$, where $J_d$ is the ideal generated by all homogeneous elements of degree $d$ of the kernel of $\phi$ (in this case kernel(RingMap,ZZ) is called).

i4 : phi'=toMap(linSys,Dominant=>2)

                                                                              QQ[x ..x ]
                                                                                  0   5                                                             5   4     3 2   2 3     4   5
o4 = map (QQ[t ..t ], --------------------------------------------------------------------------------------------------------------------------, {t , t t , t t , t t , t t , t })
              0   1     2                                                 2                                    2                       2            0   0 1   0 1   0 1   0 1   1
                      (x  - x x , x x  - x x , x x  - x x , x x  - x x , x  - x x , x x  - x x , x x  - x x , x  - x x , x x  - x x , x  - x x )
                        4    3 5   3 4    2 5   2 4    1 5   1 4    0 5   3    1 5   2 3    0 5   1 3    0 4   2    0 4   1 2    0 3   1    0 2

                                                                                    QQ[x ..x ]
                                                                                        0   5
o4 : RingMap QQ[t ..t ] <-- --------------------------------------------------------------------------------------------------------------------------
                 0   1        2                                                 2                                    2                       2
                            (x  - x x , x x  - x x , x x  - x x , x x  - x x , x  - x x , x x  - x x , x x  - x x , x  - x x , x x  - x x , x  - x x )
                              4    3 5   3 4    2 5   2 4    1 5   1 4    0 5   3    1 5   2 3    0 5   1 3    0 4   2    0 4   1 2    0 3   1    0 2

If the input is a pair consisting of a homogeneous ideal $I$ and an integer $v$, then the output will be the map defined by the linear system of hypersurfaces of degree $v$ which contain the projective subscheme defined by $I$.

i5 : I=kernel phi

             2                                                 2             
o5 = ideal (x  - x x , x x  - x x , x x  - x x , x x  - x x , x  - x x , x x 
             4    3 5   3 4    2 5   2 4    1 5   1 4    0 5   3    1 5   2 3
     ------------------------------------------------------------------------
                           2                       2
     - x x , x x  - x x , x  - x x , x x  - x x , x  - x x )
        0 5   1 3    0 4   2    0 4   1 2    0 3   1    0 2

o5 : Ideal of QQ[x ..x ]
                  0   5
i6 : toMap(I,2)

                                    2                                                 2                                    2                       2
o6 = map (QQ[x ..x ], QQ[y ..y ], {x  - x x , x x  - x x , x x  - x x , x x  - x x , x  - x x , x x  - x x , x x  - x x , x  - x x , x x  - x x , x  - x x })
              0   5       0   9     4    3 5   3 4    2 5   2 4    1 5   1 4    0 5   3    1 5   2 3    0 5   1 3    0 4   2    0 4   1 2    0 3   1    0 2

o6 : RingMap QQ[x ..x ] <-- QQ[y ..y ]
                 0   5          0   9

This is identical to toMap(I,v,1), while the output of toMap(I,v,e) will be the map defined by the linear system of hypersurfaces of degree $v$ having points of multiplicity $e$ along the projective subscheme defined by $I$.

i7 : toMap(I,2,1)

                                    2                                                 2                                    2                       2
o7 = map (QQ[x ..x ], QQ[y ..y ], {x  - x x , x x  - x x , x x  - x x , x x  - x x , x  - x x , x x  - x x , x x  - x x , x  - x x , x x  - x x , x  - x x })
              0   5       0   9     4    3 5   3 4    2 5   2 4    1 5   1 4    0 5   3    1 5   2 3    0 5   1 3    0 4   2    0 4   1 2    0 3   1    0 2

o7 : RingMap QQ[x ..x ] <-- QQ[y ..y ]
                 0   5          0   9
i8 : toMap(I,2,2)

o8 = map (QQ[x ..x ], QQ[], {})
              0   5

o8 : RingMap QQ[x ..x ] <-- QQ[]
                 0   5
i9 : toMap(I,3,2)

                                    3                2    2                2    2                 2                     2        2                      2              3                2    2
o9 = map (QQ[x ..x ], QQ[y ..y ], {x  - 2x x x  + x x  + x x  - x x x , x x  - x x  - x x x  + x x  + x x x  - x x x , x x  - x x  - x x x  + x x x  + x x  - x x x , x  - 2x x x  + x x  + x x  - x x x })
              0   5       0   3     3     2 3 4    1 4    2 5    1 3 5   2 3    2 4    1 3 4    0 4    1 2 5    0 3 5   2 3    1 3    1 2 4    0 3 4    1 5    0 2 5   2     1 2 3    0 3    1 4    0 2 4

o9 : RingMap QQ[x ..x ] <-- QQ[y ..y ]
                 0   5          0   3

See also

Ways to use toMap :

For the programmer

The object toMap is a method function with options.