Realizations of the Real Projective Plane

Alfred Gray

Recall that points p and q of the sphere S(a) of radius a
are called antipodal if

p =-q

The real projective plane   RP(a) can be defined as the set that results when antipodal points of  are identified.

To realize the real projective plane
as a surface  in 3-dimensional space ,let us look for a map
of  into itself with a special property.

Definition

A map F such that

F(-p)=F(p)

is said to have the antipodal property

That we can use a map with the antipodal property
to realize the real projective plane is a consequence of the following
easily-proven lemma:

Lemma

A map F with the antipodal property gives rise to a map

F: RP(a)-->R^3

Thus we can realize  as the image of  under a map  which has the antipodal property.

Let us give two examples of maps with the antipodal property
and use them to obtain two realizations of  RP(a).

Steiner's Roman Surface

When Jacob Steiner visited Rome in 1844 he discovered a surface that is now called Steiner's Roman surface. It is a realization of the real projective plane. To describe it,
we first define a map  by

romanmap[{x_,y_,z_}]:={x y, y z, z x}

It is obvious that romanmap has the antipodal property; hence  induces a map of 
RP(a) onto  romanmap(S(a)).   We call it Steiner's Roman surface surface of radius a.
Moreover, we can plot a portion of  romanmap(S(a)) by composing
romanmap with any patch on S(a).  For example, let us use the standard parametrization of  S(a) defined by

sphere[a_][u_,v_]:=a{Cos[v]Cos[u],Cos[v]Sin[u],Sin[v]}

Then the composition of romanmap with sphere parametrizes
all of Steiner's Roman surface of radius a.

To carry out this symbolic computations, we need the  Mathematica function
 Composition, which composes functions.  For example,

Composition[Sin,Cos][x]

We can get a parametrization of Steiner's Roman surface with the command

Composition[romanmap,sphere[a]][u,v]//Simplify

Therefore we define

roman[a_][u_,v_]:={(a^2/2)Sin[2u]Cos[v]^2,
                              Sin[u]Sin[2v],Cos[u]Sin[2v]}

To plot Steiner's Roman surface we use

steiner=ParametricPlot3D[
roman[1][u,v]
//Evaluate,
{u,0,Pi},
{v,-Pi/2,Pi/2},
PlotPoints->{40,40},
Boxed->False,
Axes->None];

Show[steiner,
ViewPoint->{-2.767, -1.923, 0.312}];