CGAL 5.4.4  Algebraic Kernel

Computes a square free factorization of an AlgebraicKernel_d_2::Polynomial_2
.
A polynomial \( p\) is factored into square free and pairwise coprime nonconstant factors \( q_i\) with multiplicities \( m_i\) and a constant factor \( c\), such that \( p = c \cdot q_1^{m_1} \cdot ... \cdot q_n^{m_n}\).
The factor multiplicity pairs \( <q_i,m_i>\) are written to the given output iterator. The constant factor \( c\) is not computed.
Operations  
template<class OutputIterator >  
OutputIterator  operator() (const AlgebraicKernel_d_2::Polynomial_2 &p, OutputIterator res) 
Copies in the output iterator the factors of a square free factorization of \( p\), with their multiplicity, as objects of type std::pair<AlgebraicKernel_d_2::Polynomial_2, AlgebraicKernel_d_2::Multiplicity_type> .  