Loading web-font TeX/Math/Italic
 
CGAL 6.1 - Polynomial
All Classes Namespaces Functions Typedefs Pages
Loading...
Searching...
No Matches
PolynomialTraits_d::Permute Class Reference

#include <Concepts/PolynomialTraits_d--Permute.h>

Definition

This AdaptableFunctor permutes the variables of the given polynomial with respect to a permutation \sigma, that is, each monomial \prod x_i^{e_i} will be mapped to the monomial \prod x_{\sigma(i)}^{e_i}. The permutation \sigma 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 x_0 \mapsto x_2, x_1 \mapsto x_0, x_2 \mapsto x_1 and x_3 \mapsto x_3. 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.
 

Member Typedef Documentation

◆ result_type

Member Function Documentation

◆ operator()()

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,\dots,d-1\} exactly once.