carl  24.04
Computer ARithmetic Library
carl::detail_sign_variations Namespace Reference

Functions

template<typename Coefficient >
UnivariatePolynomial< Coefficient > reverse (UnivariatePolynomial< Coefficient > &&p)
 Reverses the order of the coefficients of this polynomial. More...
 
template<typename Coefficient >
UnivariatePolynomial< Coefficient > scale (UnivariatePolynomial< Coefficient > &&p, const Coefficient &factor)
 Scale the variable, i.e. More...
 
template<typename Coefficient >
UnivariatePolynomial< Coefficient > shift (const UnivariatePolynomial< Coefficient > &p, const Coefficient &a)
 Shift the variable by a, i.e. More...
 

Function Documentation

◆ reverse()

template<typename Coefficient >
UnivariatePolynomial<Coefficient> carl::detail_sign_variations::reverse ( UnivariatePolynomial< Coefficient > &&  p)

Reverses the order of the coefficients of this polynomial.

This method is meant to be called by signVariations only.

Runtime complexity:
O(n)

Definition at line 17 of file SignVariations.h.

Here is the caller graph for this function:

◆ scale()

template<typename Coefficient >
UnivariatePolynomial<Coefficient> carl::detail_sign_variations::scale ( UnivariatePolynomial< Coefficient > &&  p,
const Coefficient &  factor 
)

Scale the variable, i.e.

apply $ x \rightarrow factor * x $ This method is meant to be called by signVariations only.

Parameters
factorFactor to scale x.
Runtime complexity:
O(n)

Definition at line 30 of file SignVariations.h.

Here is the caller graph for this function:

◆ shift()

template<typename Coefficient >
UnivariatePolynomial<Coefficient> carl::detail_sign_variations::shift ( const UnivariatePolynomial< Coefficient > &  p,
const Coefficient &  a 
)

Shift the variable by a, i.e.

apply $ x \rightarrow x + a $ This method is meant to be called by signVariations only.

Parameters
aOffset to shift x.
Runtime complexity:
O(n^2)

Definition at line 47 of file SignVariations.h.

Here is the call graph for this function:
Here is the caller graph for this function: