pub struct SegreClass {
pub coefficients: BTreeMap<Partition, i64>,
pub grassmannian: (usize, usize),
}Expand description
Segre class: the formal inverse of the total Chern class.
If c(E) = 1 + c_1 + c_2 + … is the total Chern class, then s(E) = c(E)^{-1} = 1 - c_1 + (c_1^2 - c_2) - …
Fields§
§coefficients: BTreeMap<Partition, i64>Expansion in the Schubert basis
grassmannian: (usize, usize)Grassmannian parameters
Implementations§
Source§impl SegreClass
impl SegreClass
Sourcepub fn from_chern(csm: &CSMClass) -> Self
pub fn from_chern(csm: &CSMClass) -> Self
Compute Segre class from a CSM (Chern) class by formal inversion.
s = c^{-1} in the ring of Schubert classes.
§Contract
ensures: s · c == identity (in the Schubert ring, up to truncation)Sourcepub fn excess_intersection(&self, excess_dim: usize) -> i64
pub fn excess_intersection(&self, excess_dim: usize) -> i64
Compute excess intersection number using Segre class.
When the intersection is not transverse (excess dimension > 0), the corrected intersection number is:
corrected = ∫ s_excess(N) ∩ [X ∩ Y]§Contract
ensures: result == sum of Segre coefficients at codimension excess_dimTrait Implementations§
Source§impl Clone for SegreClass
impl Clone for SegreClass
Source§fn clone(&self) -> SegreClass
fn clone(&self) -> SegreClass
Returns a duplicate 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 Debug for SegreClass
impl Debug for SegreClass
Source§impl PartialEq for SegreClass
impl PartialEq for SegreClass
impl Eq for SegreClass
impl StructuralPartialEq for SegreClass
Auto Trait Implementations§
impl Freeze for SegreClass
impl RefUnwindSafe for SegreClass
impl Send for SegreClass
impl Sync for SegreClass
impl Unpin for SegreClass
impl UnsafeUnpin for SegreClass
impl UnwindSafe for SegreClass
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