CGAL 4.8.2 - Polynomial
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
PolynomialTraits_d::Permute Concept Reference

Definition

This AdaptableFunctor permutes the variables of the given polynomial with respect to a permutation σ, that is, each monomial xeii will be mapped to the monomial xeiσ(i). The permutation σ is given by the iterator range of length PolynomialTraits_d::d, which is supposed to contain the second row of the permutation.

For instance, let p be a polynomial in 4 variables and it is intended to change the order of the variables such that x0x2, x1x0, x2x1 and x3x3. In this case the iterator range should contain the sequence [2,0,1,3].

Refines:

AdaptableFunctor

CopyConstructible

DefaultConstructible

See Also
Polynomial_d
PolynomialTraits_d

Types

typedef
PolynomialTraits_d::Polynomial_d 
result_type
 

Operations

template<class Input_iterator >
result_type operator() (PolynomialTraits_d::Polynomial_d p, Input_iterator begin, Input_iterator end)
 Returns p with interchanged variables as defined by the iterator range. More...
 

Member Function Documentation

template<class Input_iterator >
result_type PolynomialTraits_d::Permute::operator() ( PolynomialTraits_d::Polynomial_d  p,
Input_iterator  begin,
Input_iterator  end 
)

Returns p with interchanged variables as defined by the iterator range.

Precondition
(end-begin == PolynomialTraits_d::d)
std::iterator_traits< InputIterator >::value_type is convertible to int.
The iterator range contains each value in {0,,d1} exactly once.