1 | initial version |
The construction goes like this (obtained by entering E.height_pairing_matrix??
into a SageMath session):
for j in range(r):
mat[j, j] = points[j].height(precision=precision, normalised=normalised)
for j in range(r):
for k in range(j + 1, r):
mat[j, k] = ((points[j] + points[k]).height(precision=precision, normalised=normalised) - mat[j, j] - mat[k, k]) / 2
mat[k, j] = mat[j, k]
So the matrix contains P.height()
and ((2*P).height() - 2*P.height())/2
.