|
CGAL 6.2 - Polynomial
|
This Functor substitutes all variables of a given multivariate PolynomialTraits_d::Polynomial_d \( p\) by the values given in the iterator range, where begin refers the value for the innermost variable. In contrast to PolynomialTraits_d::Substitute the given polynomial \( p\) is interpreted as a homogeneous polynomial. Hence the iterator range is required to be of length PolynomialTraits_d::d+1.
For instance the polynomial \( p(x_0,x_1) = x_0^2x_1^3+x_1^4\) is interpreted as the homogeneous polynomial \( p(x_0,x_1,w) = x_0^2x_1^3+x_1^4w^1\).
Types
Note that the result_type is the coercion type of the value type of the given iterator range and PolynomialTraits_d::Innermost_coefficient_type. In particular std::iterator_traits<Input_iterator>::value_type must be ExplicitInteroperable with PolynomialTraits_d::Innermost_coefficient_type. Hence, it can not be provided as a public type in advance.
Operations | |
| template<class Input_iterator > | |
| result_type | operator() (PolynomialTraits_d::Polynomial_d p, Input_iterator begin, Input_iterator end) |
| Substitutes each variable of \( p\) by the values given in the iterator range, where \( p\) is interpreted as a homogeneous polynomial in all variables. | |
| result_type PolynomialTraits_d::SubstituteHomogeneous::operator() | ( | PolynomialTraits_d::Polynomial_d | p, |
| Input_iterator | begin, | ||
| Input_iterator | end | ||
| ) |
Substitutes each variable of \( p\) by the values given in the iterator range, where \( p\) is interpreted as a homogeneous polynomial in all variables.
The begin iterator refers to the innermost variable \( x_0\).
end-begin == PolynomialTraits_d::d)+1