Cat::EuclideanDomain

Category of Euclidean domains

Description

`Cat::EuclideanDomain` represents the category of Euclidean domains.

A `Cat::EuclideanDomain` is a principal ideal domain with an "Euclidean degree" function `"euclideanDegree"` and operations `"quo"` and `"rem"` computing the Euclidean quotient and Euclidean remainder.

The Euclidean degree returns nonnegative integers such that for each non-zero x and y there exist s and r such that x = ys + r and either the Euclidean degree of r is less than that of s or r is zero.

In addition s is equal to `quo(x,y)` and r is equal to `rem(x,y)`.

expand all

Basic Methods

`euclideanDegree` — Return Euclidean degree

`euclideanDegree(x)`

`divide` — Division with remainder

`divide(x, y)`

Mathematical Methods

`_divide` — Exact division

`_divide(x, y)`

`gcd` — Greatest common divisor

`gcd(x, …)`

`gcdex` — Extended greatest common divisor

`gcdex(x, y)`

`idealGenerator` — Generator of finitely generated ideal

`idealGenerator(x, …)`

`quo` — Euclidean quotient

`quo(x, y)`

The default implementation provided here uses the basic method `"divide"`.

`rem` — Euclidean remainder

`rem(x, y)`

The default implementation provided here uses the basic method `"divide"`.