The Weil Pairing II

There is an alternative way to define the Weil Pairing. To prove the equivalence of definitions, we first show that the pairing is nondegenerate and bilinear. Then this means the pairing is completely determined by its value on $e(P,Q)$ for some basis $P,Q$ of $E[m]$, so in fact all bilinear nondegenerate pairings on $E[m]$ are equal up to a constant.

Let $P, Q$ be two $m$-torsion points. Let $\mathcal{A}_P$ be some divisor such that

\[ \mathcal{A}_P ~ \langle P \rangle - \langle O \rangle \]

and similarly $\mathcal{A}_Q$ be a divisor such that

\[ \mathcal{A}_Q ~ \langle Q \rangle - \langle O \rangle \]

Both $m \mathcal{A}_P$ and $m \mathcal{A}_Q$ are principal. Let $f_P$ be a rational function such that

\[ \langle f_P \rangle = m \mathcal{A}_P \]

and similarly let $f_Q$ be a rational function such that

\[ \langle f_Q \rangle = m \mathcal{A}_Q \]

Then define the Weil pairing of $P$ and $Q$ to be

\[ e(P,Q) = \frac{f_P(\mathcal{A}_Q)}{f_Q(\mathcal{A}_P)} \]

for choices of $f_P$ and $f_Q$ such that this ratio is well-defined.

Weil Reciprocity

To prove that the Weil pairing is well-defined and bilinear one uses a fact known as Weil reciprocity: for all rational functions $f, g$

\[ f(\langle g \rangle ) = g ( \langle f \rangle ) \]

The following gives some intuition as to why this may be true. Consider two functions $f(x) = (x - a_1)(x - a_2)$ and $g(x) = (x - b_1)(x - b_2)$. Then the zeroes of $f$ are $a_1, a_2$ and the zeroes of $g$ are $b_1, b_2$, and we have $f(b_1)f(b_2) = g(a_1)g(a_2)$.