A GrothendieckWittClass object is a type of HashTable encoding the isomorphism class of a non-degenerate symmetric bilinear form $V\times V\to k$ over a field or finite étale algebra over a field.
Given any basis $e_1,\ldots,e_n$ for $V$ as a $k$-vector space, we can encode the symmetric bilinear form $\beta$ by how it acts on basis elements. That is, we can produce a matrix $\left(\beta(e_i,e_j)\right)_{i,j}$. This is called a Gram matrix for the symmetric bilinear form. A change of basis produces a congruent Gram matrix, so thus a matrix represents a symmetric bilinear form uniquely up to matrix congruence.
A GrothendieckWittClass object can be built from a symmetric matrix over a field using the makeGWClass method.
|
|
|
The underlying matrix of a GrothendieckWittClass object can be accessed using the getMatrix method which is the Gram matrix of the symmetric bilinear form represented by the GrothendieckWittClass object. This matrix is a symmetric matrix over the base algebra of the GrothendieckWittClass object which can be retrieved using the getAlgebra method. If further the GrothendieckWittClass object is over a field, then the field can be retrieved using the getBaseField method.
|
|
|
For computational purposes, it is often useful to have a GrothendieckWittClass diagonalize the Gram-matrix representative of the symmetric bilinear form. This can be done using the getDiagonalClass method. The diagonalization is done over the base algebra of the GrothendieckWittClass object, and the result is a new GrothendieckWittClass object with a diagonal Gram matrix which is stored in the cache for quick recovery later on.
|
|
We additionally have the following methods which can be applied to Grothendieck-Witt classes:
and Boolean methods for Grothendieck-Witt classes:
The object GrothendieckWittClass is a type, with ancestor classes HashTable < Thing.
The source of this document is in A1BrouwerDegrees/Documentation/GrothendieckWittClassesDoc.m2:57:0.