[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
Construction of a Plane

Construction of a Plane

All functions which create a plane return three values:

These "sets" ((ii) and (iii)) are used as the parent structures for points and lines respectively, and are explained more fully in the next section.
ProjectivePlane< v | X : parameters > : RngIntElt, List -> ProjPl
ProjectivePlane< V | X : parameters > : SetIndx, List -> ProjPl
    Check: BoolElt                      Default: true
Construct the projective plane P having as point set the indexed set V (or {@ 1, 2, ... . v @} if an integer v is given), and as line set L = { L_1, L_2, ..., L_b } given by the list X. The value of X must be either: The optional boolean argument Check indicates whether or not to check that the given data satisfies the projective plane axioms.
ProjectivePlane(W) : ModTupFld -> ProjPl
ProjectivePlane(F) : FldFin -> ProjPl
ProjectivePlane(q) : RngIntElt -> ProjPl
Given a 3-dimensional vector space W defined over the field F = GF(q), construct the classical projective plane defined by the one-dimensional and two-dimensional subspaces of W.
AffinePlane< v | X : parameters > : RngIntElt, List -> AffPl
AffinePlane< V | X : parameters > : SetIndx, List -> AffPl
    Check: BoolElt                      Default: true
Construct the affine plane P having as point set the indexed set V (or {@ 1, 2, ... . v @} if an integer v is given), and as line set L = { L_1, L_2, ..., L_b } given by the list X. The value of X must be either: The optional boolean argument Check indicates whether or not to check that the given data satisfies the affine plane axioms.
AffinePlane(W) : ModFld -> AffPl
AffinePlane(F) : FldFin -> ProjPl
AffinePlane(q) : RngIntElt -> ProjPl
Given a 2-dimensional vector space W defined over the field F = GF(q), construct the classical affine plane defined by the cosets of the subspaces of W.

Example Plane_Constructors (H57E1)

The classical projective plane of order 3 can be constructed by the following statement:

> P, V, L := ProjectivePlane(3);
> P;
Projective Plane PG(2, 3)
> V;
Point-set of Projective Plane PG(2, 3)
> L;
Line-set of Projective Plane PG(2, 3)
A non-classical affine plane of order 2 can be constructed in the following way:

> A := AffinePlane< 4 | Setseq(Subsets({1, 2, 3, 4}, 2)) >;
> A: Maximal;
Affine Plane of order 2
Points: {@ 1, 2, 3, 4 @}
Lines:
    {1, 3},
    {1, 4},
    {2, 4},
    {2, 3},
    {1, 2},
    {3, 4}
To demonstrate the use of the Check argument, we recreate the classical projective plane of order 16 with Check := true (the default) and Check := false.

> P, V, L := ProjectivePlane(16);
> time P2 := ProjectivePlane< Points(P) | {Set(l): l in L} : Check := true >;
Time: 10.769
> time P2 := ProjectivePlane< Points(P) | {Set(l): l in L} : Check := false >;
Time: 0.030

[Next] [Prev] [Right] [Left] [Up] [Index] [Root]