\( \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.14.3 - Polynomial
PolynomialTraits_d::PseudoDivision Concept Reference

Definition

This AdaptableFunctor computes the pseudo division of two polynomials \( f\) and \( g\).

Given \( f\) and \( g \neq 0\) this functor computes quotient \( q\) and remainder \( r\) such that \( D \cdot f = g \cdot q + r\) and \( degree(r) < degree(g)\), where \( D = leading\_coefficient(g)^{max(0, degree(f)-degree(g)+1)}\)

This functor is useful if the regular division is not available, which is the case if PolynomialTraits_d::Coefficient_type is not a Field. Hence in general it is not possible to invert the leading coefficient of \( g\). Instead \( f\) is extended by \( D\) allowing integral divisions in the internal computation.

Refines:

AdaptableFunctor

CopyConstructible

DefaultConstructible

See also
Polynomial_d
PolynomialTraits_d
PolynomialTraits_d::PseudoDivision
PolynomialTraits_d::PseudoDivisionRemainder
PolynomialTraits_d::PseudoDivisionQuotient

Types

typedef void result_type
 

Operations

result_type operator() (PolynomialTraits_d::Polynomial_d f, PolynomialTraits_d::Polynomial_d g, PolynomialTraits_d::Polynomial_d &q, PolynomialTraits_d::Polynomial_d &r, PolynomialTraits_d::Coefficient_type &D)
 Computes the pseudo division with respect to the outermost variable \( x_{d-1}\).