Type Alias sp1_recursion_compiler::ir::Digest
source · pub type Digest<T> = FieldArray<T, NUM_RANDOM_ELEMENTS>;
Aliased Type§
struct Digest<T>(pub [T; 4]);
Fields§
§0: [T; 4]
Trait Implementations
source§impl<F, const N: usize> AbstractField for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> AbstractField for FieldArray<F, N>where
F: Field,
type F = F
fn zero() -> FieldArray<F, N>
fn one() -> FieldArray<F, N>
fn two() -> FieldArray<F, N>
fn neg_one() -> FieldArray<F, N>
fn from_f(f: <FieldArray<F, N> as AbstractField>::F) -> FieldArray<F, N>
fn from_bool(b: bool) -> FieldArray<F, N>
fn from_canonical_u8(n: u8) -> FieldArray<F, N>
fn from_canonical_u16(n: u16) -> FieldArray<F, N>
fn from_canonical_u32(n: u32) -> FieldArray<F, N>
fn from_canonical_u64(n: u64) -> FieldArray<F, N>
fn from_canonical_usize(n: usize) -> FieldArray<F, N>
fn from_wrapped_u32(n: u32) -> FieldArray<F, N>
fn from_wrapped_u64(n: u64) -> FieldArray<F, N>
source§fn generator() -> FieldArray<F, N>
fn generator() -> FieldArray<F, N>
A generator of this field’s entire multiplicative group.
fn double(&self) -> Self
fn square(&self) -> Self
fn cube(&self) -> Self
fn exp_const_u64<const POWER: u64>(&self) -> Self
fn exp_power_of_2(&self, power_log: usize) -> Self
fn powers(&self) -> Powers<Self>
fn shifted_powers(&self, start: Self) -> Powers<Self>
fn powers_packed<P>(&self) -> PackedPowers<Self, P>where
P: PackedField<Scalar = Self>,
fn shifted_powers_packed<P>(&self, start: Self) -> PackedPowers<Self, P>where
P: PackedField<Scalar = Self>,
fn dot_product<const N: usize>(u: &[Self; N], v: &[Self; N]) -> Self
fn try_div<Rhs>(self, rhs: Rhs) -> Option<Self::Output>
source§impl<F, const N: usize> Add for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> Add for FieldArray<F, N>where
F: Field,
source§type Output = FieldArray<F, N>
type Output = FieldArray<F, N>
The resulting type after applying the
+
operator.source§fn add(self, rhs: FieldArray<F, N>) -> <FieldArray<F, N> as Add>::Output
fn add(self, rhs: FieldArray<F, N>) -> <FieldArray<F, N> as Add>::Output
Performs the
+
operation. Read moresource§impl<F, const N: usize> AddAssign<F> for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> AddAssign<F> for FieldArray<F, N>where
F: Field,
source§fn add_assign(&mut self, rhs: F)
fn add_assign(&mut self, rhs: F)
Performs the
+=
operation. Read moresource§impl<F, const N: usize> AddAssign for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> AddAssign for FieldArray<F, N>where
F: Field,
source§fn add_assign(&mut self, rhs: FieldArray<F, N>)
fn add_assign(&mut self, rhs: FieldArray<F, N>)
Performs the
+=
operation. Read moresource§impl<F, const N: usize> Clone for FieldArray<F, N>
impl<F, const N: usize> Clone for FieldArray<F, N>
source§fn clone(&self) -> FieldArray<F, N>
fn clone(&self) -> FieldArray<F, N>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<F, const N: usize> Debug for FieldArray<F, N>
impl<F, const N: usize> Debug for FieldArray<F, N>
source§impl<F, const N: usize> Default for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> Default for FieldArray<F, N>where
F: Field,
source§fn default() -> FieldArray<F, N>
fn default() -> FieldArray<F, N>
Returns the “default value” for a type. Read more
source§impl<F, const N: usize> From<[F; N]> for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> From<[F; N]> for FieldArray<F, N>where
F: Field,
source§fn from(arr: [F; N]) -> FieldArray<F, N>
fn from(arr: [F; N]) -> FieldArray<F, N>
Converts to this type from the input type.
source§impl<F, const N: usize> From<F> for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> From<F> for FieldArray<F, N>where
F: Field,
source§fn from(val: F) -> FieldArray<F, N>
fn from(val: F) -> FieldArray<F, N>
Converts to this type from the input type.
source§impl<F, const N: usize> Mul for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> Mul for FieldArray<F, N>where
F: Field,
source§type Output = FieldArray<F, N>
type Output = FieldArray<F, N>
The resulting type after applying the
*
operator.source§fn mul(self, rhs: FieldArray<F, N>) -> <FieldArray<F, N> as Mul>::Output
fn mul(self, rhs: FieldArray<F, N>) -> <FieldArray<F, N> as Mul>::Output
Performs the
*
operation. Read moresource§impl<F, const N: usize> MulAssign<F> for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> MulAssign<F> for FieldArray<F, N>where
F: Field,
source§fn mul_assign(&mut self, rhs: F)
fn mul_assign(&mut self, rhs: F)
Performs the
*=
operation. Read moresource§impl<F, const N: usize> MulAssign for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> MulAssign for FieldArray<F, N>where
F: Field,
source§fn mul_assign(&mut self, rhs: FieldArray<F, N>)
fn mul_assign(&mut self, rhs: FieldArray<F, N>)
Performs the
*=
operation. Read moresource§impl<F, const N: usize> PartialEq for FieldArray<F, N>
impl<F, const N: usize> PartialEq for FieldArray<F, N>
source§impl<F, const N: usize> Product for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> Product for FieldArray<F, N>where
F: Field,
source§fn product<I>(iter: I) -> FieldArray<F, N>where
I: Iterator<Item = FieldArray<F, N>>,
fn product<I>(iter: I) -> FieldArray<F, N>where
I: Iterator<Item = FieldArray<F, N>>,
Takes an iterator and generates
Self
from the elements by multiplying
the items.source§impl<F, const N: usize> Sub for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> Sub for FieldArray<F, N>where
F: Field,
source§type Output = FieldArray<F, N>
type Output = FieldArray<F, N>
The resulting type after applying the
-
operator.source§fn sub(self, rhs: FieldArray<F, N>) -> <FieldArray<F, N> as Sub>::Output
fn sub(self, rhs: FieldArray<F, N>) -> <FieldArray<F, N> as Sub>::Output
Performs the
-
operation. Read moresource§impl<F, const N: usize> SubAssign<F> for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> SubAssign<F> for FieldArray<F, N>where
F: Field,
source§fn sub_assign(&mut self, rhs: F)
fn sub_assign(&mut self, rhs: F)
Performs the
-=
operation. Read moresource§impl<F, const N: usize> SubAssign for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> SubAssign for FieldArray<F, N>where
F: Field,
source§fn sub_assign(&mut self, rhs: FieldArray<F, N>)
fn sub_assign(&mut self, rhs: FieldArray<F, N>)
Performs the
-=
operation. Read moresource§impl<F, const N: usize> Sum for FieldArray<F, N>where
F: Field,
impl<F, const N: usize> Sum for FieldArray<F, N>where
F: Field,
source§fn sum<I>(iter: I) -> FieldArray<F, N>where
I: Iterator<Item = FieldArray<F, N>>,
fn sum<I>(iter: I) -> FieldArray<F, N>where
I: Iterator<Item = FieldArray<F, N>>,
Takes an iterator and generates
Self
from the elements by “summing up”
the items.