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

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