Trait polenta::PolentaUtilExt
source · pub trait PolentaUtilExt<F: IsField> {
// Required methods
fn poly_as_felt(poly: &Polynomial<FieldElement<F>>) -> FieldElement<F>;
fn felt_as_poly(felt: FieldElement<F>) -> Polynomial<FieldElement<F>>;
fn poly_print(poly: &Polynomial<FieldElement<F>>) -> String;
fn poly_pow(
poly: &Polynomial<FieldElement<F>>,
exponent: FieldElement<F>,
) -> Polynomial<FieldElement<F>>;
fn poly_is_zero(poly: &Polynomial<FieldElement<F>>) -> bool;
fn poly_from_bool(b: bool) -> Polynomial<FieldElement<F>>;
}Expand description
Several utilities related to polynomials and field elements used within Polenta.
Required Methods§
sourcefn poly_as_felt(poly: &Polynomial<FieldElement<F>>) -> FieldElement<F>
fn poly_as_felt(poly: &Polynomial<FieldElement<F>>) -> FieldElement<F>
Treats the given constants polynomial as a field element.
sourcefn felt_as_poly(felt: FieldElement<F>) -> Polynomial<FieldElement<F>>
fn felt_as_poly(felt: FieldElement<F>) -> Polynomial<FieldElement<F>>
Treats the given field element as a constant polynomial.
sourcefn poly_print(poly: &Polynomial<FieldElement<F>>) -> String
fn poly_print(poly: &Polynomial<FieldElement<F>>) -> String
Pretty-prints a given polynomial.
sourcefn poly_pow(
poly: &Polynomial<FieldElement<F>>,
exponent: FieldElement<F>,
) -> Polynomial<FieldElement<F>>
fn poly_pow( poly: &Polynomial<FieldElement<F>>, exponent: FieldElement<F>, ) -> Polynomial<FieldElement<F>>
Multiplies a polynomial with itself many times.
sourcefn poly_is_zero(poly: &Polynomial<FieldElement<F>>) -> bool
fn poly_is_zero(poly: &Polynomial<FieldElement<F>>) -> bool
Returns true if the given polynomial is a zero polynomial.
sourcefn poly_from_bool(b: bool) -> Polynomial<FieldElement<F>>
fn poly_from_bool(b: bool) -> Polynomial<FieldElement<F>>
Returns a polynomial representing the given boolean value, i.e. 1 for true and 0 for false.
Object Safety§
This trait is not object safe.