next | previous | forward | backward | up | index | toc

# HilbertSymbol -- computes the Hilbert symbol of two integers or rational numbers at a prime

## Synopsis

• Usage:
HilbertSymbol(a,b,p)
• Inputs:
• a, , any integer or rational number, considered as an element of $\mathbb{Q}_p$
• b, , any integer or rational number, considered as an element of $\mathbb{Q}_p$
• p, an integer, any integer prime number
• Outputs:
• an integer, the Hilbert symbol $(a,b)_p$

## Description

The Hasse-Witt invariant of a diagonal form $\langle a_1,\ldots,a_n\rangle$ over a field $K$ is defined to be the product $\prod_{i<j} \phi(a_i,a_j)$ where $\phi \colon K \times K \to \left\{\pm 1\right\}$ is any symbol (see e.g. [MH73, III.5.4] for a definition). It is a classical result of Hilbert that over a local field of characteristic not equal to two, there is one and only symbol, $(-,-)_p$ called the Hilbert symbol ([S73, Chapter III]) computed as follows:

$(a,b)_p = \begin{cases} 1 & z^2 = ax^2 + by^2 \text{ has a nonzero solution in } K^3 \\ -1 & \text{otherwise.} \end{cases}$

Consider the following example, where we observe that $z^2 = 2x^2 + y^2$ does admit nonzero solutions mod 7, in particular $(x,y,z) = (1,0,3)$:

 i1 : HilbertSymbol(2,1,7) o1 = 1

Computing Hasse-Witt invariants is a key step in classifying symmetric bilinear forms over the rational numbers, and in particular certifying their (an)isotropy.

Citations:

• [S73] J.P. Serre, A course in arithmetic, Springer-Verlag, 1973.
• [MH73] Milnor and Husemoller, Symmetric bilinear forms, Springer-Verlag, 1973.

## Ways to use HilbertSymbol :

• HilbertSymbol(QQ,QQ,ZZ)
• HilbertSymbol(QQ,ZZ,ZZ)
• HilbertSymbol(ZZ,QQ,ZZ)
• HilbertSymbol(ZZ,ZZ,ZZ)

## For the programmer

The object HilbertSymbol is .