-
Notifications
You must be signed in to change notification settings - Fork 225
Description
Implementing BatchNormalize
for NonIdentity
is currently not possible because the implementation needs access to various internals that are currently not abstracted over in elliptic-curve
. So the implementation currently has to live where ProjectivePoint
is defined, e.g. primeorder
.
Because NonIdentity
is a non-local type for e.g. primeorder
, it can't implement BatchNormalize
for it. However, we can always implement it in elliptic-curve
by allocating more memory to basically make a copy of the given list converted to ProjectivePoint
s and call its BatchNormalize
implementation.
One more thing that comes to mind: make NonIdentity
#[transparent]
and transmute the given slice to ProjectivePoint
s without having to allocate additional memory. Which is unsafe
ofc.