Concept

PolynomialTraits_d::Permute

Definition

This AdaptableFunctor permutes the variables of the given polynomial with respect to a permutation σ, that is, each monomial xiei will be mapped to the monomial xσ(i)ei. 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 x0 x2, x1 x0, x2 x1 and x3 x3. In this case the iterator range should contain the sequence [2,0,1,3].

Refines

AdaptableFunctor
CopyConstructible
DefaultConstructible

Types

typedef PolynomialTraits_d::Polynomial_d
result_type;

Operations

Operations

template<class Input_iterator>
result_type fo ( 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)
Precondition: std::iterator_traits< InputIterator >::value_type is convertible to int.
Precondition: The iterator range contains each value in {0, ,d-1} exactly once.

See Also

Polynomial_d
PolynomialTraits_d