constructive-algebra-0.1.6: A library of constructive algebra.

Algebra.Structures.GCDDomain

Description

Greatest common divisor (GCD) domains.

GCD domains are integral domains in which every pair of nonzero elements have a greatest common divisor. They can also be characterized as non-Noetherian analogues of unique factorization domains.

Synopsis

Documentation

class IntegralDomain a => GCDDomain a whereSource

GCD domains

Methods

gcd' :: a -> a -> (a, a, a)Source

Compute gcd(a,b) = (g,x,y) such that g = gcd(a,b) and a = gx b = gy and a, b /= 0

Instances

propGCDDomain :: (Eq a, GCDDomain a, Arbitrary a, Show a) => a -> a -> a -> PropertySource

Specification of GCD domains. They are integral domains in which every pair of nonzero elements have a greatest common divisor.