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

UnstableGrothendieckWittClass -- a new type intended to capture an element of the unstable Grothendieck-Witt group of a field or finite étale algebras over a field

Description

An UnstableGrothendieckWittClass object is a type of HashTable intended to capture an element of the unstable Grothendieck-Witt group of a field or finite étale algebras over a field. The unstable Grothendieck-Witt group is defined to be $\text{GW}^{u}(k)=\text{GW}(k)\times_{k^{\times}/(k^{\times})^{2}}k^{\times}/$, where $\text{GW}(k)$ is the Grothendieck-Witt ring considered as an Abelian group under addition and multiplication in the respective factors. Objects of type UnstableGrothendieckWittClass encode the data of a matrix and nonzero scalar defined over the same field or finite étale algebra, corresponding to the Gram matrix of the $\text{GW}(k)$ factor and the $k^{\times}$ factor, respectively, subject to the condition that the determinant of the Gram matrix agrees the non-zero element of the field or finite étale algebra up to multiplication by a square.

An UnstableGrothendieckWittClass object can be built from a symmetric matrix and a non-zero element of the base field or finite étale algebra using the makeGWuClass method.

i1 : M = matrix(QQ, {{0,1},{1,0}})

o1 = | 0 1 |
     | 1 0 |

              2       2
o1 : Matrix QQ  <-- QQ
i2 : alpha = makeGWuClass(M, -4)

o2 = (| 0 1 |, -4)
      | 1 0 |

o2 : UnstableGrothendieckWittClass
i3 : class alpha

o3 = UnstableGrothendieckWittClass

o3 : Type

i4 : beta0 = makeGWClass matrix(QQ, {{0,1},{1,0}})

o4 = | 0 1 |
     | 1 0 |

o4 : GrothendieckWittClass
i5 : beta = makeGWuClass(beta0, -4)

o5 = (| 0 1 |, -4)
      | 1 0 |

o5 : UnstableGrothendieckWittClass
i6 : class beta

o6 = UnstableGrothendieckWittClass

o6 : Type

Alternatively, we can construct a UnstableGrothendieckWittClass object by applying makeGWuClass to M or beta0, which will automatically use the determinant of the matrix as the non-zero element of the base field or finite étale algebra.

i7 : gamma = makeGWuClass(M)

o7 = (| 0 1 |, -1)
      | 1 0 |

o7 : UnstableGrothendieckWittClass
i8 : class gamma

o8 = UnstableGrothendieckWittClass

o8 : Type

i9 : delta = makeGWuClass(beta0)

o9 = (| 0 1 |, -1)
      | 1 0 |

o9 : UnstableGrothendieckWittClass
i10 : class delta

o10 = UnstableGrothendieckWittClass

o10 : Type

The underlying matrix of an UnstableGrothendieckWittClass object can be accessed using the getMatrix method which is the Gram matrix of the symmetric bilinear form represented by the UnstableGrothendieckWittClass object. This matrix is a symmetric matrix over the base algebra of the GrothendieckWittClass object. The underlying scalar of an UnstableGrothendieckWittClass object can similarly be accessed using the getScalar method.

i11 : getMatrix delta

o11 = | 0 1 |
      | 1 0 |

               2       2
o11 : Matrix QQ  <-- QQ
i12 : getScalar delta

o12 = -1

o12 : QQ

The algebra over 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.

i13 : getAlgebra delta

o13 = QQ

o13 : Ring
i14 : getBaseField delta

o14 = QQ

o14 : Ring

As in the case of Grothendieck-Witt classes, it is often useful to have a diagonal representative of the $\text{GW}(k)$ factor of an UnstableGrothendieckWittClass. The method getDiagonalClass diagonalizes the underlying matrix of the class over the base algebra of the UnstableGrothendieckWittClass object. The result is a new UnstableGrothendieckWittClass with $\text{GW}(k)$ factor a diagonal Gram matrix. The entire class is stored in the cache for quick recovery later on.

i15 : diagonalClass = getDiagonalClass beta;
i16 : beta.cache.getDiagonalClass

o16 = (| 2 0  |, -4)
       | 0 -2 |

o16 : UnstableGrothendieckWittClass

See also

