Function: kronecker
Section: number_theoretical
C-Name: kronecker
Prototype: lGG
Help: kronecker(x,y): kronecker symbol (x/y).
Description:
 (small, small):small  kross($1, $2)
 (int, small):small    krois($1, $2)
 (small, int):small    krosi($1, $2)
 (gen, gen):small      kronecker($1, $2)
Doc:
 \idx{Kronecker symbol} $(x|y)$, where $x$ and $y$ must be of type integer. By
 definition, this is the extension of \idx{Legendre symbol} to $\Z \times \Z$
 by total multiplicativity in both arguments with the following special rules
 for $y = 0, -1$ or $2$:

 \item $(x|0) = 1$ if $|x| = 1$ and $0$ otherwise.

 \item $(x|-1) = 1$ if $x \geq 0$ and $-1$ otherwise.

 \item $(x|2) = 0$ if $x$ is even and $1$ if $x = 1,-1 \mod 8$ and $-1$
 if $x=3,-3 \mod 8$.
