This class builds on the projective space class and its point and morphism classes.
EXAMPLES:
We construct products projective spaces of various dimensions over the same ring.:
sage: P1xP1.<x,y, u,v> = ProductProjectiveSpaces(QQ, [1,1])
sage: P1xP1([2,1, 3,1])
(2 : 1 , 3 : 1)
Bases: sage.schemes.generic.morphism.SchemeMorphism_point
The class of points on products of projective spaces. The components are projective space points.
EXAMPLES:
sage: T.<x,y,z,w,u> = ProductProjectiveSpaces([2,1],QQ)
sage: T.point([1,2,3,4,5]);
(1/3 : 2/3 : 1 , 4/5 : 1)
Returns a new ProductProjectiveSpaces_point which is self coerced to R.
If check is True, then the initialization checks are performed.
INPUT:
OUTPUT:
ProductProjectiveSpaces_point
EXAMPLES:
sage: T.<x,y,z,u,v,w> = ProductProjectiveSpaces([1,1,1],ZZ)
sage: P = T.point([5,3,15,4,2,6]);
sage: P.change_ring(GF(3))
(1 : 0 , 0 : 1 , 1 : 0)
Removes common factors (componentwise) from the coordinates of self (including ).
OUTPUT:
None.
EXAMPLES:
sage: T.<x,y,z,u,v,w> = ProductProjectiveSpaces([2,2],ZZ)
sage: P = T.point([5,10,15,4,2,6]);
sage: P.normalize_coordinates()
sage: P
(1 : 2 : 3 , 2 : 1 : 3)
Scale the coordinates of the point self by , done componentwise.
A TypeError occurs if the point is not in the base ring of the codomain after scaling.
INPUT:
EXAMPLES:
sage: T.<x,y,z,u,v,w> = ProductProjectiveSpaces([1,1,1],ZZ)
sage: P = T.point([5,10,15,4,2,6]);
sage: P.scale_by([2,1,1])
sage: P
(10 : 20 , 15 : 4 , 2 : 6)