Macaulay2 » Documentation
Packages » RationalMaps :: RationalMapping
next | previous | forward | backward | up | index | toc

RationalMapping -- a rational mapping between projective varieties

Synopsis

Description

A RationalMapping is a Type that is used to treat maps between projective varieties geometrically. It stores essentially equivalent data to the corresponding map between the homogeneous coordinate rings. The way to construct the object is to use the function rationalMapping.

For example, the following is a Cremona transformation on $P^2$ constructed in multiple ways (in this case, the entries describing the map all have degree 2).

i1 : R = QQ[x,y,z]

o1 = R

o1 : PolynomialRing
i2 : P2 = Proj(R)

o2 = P2

o2 : ProjectiveVariety
i3 : phi1 = rationalMapping(P2, P2, {y*z,x*z,x*y})

o3 = P2 - - - > P2   {y*z, x*z, x*y}

o3 : RationalMapping
i4 : phi2 = rationalMapping(R, R, matrix{{y*z,x*z,x*y}})

o4 = P2 - - - > P2   {y*z, x*z, x*y}

o4 : RationalMapping
i5 : phi3 = rationalMapping(map(R, R, {y*z,x*z,x*y}))

o5 = P2 - - - > P2   {y*z, x*z, x*y}

o5 : RationalMapping

The source and target can also be different. For example, consider the following map from $P^1$ to a nodal cubic in $P^2$.

i6 : S = QQ[x,y,z];
i7 : P2 = Proj S;
i8 : R = QQ[a,b];
i9 : P1 = Proj R;
i10 : phi = rationalMapping(P2, P1, {b*a*(a-b), a^2*(a-b), b^3})

                        2       2   3    2    3
o10 = P1 - - - > P2   {a b - a*b , a  - a b, b }

o10 : RationalMapping
i11 : h = map(R, S, {b*a*(a-b), a^2*(a-b), b^3})

                   2       2   3    2    3
o11 = map (R, S, {a b - a*b , a  - a b, b })

o11 : RingMap R <-- S
i12 : psi = rationalMapping h

                        2       2   3    2    3
o12 = P1 - - - > P2   {a b - a*b , a  - a b, b }

o12 : RationalMapping
i13 : phi == psi

o13 = true

Notice that when defining a map between projective varieties, we keep the target then source input convention.

Warning, the list or matrix describing the map needs every entry to have the same degree.

See also

Functions and methods returning an object of class RationalMapping :

Methods that use an object of class RationalMapping :

For the programmer

The object RationalMapping is a type, with ancestor classes HashTable < Thing.