Trait pairing_ce::PrimeField[][src]

pub trait PrimeField: Field {
    type Repr: PrimeFieldRepr + From<Self>;

    const NUM_BITS: u32;
    const CAPACITY: u32;
    const S: u32;

    fn from_repr(repr: Self::Repr) -> Result<Self, PrimeFieldDecodingError>;
fn from_raw_repr(repr: Self::Repr) -> Result<Self, PrimeFieldDecodingError>;
fn into_repr(&self) -> Self::Repr;
fn into_raw_repr(&self) -> Self::Repr;
fn char() -> Self::Repr;
fn multiplicative_generator() -> Self;
fn root_of_unity() -> Self; fn from_str(s: &str) -> Option<Self> { ... } }

This represents an element of a prime field.

Associated Types

type Repr: PrimeFieldRepr + From<Self>[src]

The prime field can be converted back and forth into this biginteger representation.

Loading content...

Associated Constants

const NUM_BITS: u32[src]

How many bits are needed to represent an element of this field.

const CAPACITY: u32[src]

How many bits of information can be reliably stored in the field element.

const S: u32[src]

2^s * t = char() - 1 with t odd.

Loading content...

Required methods

fn from_repr(repr: Self::Repr) -> Result<Self, PrimeFieldDecodingError>[src]

Convert this prime field element into a biginteger representation.

fn from_raw_repr(repr: Self::Repr) -> Result<Self, PrimeFieldDecodingError>[src]

Creates an element from raw representation in Montgommery form.

fn into_repr(&self) -> Self::Repr[src]

Convert a biginteger representation into a prime field element, if the number is an element of the field.

fn into_raw_repr(&self) -> Self::Repr[src]

Expose Montgommery represendation.

fn char() -> Self::Repr[src]

Returns the field characteristic; the modulus.

fn multiplicative_generator() -> Self[src]

Returns the multiplicative generator of char() - 1 order. This element must also be quadratic nonresidue.

fn root_of_unity() -> Self[src]

Returns the 2^s root of unity computed by exponentiating the multiplicative_generator() by t.

Loading content...

Provided methods

fn from_str(s: &str) -> Option<Self>[src]

Interpret a string of numbers as a (congruent) prime field element. Does not accept unnecessary leading zeroes or a blank string.

Loading content...

Implementors

impl PrimeField for pairing_ce::bls12_381::Fq[src]

impl PrimeField for pairing_ce::bls12_381::Fr[src]

impl PrimeField for pairing_ce::bn256::Fq[src]

impl PrimeField for pairing_ce::bn256::Fr[src]

impl PrimeField for pairing_ce::compact_bn256::Fq[src]

impl PrimeField for pairing_ce::compact_bn256::Fr[src]

Loading content...