pub struct SparseOps { /* private fields */ }Expand description
Sparse polynomial operations engine.
Implementations§
Source§impl SparseOps
impl SparseOps
Sourcepub fn new(config: SparseConfig) -> Self
pub fn new(config: SparseConfig) -> Self
Create a new sparse operations engine.
Sourcepub fn default_config() -> Self
pub fn default_config() -> Self
Create with default configuration.
Sourcepub fn is_sparse(&self, p: &Polynomial) -> bool
pub fn is_sparse(&self, p: &Polynomial) -> bool
Check if a polynomial is sparse according to configuration.
Sourcepub fn sparse_mul(&mut self, p: &Polynomial, q: &Polynomial) -> Polynomial
pub fn sparse_mul(&mut self, p: &Polynomial, q: &Polynomial) -> Polynomial
Sparse multiplication optimized for very sparse inputs.
Sourcepub fn sparse_add(&mut self, p: &Polynomial, q: &Polynomial) -> Polynomial
pub fn sparse_add(&mut self, p: &Polynomial, q: &Polynomial) -> Polynomial
Sparse addition that skips zero terms.
Sourcepub fn sparse_eval(
&mut self,
p: &Polynomial,
point: &FxHashMap<Var, BigRational>,
) -> BigRational
pub fn sparse_eval( &mut self, p: &Polynomial, point: &FxHashMap<Var, BigRational>, ) -> BigRational
Evaluate sparse polynomial at given point (hash-based).
Sourcepub fn estimate_memory(&self, p: &Polynomial) -> usize
pub fn estimate_memory(&self, p: &Polynomial) -> usize
Estimate memory usage of polynomial.
Sourcepub fn estimate_savings(&mut self, p: &Polynomial) -> usize
pub fn estimate_savings(&mut self, p: &Polynomial) -> usize
Estimate memory savings from sparse representation.
Sourcepub fn stats(&self) -> &SparseStats
pub fn stats(&self) -> &SparseStats
Get statistics.
Sourcepub fn reset_stats(&mut self)
pub fn reset_stats(&mut self)
Reset statistics.
Auto Trait Implementations§
impl Freeze for SparseOps
impl RefUnwindSafe for SparseOps
impl Send for SparseOps
impl Sync for SparseOps
impl Unpin for SparseOps
impl UnsafeUnpin for SparseOps
impl UnwindSafe for SparseOps
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