pub trait UnstableAlgebra: Algebra {
// Required methods
fn dimension_unstable(&self, degree: i32, excess: i32) -> usize;
fn multiply_basis_elements_unstable(
&self,
result: FpSliceMut<'_>,
coeff: u32,
r_degree: i32,
r_index: usize,
s_degree: i32,
s_index: usize,
excess: i32,
);
// Provided methods
fn multiply_basis_element_by_element_unstable(
&self,
result: FpSliceMut<'_>,
coeff: u32,
r_degree: i32,
r_idx: usize,
s_degree: i32,
s: FpSlice<'_>,
excess: i32,
) { ... }
fn multiply_element_by_basis_element_unstable(
&self,
result: FpSliceMut<'_>,
coeff: u32,
r_degree: i32,
r: FpSlice<'_>,
s_degree: i32,
s_idx: usize,
excess: i32,
) { ... }
fn multiply_element_by_element_unstable(
&self,
result: FpSliceMut<'_>,
coeff: u32,
r_degree: i32,
r: FpSlice<'_>,
s_degree: i32,
s: FpSlice<'_>,
excess: i32,
) { ... }
}Required Methods§
fn dimension_unstable(&self, degree: i32, excess: i32) -> usize
fn multiply_basis_elements_unstable( &self, result: FpSliceMut<'_>, coeff: u32, r_degree: i32, r_index: usize, s_degree: i32, s_index: usize, excess: i32, )
Provided Methods§
Sourcefn multiply_basis_element_by_element_unstable(
&self,
result: FpSliceMut<'_>,
coeff: u32,
r_degree: i32,
r_idx: usize,
s_degree: i32,
s: FpSlice<'_>,
excess: i32,
)
fn multiply_basis_element_by_element_unstable( &self, result: FpSliceMut<'_>, coeff: u32, r_degree: i32, r_idx: usize, s_degree: i32, s: FpSlice<'_>, excess: i32, )
Computes the product r * s of a basis element r and a general element s, and adds the
result to result.
Neither result nor s must be aligned.
Sourcefn multiply_element_by_basis_element_unstable(
&self,
result: FpSliceMut<'_>,
coeff: u32,
r_degree: i32,
r: FpSlice<'_>,
s_degree: i32,
s_idx: usize,
excess: i32,
)
fn multiply_element_by_basis_element_unstable( &self, result: FpSliceMut<'_>, coeff: u32, r_degree: i32, r: FpSlice<'_>, s_degree: i32, s_idx: usize, excess: i32, )
Computes the product r * s of a general element r and a basis element s, and adds the
result to result.
Neither result nor r must be aligned.
Sourcefn multiply_element_by_element_unstable(
&self,
result: FpSliceMut<'_>,
coeff: u32,
r_degree: i32,
r: FpSlice<'_>,
s_degree: i32,
s: FpSlice<'_>,
excess: i32,
)
fn multiply_element_by_element_unstable( &self, result: FpSliceMut<'_>, coeff: u32, r_degree: i32, r: FpSlice<'_>, s_degree: i32, s: FpSlice<'_>, excess: i32, )
Computes the product r * s of two general elements, and adds the
result to result.
Neither result, s, nor r must be aligned.