All the usual equality, membership and subset functions are provided along with a collection of deconstruction functions and others.
Returns true if the points p and q are equal, otherwise false.
Return true if the points p and q are not equal, otherwise false.
Return true if the lines l and m are equal, otherwise false.
Return true if the lines l and m are not equal, otherwise false.
Return true if point p lies on the line l, otherwise false.
Return true if point p does not lie on the line l, otherwise false.
Given a subset S of the point set of the plane P and a line l of P, return true if the subset S of points lies on the line l, otherwise false.
Given a subset S of the point set of the plane P and a line l of P, return true if the subset S of points does not lie on the line l, otherwise false.
The unique point common to the lines l and m.
Given a line l of the plane P, return a representative point of P which is incident with l.
Given a line l of the plane P, return a random point of P which is incident with l.
Given a point p from the point--set V of a plane P, return the index of p, i.e. the integer i such that p is V.i.
Given a line l, return the index of l in the plane P, i.e. the integer i such that l is L.i (where L is the line--set of P).
The i-th coordinate of the point p, which must be from a classical plane. If p is from a projective plane, then i must satisfy 1 ≤i ≤3; if p is from an affine plane, then i must satisfy 1 ≤i ≤2.
The i-th coordinate of the line l, which must be from a classical plane. The integer i must satisfy 1 ≤i ≤3. Recall that in a classical plane <a:b:c> (where a, b, c ∈K) represents the line given by the equation ax + by + cz = 0 in a projective plane or ax + by + c = 0 in an affine plane.
Given a point p = (a:b:c) from a classical projective plane P (or p = (a, b) from a classical affine plane P), return the sequence [a, b, c] (or [a, b] in the affine case) of coordinates of p.
Given a line l = <a:b:c> from a classical plane P (projective or affine), return the sequence [a, b, c] of coordinates of l.
Given a point p = (a:b:c) from a classical projective plane P (or p = (a, b) from a classical affine plane P), return the sequence [a, b, c] (or [a, b] in the affine case) of coordinates of p.
Given a line l = <a:b:c> from a classical plane P (projective or affine), return the sequence [a, b, c] of coordinates of l.
The set of points contained in the line l.
> K<w> := GF(4); > P, V, L := FiniteProjectivePlane(K);Create the line x + z = 0:
> l := L![1, 0, 1]; > l; < 1 : 0 : 1 >Look at the points on the line l:
> Set(l); { ( 0 : 1 : 0 ), ( 1 : w^2 : 1 ), ( 1 : 0 : 1 ), ( 1 : w : 1 ), ( 1 : 1 : 1) }Get the coordinates of the line l:
> Coordinates(P, l); [ 1, 0, 1 ] > l[1]; 1Find the index of the line l in the line--set L of P, and check it:
> Index(P, l); 8 > l eq L.8; trueTest if a point is on the line l:
> V![1, 0, 1] in l; trueTest a set of points for containment in l:
> S := {V.1, V.2}; > S; { ( 1 : 0 : 0 ), ( 0 : 1 : 0 ) } > S subset l; falseCreate the line containing the points in S:
> l2 := L!S; > l2; < 0 : 0 : 1 > > S subset l2; trueAnd finally, find the point common to the lines l and l2:
> p := l meet l2; > p; ( 0 : 1 : 0 ) > p[3]; 0
Return true if the set S of points of the plane P are collinear, otherwise false. If the points are collinear, the line which they define is also returned.
Return true if the set R of lines of the plane P are concurrent, otherwise false. If the lines are concurrent, their common point is returned as a second value.
Return true if the set S of points of a plane P contains a quadrangle.
The pencil of lines passing through the point p in the plane P.
The slope of the line l of a classical affine plane P.
Return true if the line l is parallel to the line m in the affine plane P.
The parallel class containing the line l of an affine plane P.
The partition into parallel classes of the lines of the affine plane P.
> A, V, L := FiniteAffinePlane(3);Create the line y = 2x + 1 in A, and check its slope:
> l := L![2, 1]; > l; < 1 : 1 : 2 > > Slope(l); 2Find the lines parallel to l:
> ParallelClass(l); { < 1 : 1 : 0 >, < 1 : 1 : 1 >, < 1 : 1 : 2 > } > [Slope(m): m in ParallelClass(l)]; [ 2, 2, 2 ]Get the pencil of lines through a point of l:
> p := Rep(l); > p; ( 1, 0 ) > Pencil(A, p); { < 1 : 0 : 2 >, < 1 : 1 : 2 >, < 1 : 2 : 2 >, < 0 : 1 : 0 > }