# Orthogonal Linear Groups with GAP#

class sage.groups.matrix_gps.orthogonal_gap.OrthogonalMatrixGroup_gap(degree, base_ring, special, sage_name, latex_string, gap_command_string, category=None)#

The general or special orthogonal group in GAP.

invariant_bilinear_form()#

Return the symmetric bilinear form preserved by the orthogonal group.

OUTPUT:

A matrix $$M$$ such that, for every group element $$g$$, the identity $$g m g^T = m$$ holds. In characteristic different from two, this uniquely determines the orthogonal group.

EXAMPLES:

sage: G = GO(4, GF(7), -1)
sage: G.invariant_bilinear_form()
[0 1 0 0]
[1 0 0 0]
[0 0 2 0]
[0 0 0 2]

sage: G = GO(4, GF(7), +1)
sage: G.invariant_bilinear_form()
[0 1 0 0]
[1 0 0 0]
[0 0 6 0]
[0 0 0 2]

sage: G = SO(4, GF(7), -1)
sage: G.invariant_bilinear_form()
[0 1 0 0]
[1 0 0 0]
[0 0 2 0]
[0 0 0 2]

invariant_form()#

Return the symmetric bilinear form preserved by the orthogonal group.

OUTPUT:

A matrix $$M$$ such that, for every group element $$g$$, the identity $$g m g^T = m$$ holds. In characteristic different from two, this uniquely determines the orthogonal group.

EXAMPLES:

sage: G = GO(4, GF(7), -1)
sage: G.invariant_bilinear_form()
[0 1 0 0]
[1 0 0 0]
[0 0 2 0]
[0 0 0 2]

sage: G = GO(4, GF(7), +1)
sage: G.invariant_bilinear_form()
[0 1 0 0]
[1 0 0 0]
[0 0 6 0]
[0 0 0 2]

sage: G = SO(4, GF(7), -1)
sage: G.invariant_bilinear_form()
[0 1 0 0]
[1 0 0 0]
[0 0 2 0]
[0 0 0 2]


Return the quadratic form preserved by the orthogonal group.

OUTPUT:

The matrix $$Q$$ defining “orthogonal” as follows. The matrix determines a quadratic form $$q$$ on the natural vector space $$V$$, on which $$G$$ acts, by $$q(v) = v Q v^t$$. A matrix $$M$$ is an element of the orthogonal group if $$q(v) = q(v M)$$ for all $$v \in V$$.

EXAMPLES:

sage: G = GO(4, GF(7), -1)
[0 1 0 0]
[0 0 0 0]
[0 0 1 0]
[0 0 0 1]

sage: G = GO(4, GF(7), +1)
[0 1 0 0]
[0 0 0 0]
[0 0 3 0]
[0 0 0 1]

sage: G = GO(4, QQ)