Functions and methods returning an Unstable Grothendieck-Witt Class:

  • addGWu(UnstableGrothendieckWittClass,UnstableGrothendieckWittClass) -- see addGWu -- the direct sum for two unstable Grothendieck-Witt Classes
  • addGWuDivisorial(List,List) -- see addGWuDivisorial -- the divisorial sum of local degrees of a rational function
  • getDiagonalClass(UnstableGrothendieckWittClass) -- see getDiagonalClass -- produces a diagonalized form for any (unstable) Grothendieck-Witt class, with simplified terms on the diagonal
  • getGlobalUnstableA1Degree(RingElement) -- see getGlobalUnstableA1Degree -- computes the global unstable $\mathbb{A}^{1}$-Brouwer degree of a pointed rational function $f/g:\mathbb{P}^{1}_{k}\to\mathbb{P}^{1}_{k}$
  • getGlobalUnstableA1Degree(RingElement,RingElement) -- see getGlobalUnstableA1Degree -- computes the global unstable $\mathbb{A}^{1}$-Brouwer degree of a pointed rational function $f/g:\mathbb{P}^{1}_{k}\to\mathbb{P}^{1}_{k}$
  • getLocalUnstableA1Degree(RingElement,Number) -- see getLocalUnstableA1Degree -- computes a local unstable $\mathbb{A}^{1}$-Brouwer degree of a pointed rational function $f/g:\mathbb{P}^{1}_{k}\to\mathbb{P}^{1}_{k}$ at a root $p\in\mathbb{P}^{1}_{k}$
  • getLocalUnstableA1Degree(RingElement,RingElement) -- see getLocalUnstableA1Degree -- computes a local unstable $\mathbb{A}^{1}$-Brouwer degree of a pointed rational function $f/g:\mathbb{P}^{1}_{k}\to\mathbb{P}^{1}_{k}$ at a root $p\in\mathbb{P}^{1}_{k}$
  • getLocalUnstableA1Degree(RingElement,RingElement,Number) -- see getLocalUnstableA1Degree -- computes a local unstable $\mathbb{A}^{1}$-Brouwer degree of a pointed rational function $f/g:\mathbb{P}^{1}_{k}\to\mathbb{P}^{1}_{k}$ at a root $p\in\mathbb{P}^{1}_{k}$
  • getLocalUnstableA1Degree(RingElement,RingElement,RingElement) -- see getLocalUnstableA1Degree -- computes a local unstable $\mathbb{A}^{1}$-Brouwer degree of a pointed rational function $f/g:\mathbb{P}^{1}_{k}\to\mathbb{P}^{1}_{k}$ at a root $p\in\mathbb{P}^{1}_{k}$
  • getSumDecomposition(UnstableGrothendieckWittClass) -- see getSumDecomposition -- produces a simplified diagonal representative of a Grothendieck-Witt class or unstable Grothendieck-Witt class
  • makeGWuClass(GrothendieckWittClass) -- see makeGWuClass -- constructor for unstable Grothendieck-Witt classes
  • makeGWuClass(GrothendieckWittClass,Number) -- see makeGWuClass -- constructor for unstable Grothendieck-Witt classes
  • makeGWuClass(GrothendieckWittClass,RingElement) -- see makeGWuClass -- constructor for unstable Grothendieck-Witt classes
  • makeGWuClass(Matrix) -- see makeGWuClass -- constructor for unstable Grothendieck-Witt classes
  • makeGWuClass(Matrix,Number) -- see makeGWuClass -- constructor for unstable Grothendieck-Witt classes
  • makeGWuClass(Matrix,RingElement) -- see makeGWuClass -- constructor for unstable Grothendieck-Witt classes

Methods that use an Unstable Grothendieck-Witt Class:

  • getAlgebra(UnstableGrothendieckWittClass) -- see getAlgebra -- returns the algebra over which a stable or unstable Grothendieck-Witt class is defined
  • getBaseField(UnstableGrothendieckWittClass) -- see getBaseField -- returns the base field of a stable or unstable Grothendieck-Witt class
  • getGWClass(UnstableGrothendieckWittClass) -- see getGWClass -- returns the Grothendieck-Witt class of the stable part of an unstable Grothendieck-Witt class
  • getMatrix(UnstableGrothendieckWittClass) -- see getMatrix -- returns the Gram matrix of a stable or unstable Grothendieck-Witt class
  • getScalar(UnstableGrothendieckWittClass) -- see getScalar -- returns the non-zero scalar of an unstable Grothendieck-Witt class
  • getSumDecompositionString(UnstableGrothendieckWittClass) -- see getSumDecompositionString -- produces a simplified string representation of a Grothendieck-Witt class or unstable Grothendieck-Witt class
  • isIsomorphicForm(UnstableGrothendieckWittClass,UnstableGrothendieckWittClass) -- see isIsomorphicForm -- determines whether two (unstable) Grothendieck-Witt classes over $\mathbb{C},\mathbb{R},\mathbb{Q}$ or a finite field of characteristic not 2 are isomorphic.
  • net(UnstableGrothendieckWittClass)
  • texMath(UnstableGrothendieckWittClass)

For the programmer

The object UnstableGrothendieckWittClass is a type, with ancestor classes HashTable < Thing.


The source of this document is in A1BrouwerDegrees/Documentation/UnstableGrothendieckWittClassesDoc.m2:57:0.