\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 4.12 - Polynomial
PolynomialTraits_d::MakeSquareFree Concept Reference

Definition

This AdaptableUnaryFunction computes the square-free part of a polynomial of type PolynomialTraits_d::Polynomial_d up to a constant factor.

A polynomial \( p\) can be factored into square-free and pairwise coprime non-constant factors \( g_i\) with multiplicities \( m_i\) and a constant factor \( a\), such that \( p = a \cdot g_1^{m_1} \cdot ... \cdot g_n^{m_n}\), where all \( g_i\) are canonicalized.

Given this decomposition, the square free part is defined as the product \( g_1 \cdot ... \cdot g_n\), which is computed by this functor.

Refines:

AdaptableUnaryFunction

CopyConstructible

DefaultConstructible

See also
Polynomial_d
PolynomialTraits_d
PolynomialTraits_d::Canonicalize
PolynomialTraits_d::SquareFreeFactorize
PolynomialTraits_d::IsSquareFree

Types

typedef PolynomialTraits_d::Polynomial_d result_type
 
typedef PolynomialTraits_d::Polynomial_d argument_type
 

Operations

result_type operator() (argument_type p)
 Returns the square-free part of \( p\).