# EUCLIDIAN Namespace Reference

## Detailed Description

Module for Euclidean ring.

## Functions

template<class R>
void div_rem (R &q, R &a, const R &b)
template<class R>
void pseudo_div_rem (R &q, R &a, const R &b)
template<class Poly>
void prem (const Poly &f, const Poly &g, Poly &q, Poly &r)
template<class Poly>
Poly prem (const Poly &f, const Poly &g, Poly &q)
template<class Poly>
Poly prem (const Poly &f, const Poly &g)
template<class Poly>
Poly pquo (const Poly &f, const Poly &g)
template<class R>
void div_pseudorem0 (R &q, R &a, const R &b)

## Function Documentation

template<class R>
 void EUCLIDIAN::div_rem ( R & q, R & a, const R & b )

Quotient and remainder of `a` by `b`. The polynomial `a` is modified. At the end of the computation, it is equal to the remainder in the euclidean division. The type `R` should provide a `degree` function and a direct access operator.

Definition at line 25 of file EUCLIDIAN.h.

References degree().

template<class Poly>
 Poly EUCLIDIAN::pquo ( const Poly & f, const Poly & g )

Pseudo quotient and remainder of `f` by `g`. Returns the pseudo quotient.

Definition at line 120 of file EUCLIDIAN.h.

References degree().

template<class Poly>
 Poly EUCLIDIAN::prem ( const Poly & f, const Poly & g )

Pseudo quotient and remainder of `f` by `g`. Returns the pseudo remainder.

Definition at line 104 of file EUCLIDIAN.h.

References degree().

template<class Poly>
 Poly EUCLIDIAN::prem ( const Poly & f, const Poly & g, Poly & q )

Pseudo quotient and remainder of `f` by `g`. Returns the pseudo remainder, while `q` holds the pseudo quotient.

Definition at line 87 of file EUCLIDIAN.h.

References degree().

template<class Poly>
 void EUCLIDIAN::prem ( const Poly & f, const Poly & g, Poly & q, Poly & r )

Pseudo quotient and remainder of `f` by `g`. At the end of the computation, `q` is equal to pseudo quotient and `r` is equal to the remainder in the euclidean division.

Definition at line 70 of file EUCLIDIAN.h.

References degree().

Referenced by sturmseq::init().

template<class R>
 void EUCLIDIAN::pseudo_div_rem ( R & q, R & a, const R & b )

Pseudo quotient and remainder of `a` by `b`. The polynomial `a` is modified. At the end of the computation, it is equal to the remainder in the euclidean division. The type `R` should provide a `degree` function and a direct access operator.

Definition at line 48 of file EUCLIDIAN.h.

References degree().

SYNAPS DOCUMENTATION