GAP (Forms) - Chapter 2: Examples

Goto Chapter: Top 1 2 3 4 5 Bib Ind
[Top of Book] [Contents] [Previous Chapter] [Next Chapter]

[MathJax on]

2 Examples
2.1 A conic of PG(2,8)
2.2 A form for W(5,3)
2.3 What is the form preserved by this group?

### 2 Examples

Here we give some simple examples that display some of the functionality of Forms.

#### 2.1 A conic of PG(2,8)

Consider the three-dimensional vector space V over the finite field GF(8), and consider the following quadratic polynomial in 3 variables:

x12+x2x3.
Then this polynomial defines a quadratic form on V and the zeros form a conic of the associated projective plane. So in particular, our quadratic form defines a degenerate parabolic quadric of Witt Index 1. We will see now how we can use Forms to view this example.

    gap> gf := GF(8);
    GF(2^3)
    gap> vec := gf^3;
    ( GF(2^3)^3 )
    gap> r := PolynomialRing( gf, 3);
    PolynomialRing(..., [ x_1, x_2, x_3 ])
    gap> poly := r.1^2 + r.2 * r.3;
    x_1^2+x_2*x_3
    gap> form := QuadraticFormByPolynomial( poly, r );
    < quadratic form >
    gap> Display( form );
    Quadratic form
    Gram Matrix:
     1 . .
     . . 1
     . . .
    Polynomial: x_1^2+x_2*x_3
    gap> IsDegenerateForm( form );
    #I  Testing degeneracy of the *associated bilinear form*
    true
    gap> IsSingularForm( form );
    false
    gap> WittIndex( form );
    1
    gap> IsParabolicForm( form );
    true
    gap> RadicalOfForm( form );
    <vector space over GF(2^3), with 0 generators>

Now our conic is stabilised by a group isomorphic to GO(3,8), but which is not identical to the group returned by the GAP command `GO(3,8)`. However, our conic is the canonical conic given in Forms.

    gap> canonical := IsometricCanonicalForm( form );
    < parabolic quadratic form >
    gap> form = canonical;
    true

So we ``change forms''...

    gap> go := GO(3,8);
    GO(0,3,8)
    gap> mat := InvariantQuadraticForm( go )!.matrix;
    [ [ Z(2)^0, 0*Z(2), 0*Z(2) ], [ 0*Z(2), 0*Z(2), 0*Z(2) ],
      [ 0*Z(2), Z(2)^0, 0*Z(2) ] ]
    gap> gapform := QuadraticFormByMatrix( mat, GF(8) );
    < quadratic form >
    gap> b := BaseChangeToCanonical( gapform );
    [ [ Z(2)^0, 0*Z(2), 0*Z(2) ], [ 0*Z(2), Z(2)^0, 0*Z(2) ],
      [ 0*Z(2), 0*Z(2), Z(2)^0 ] ]
    gap> hom := BaseChangeHomomorphism( b, GF(8) );
    ^[ [ Z(2)^0, 0*Z(2), 0*Z(2) ], [ 0*Z(2), Z(2)^0, 0*Z(2) ],
      [ 0*Z(2), 0*Z(2), Z(2)^0 ] ]
    gap> newgo := Image(hom, go);
    Group(
    [ [ [ Z(2)^0, 0*Z(2), 0*Z(2) ], [ 0*Z(2), Z(2^3), 0*Z(2) ], [ 0*Z(2), 0*Z(2),
               Z(2^3)^6 ] ],
      [ [ Z(2)^0, 0*Z(2), 0*Z(2) ], [ Z(2)^0, Z(2)^0, Z(2)^0 ],
          [ 0*Z(2), Z(2)^0, 0*Z(2) ] ] ])

Now we look at the action of our new GO(3,8) on the conic.

    gap> conic := Filtered(vec, x -> IsZero( x^form ));;
    gap> Size(conic);
    64
    gap> orbs := Orbits(newgo, conic, OnRight);;
    gap> List(orbs,Size);
    [ 1, 63 ]

So we see that there is a fixed point, which is actually the nucleus of the conic, or in other words, the radical of the form.

#### 2.2 A form for W(5,3)

The symplectic polar space W(5,q) is defined by an alternating reflexive bilinear form on the six-dimensional vector space over the finite field GF(q). Any invertible 6 × 6 matrix A which satisfies A+AT=0 is a candidate for the Gram matrix of a symplectic polarity. The canonical form we adopt in Forms for an alternating form is

f(x,y)=x1y2-x2y1+x3y4-x4y3+ ... +x2n-1y2n-x2ny2n-1

    gap> f := GF(3);
    GF(3)
    gap> gram := [
    > [0,0,0,1,0,0],
    > [0,0,0,0,1,0],
    > [0,0,0,0,0,1],
    > [-1,0,0,0,0,0],
    > [0,-1,0,0,0,0],
    > [0,0,-1,0,0,0]] * One(f);;
    gap> form := BilinearFormByMatrix( gram, f );
    < bilinear form >
    gap> IsSymplecticForm( form );
    true
    gap> Display( form );
    Symplectic form
    Gram Matrix:
     . . . 1 . .
     . . . . 1 .
     . . . . . 1
     2 . . . . .
     . 2 . . . .
     . . 2 . . .
    gap> b := BaseChangeToCanonical( form );
    [ [ Z(3)^0, 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3) ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), Z(3)^0, 0*Z(3), 0*Z(3) ],
      [ 0*Z(3), Z(3)^0, 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3) ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), Z(3)^0, 0*Z(3) ],
      [ 0*Z(3), 0*Z(3), Z(3)^0, 0*Z(3), 0*Z(3), 0*Z(3) ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), Z(3)^0 ] ]
    gap> Display( b );
     1 . . . . .
     . . . 1 . .
     . 1 . . . .
     . . . . 1 .
     . . 1 . . .
     . . . . . 1
    gap> Display( b * gram * TransposedMat(b) );
     . 1 . . . .
     2 . . . . .
     . . . 1 . .
     . . 2 . . .
     . . . . . 1
     . . . . 2 .

#### 2.3 What is the form preserved by this group?

Here we start with a matrix group which is available in GAP, namely GO(5,5). We then conjugate this group by an element of GL(5,5), and then we find the forms left invariant by this copy of GO(5,5) (which we expect to be a symmetric bilinear form).

    gap> go := GO(5, 5);
    GO(0,5,5)
    gap> x :=
    > [ [ Z(5)^0, Z(5)^3, 0*Z(5), Z(5)^3, Z(5)^3 ],
    >   [ Z(5)^2, Z(5)^3, 0*Z(5), Z(5)^2, Z(5) ],
    >   [ Z(5)^2, Z(5)^2, Z(5)^0, Z(5), Z(5)^3 ],
    >   [ Z(5)^0, Z(5)^3, Z(5), Z(5)^0, Z(5)^3 ],
    >   [ Z(5)^3, 0*Z(5), Z(5)^0, 0*Z(5), Z(5) ]
    >  ];;
    gap> go2 := go^x;
    <matrix group of size 18720000 with 2 generators>
    gap> forms := PreservedSesquilinearForms( go2 );
    [ < bilinear form > ]
    gap> Display( forms[1] );
    Bilinear form
    Gram Matrix:
     4 2 4 3 3
     2 2 2 3 3
     4 2 3 1 4
     3 3 1 2 4
     3 3 4 4 3

[Top of Book] [Contents] [Previous Chapter] [Next Chapter]
Goto Chapter: Top 1 2 3 4 5 Bib Ind

generated by GAPDoc2HTML