Crate ark_test_curves

source ·

Modules

Macros

Structs

Enums

  • Indication of the field element’s quadratic residuosity
  • Precomputation that makes computing square roots faster A particular variant should only be instantiated if the modulus satisfies the corresponding condition.

Traits

  • The canonical representation of an elliptic curve group element. This should represent the affine coordinates of the point corresponding to this group element.
  • This defines a BigInteger, a smart wrapper around a sequence of u64 limbs, least-significant limb first.
  • Defines a Cubic extension field from a cubic non-residue.
  • Elliptic curves can be represented via different “models” with varying efficiency properties. CurveConfig bundles together the types that are common to all models of the given curve, namely the BaseField over which the curve is defined, and the ScalarField defined by the appropriate prime-order subgroup of the curve.
  • Wrapper trait representing a cycle of elliptic curves (E1, E2) such that the base field of E1 is the scalar field of E2, and the scalar field of E1 is the base field of E2.
  • An opaque representation of an elliptic curve group element that is suitable for efficient group arithmetic.
  • Fields that have a cyclotomic multiplicative subgroup, and which can leverage efficient inversion and squaring algorithms for elements in this subgroup. If a field has multiplicative order p^d - 1, the cyclotomic subgroups refer to subgroups of order φ_n(p), for any n < d, where φ_n is the n-th cyclotomic polynomial.
  • The interface for fields that are able to be used in FFTs.
  • The interface for a generic field.
    Types implementing Field support common field operations such as addition, subtraction, multiplication, and inverses.
  • Trait that specifies constants and methods for defining degree-two extension fields.
  • Trait that specifies constants and methods for defining degree-three extension fields.
  • A trait that specifies the configuration of a prime field. Also specifies how to perform arithmetic on field elements.
  • Represents (elements of) a group of prime order r.
  • A trait that specifies the constants and arithmetic procedures for Montgomery arithmetic over the prime field defined by MODULUS.
  • Defines a multiplicative identity element for Self.
  • A cycle of curves where both curves are pairing-friendly.
  • The interface for a prime field, i.e. the field of integers modulo a prime $p$.
    In the following example we’ll use the prime field underlying the BLS12-381 G1 curve.
  • Defines a Quadratic extension field from a quadratic non-residue.
  • Types that can be converted to a vector of F elements. Useful for specifying how public inputs to a constraint system should be represented inside that constraint system.
  • Defines an additive identity element for Self.

Functions

Type Definitions

Derive Macros