Struct poseidon_parameters::OptimizedArcMatrix
source · pub struct OptimizedArcMatrix<F: PrimeField>(pub ArcMatrix<F>);
Expand description
Represents an optimized matrix of round constants.
This modifies the partial rounds in the middle of the permutation, wherein you add constants first before iterating through the partial rounds.
This method follows calc_equivalent_constants
from Appendix B’s
poseidonperm_x3_64_24_optimized.sage
.
Tuple Fields§
§0: ArcMatrix<F>
Trait Implementations§
source§impl<F: Clone + PrimeField> Clone for OptimizedArcMatrix<F>
impl<F: Clone + PrimeField> Clone for OptimizedArcMatrix<F>
source§fn clone(&self) -> OptimizedArcMatrix<F>
fn clone(&self) -> OptimizedArcMatrix<F>
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: Debug + PrimeField> Debug for OptimizedArcMatrix<F>
impl<F: Debug + PrimeField> Debug for OptimizedArcMatrix<F>
source§impl<F: PrimeField> MatrixOperations<F> for OptimizedArcMatrix<F>
impl<F: PrimeField> MatrixOperations<F> for OptimizedArcMatrix<F>
source§fn new(n_rows: usize, n_cols: usize, elements: Vec<F>) -> Self
fn new(n_rows: usize, n_cols: usize, elements: Vec<F>) -> Self
Create a OptimizedArcMatrix
from its elements.
source§fn get_element(&self, i: usize, j: usize) -> F
fn get_element(&self, i: usize, j: usize) -> F
Get element[i,j]
source§fn set_element(&mut self, i: usize, j: usize, val: F)
fn set_element(&mut self, i: usize, j: usize, val: F)
Set element[i,j]
source§impl<F: PartialEq + PrimeField> PartialEq<OptimizedArcMatrix<F>> for OptimizedArcMatrix<F>
impl<F: PartialEq + PrimeField> PartialEq<OptimizedArcMatrix<F>> for OptimizedArcMatrix<F>
source§fn eq(&self, other: &OptimizedArcMatrix<F>) -> bool
fn eq(&self, other: &OptimizedArcMatrix<F>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl<F: Eq + PrimeField> Eq for OptimizedArcMatrix<F>
impl<F: PrimeField> StructuralEq for OptimizedArcMatrix<F>
impl<F: PrimeField> StructuralPartialEq for OptimizedArcMatrix<F>
Auto Trait Implementations§
impl<F> RefUnwindSafe for OptimizedArcMatrix<F>where F: RefUnwindSafe,
impl<F> Send for OptimizedArcMatrix<F>
impl<F> Sync for OptimizedArcMatrix<F>
impl<F> Unpin for OptimizedArcMatrix<F>where F: Unpin,
impl<F> UnwindSafe for OptimizedArcMatrix<F>where F: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more