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

CodimBsInv

Description

This is a technical option for approximateInverseMap. It accepts an integer which should be a lower bound for the codimension of the base locus of the inverse map. In most cases, one can obtain the optimal value to be passed as in the following example.

i1 : codimBsInv = (m) -> (
        -- input: m, the list of projective degrees of a birational map
        -- output: the codimension of the base locus of the inverse map
        k:=#m -1; z:=m_k; d:=floor(m_(k-1)/z);
        for i from 2 to k do if z*d^i - m_(k-i) > 0 then return i;
     );
i2 : phi = toMap trim minors(2,genericSymmetricMatrix(QQ[x_0..x_5],3))

                                    2                                    2                       2
o2 = map (QQ[x ..x ], QQ[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   5     4    3 5   2 4    1 5   2 3    1 4   2    0 5   1 2    0 4   1    0 3

o2 : RingMap QQ[x ..x ] <-- QQ[x ..x ]
                 0   5          0   5
i3 : codimBsInv projectiveDegrees phi

o3 = 3

However, sometimes larger values may be preferable.

Functions with optional argument named CodimBsInv :

For the programmer

The object CodimBsInv is a symbol.