Module ark_ff::fields

source ·


  • pub use ark_ff_macros;
  • pub use self::models::*;



  • 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.


  • 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.
  • 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.