pub trait MultivariatePoly<P>:
Debug
+ Send
+ Sync {
// Required methods
fn n_vars(&self) -> usize;
fn degree(&self) -> usize;
fn evaluate(&self, query: &[P]) -> Result<P, Error>;
fn binary_tower_level(&self) -> usize;
}Expand description
A multivariate polynomial over a binary tower field.
The definition MultivariatePoly is nearly identical to that of CompositionPolyOS, except that
MultivariatePoly is object safe, whereas CompositionPolyOS is not.
Required Methods§
Sourcefn evaluate(&self, query: &[P]) -> Result<P, Error>
fn evaluate(&self, query: &[P]) -> Result<P, Error>
Evaluate the polynomial at a point in the extension field.
Sourcefn binary_tower_level(&self) -> usize
fn binary_tower_level(&self) -> usize
Returns the maximum binary tower level of all constants in the arithmetic expression.