pub struct SteenrodEvaluator {
pub adem: AdemAlgebra,
pub milnor: MilnorAlgebra,
}Fields§
§adem: AdemAlgebra§milnor: MilnorAlgebraImplementations§
Source§impl SteenrodEvaluator
impl SteenrodEvaluator
pub fn new(p: ValidPrime) -> Self
pub fn milnor_to_adem( &self, result: &mut FpVector, coeff: u32, degree: i32, input: &FpVector, )
pub fn adem_to_milnor( &self, result: &mut FpVector, coeff: u32, degree: i32, input: &FpVector, )
pub fn evaluate_algebra_adem(&self, input: &str) -> Result<(i32, FpVector)>
pub fn evaluate_algebra_milnor(&self, input: &str) -> Result<(i32, FpVector)>
Sourcepub fn evaluate_module_adem(
&self,
items: &str,
) -> Result<BTreeMap<String, (i32, FpVector)>>
pub fn evaluate_module_adem( &self, items: &str, ) -> Result<BTreeMap<String, (i32, FpVector)>>
fn prime(&self) -> ValidPrime
fn compute_basis(&self, degree: i32)
fn dimension(&self, degree: i32) -> usize
fn evaluate_algebra_node( &self, output_degree: Option<i32>, tree: AlgebraNode, ) -> Result<(i32, FpVector)>
fn evaluate_basis_element( &self, output_degree: Option<i32>, basis_elt: AlgebraBasisElt, ) -> Result<(i32, FpVector)>
Sourcefn adem_to_milnor_on_basis(
&self,
result: &mut FpVector,
coeff: u32,
degree: i32,
idx: usize,
)
fn adem_to_milnor_on_basis( &self, result: &mut FpVector, coeff: u32, degree: i32, idx: usize, )
Translate from the adem basis to the milnor basis, adding coeff times the result to result.
This uses the fact that that $P^n = P(n)$ and $Q_1 = \beta$ and multiplies out the admissible
monomial.
fn milnor_to_adem_on_basis( &self, result: &mut FpVector, coeff: u32, degree: i32, idx: usize, )
fn milnor_to_adem_on_basis_2( &self, result: &mut FpVector, coeff: u32, degree: i32, idx: usize, )
fn milnor_to_adem_on_basis_generic( &self, result: &mut FpVector, coeff: u32, degree: i32, idx: usize, )
Sourcefn adem_q(&self, result: &mut FpVector, coeff: u32, qi: u32)
fn adem_q(&self, result: &mut FpVector, coeff: u32, qi: u32)
Express $Q_{qi}$ in the adem basis.
fn evaluate_p_or_b_list(&self, list: &[BocksteinOrSq]) -> (i32, FpVector)
Auto Trait Implementations§
impl !Freeze for SteenrodEvaluator
impl RefUnwindSafe for SteenrodEvaluator
impl Send for SteenrodEvaluator
impl Sync for SteenrodEvaluator
impl Unpin for SteenrodEvaluator
impl !UnwindSafe for SteenrodEvaluator
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more