Macaulay2 » Documentation
Packages » A1BrouwerDegrees :: getDiagonalClass
next | previous | forward | backward | up | index | toc

getDiagonalClass -- produces a diagonalized form for any Grothendieck-Witt class, with simplified terms on the diagonal

Synopsis

Description

Given a symmetric bilinear form, this method uses the diagonalizeViaCongruence command in order to produce a diagonal symmetric bilinear form isomorphic to $\beta$, with reduced square classes appearing as the diagonal entries.

i1 : M = matrix(QQ, {{9,1,7,4},{1,10,3,2},{7,3,6,7},{4,2,7,5}});

              4       4
o1 : Matrix QQ  <-- QQ
i2 : beta = makeGWClass M;
i3 : getDiagonalClass beta

o3 = | 1 0  0   0   |
     | 0 89 0   0   |
     | 0 0  445 0   |
     | 0 0  0   -55 |

o3 : GrothendieckWittClass

Note that the GrothendieckWittClass type caches diagonal versions of a form once they've been computed. We can recover this quickly in the following way.

i4 : beta.cache.getDiagonalClass

o4 = | 1 0  0   0   |
     | 0 89 0   0   |
     | 0 0  445 0   |
     | 0 0  0   -55 |

o4 : GrothendieckWittClass

See also

Ways to use getDiagonalClass:

For the programmer

The object getDiagonalClass is a method function.