Class EdwardsCurve<E,F extends Field<E>>
java.lang.Object
dk.jonaslindstrom.ruffini.elliptic.structures.EdwardsCurve<E,F>
- All Implemented Interfaces:
AdditiveGroup<EdwardsPoint<E>>
,CommutativeMonoid<EdwardsPoint<E>>
,Set<EdwardsPoint<E>>
public class EdwardsCurve<E,F extends Field<E>>
extends Object
implements AdditiveGroup<EdwardsPoint<E>>
Instances of this class represents a curve over a field over elements of type
E
satisfying the equation
x2 + y2 = 1 + d x2 y2.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionadd
(EdwardsPoint<E> a, EdwardsPoint<E> b) Return the result of a+b.boolean
equals
(EdwardsPoint<E> a, EdwardsPoint<E> b) Returnstrue
if and only if a = b as elements of this set.Pair<MontgomeryCurve<E,
F>, java.util.function.Function<EdwardsPoint<E>, AffinePoint<E>>> Return an elliptic curve in Montgomery form which is birationally equivalent to this curve and a mapping from points on this curve to points on the Montgomery curve.negate
(EdwardsPoint<E> a) Return -a.toString
(EdwardsPoint<E> a) Returns a human-readable string representation of an element in this set.zero()
Return the zero element.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface dk.jonaslindstrom.ruffini.common.abstractions.AdditiveGroup
doubling, isZero, scale, scale, subtract, sum
Methods inherited from interface dk.jonaslindstrom.ruffini.common.abstractions.CommutativeMonoid
add, add
-
Constructor Details
-
EdwardsCurve
-
-
Method Details
-
toString
Description copied from interface:Set
Returns a human-readable string representation of an element in this set. -
equals
Description copied from interface:Set
Returnstrue
if and only if a = b as elements of this set. -
add
Description copied from interface:CommutativeMonoid
Return the result of a+b.- Specified by:
add
in interfaceCommutativeMonoid<E>
-
negate
Description copied from interface:AdditiveGroup
Return -a.- Specified by:
negate
in interfaceAdditiveGroup<E>
-
zero
Description copied from interface:CommutativeMonoid
Return the zero element.- Specified by:
zero
in interfaceCommutativeMonoid<E>
-
getCorrespondingMontgomeryCurve
public Pair<MontgomeryCurve<E,F>, getCorrespondingMontgomeryCurve()java.util.function.Function<EdwardsPoint<E>, AffinePoint<E>>> Return an elliptic curve in Montgomery form which is birationally equivalent to this curve and a mapping from points on this curve to points on the Montgomery curve.
-