pub struct AdemBasisElement {
pub degree: i32,
pub bocksteins: u32,
pub ps: Vec<u32>,
pub p_or_sq: bool,
}Expand description
An Adem basis element for the Steenrod algebra.
To encode an element $$ \beta^{\varepsilon_0} P^{i_0} \beta^{\varepsilon_1} P^{i_1} \cdots \beta^{\varepsilon_n} P^{i_n} \beta^{\varepsilon_{n+1}}, $$ we set $$ \begin{aligned} \mathtt{ps} &= [i_0, i_1, \ldots, i_n] \\ \mathtt{bocksteins} &= 000\cdots0\varepsilon_{n+1} \varepsilon_n \cdots \varepsilon_0 \end{aligned} $$
Fields§
§degree: i32The degree of the element.
bocksteins: u32A bitset of which $\beta$ Bocksteins are in the element’s decomposition.
ps: Vec<u32>A list of which Steenrod powers are in the element’s decompositions.
p_or_sq: boolWhether to denote the generators as powers $P^i$ or squares $Sq^i$ when using string formatting;
true denotes the former.
Implementations§
Source§impl AdemBasisElement
impl AdemBasisElement
Sourcefn iter_filtered(&self) -> impl Iterator<Item = PorBockstein> + '_
fn iter_filtered(&self) -> impl Iterator<Item = PorBockstein> + '_
Returns an iterator over the element’s decomposition.
This returns alternating Bocksteins and Ps, but skipping any
\beta^0 factors.
fn excess(&self, p: ValidPrime) -> u32
Trait Implementations§
Source§impl Clone for AdemBasisElement
impl Clone for AdemBasisElement
Source§fn clone(&self) -> AdemBasisElement
fn clone(&self) -> AdemBasisElement
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AdemBasisElement
impl Debug for AdemBasisElement
Source§impl Display for AdemBasisElement
impl Display for AdemBasisElement
Source§impl Hash for AdemBasisElement
impl Hash for AdemBasisElement
Source§impl PartialEq for AdemBasisElement
impl PartialEq for AdemBasisElement
impl Eq for AdemBasisElement
Auto Trait Implementations§
impl Freeze for AdemBasisElement
impl RefUnwindSafe for AdemBasisElement
impl Send for AdemBasisElement
impl Sync for AdemBasisElement
impl Unpin for AdemBasisElement
impl UnwindSafe for AdemBasisElement
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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>
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>
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