Structure of rings with explicit units.
- class IntegralDomain a => ExplicitUnits a where
- propUnit :: (ExplicitUnits a, Eq a) => a -> Bool
- isUnit :: ExplicitUnits a => a -> Bool
- (%|) :: (ExplicitUnits a, GCDDomain a) => a -> a -> Bool
- (~=) :: (ExplicitUnits a, GCDDomain a) => a -> a -> Bool
Documentation
class IntegralDomain a => ExplicitUnits a whereSource
A ring has explicit units if there is a function that can test if an element is invertible and if this is the case give the inverse.
ExplicitUnits Z | |
ExplicitUnits Q | |
(ExplicitUnits a, Eq a) => ExplicitUnits (UPoly a x) |
propUnit :: (ExplicitUnits a, Eq a) => a -> BoolSource
isUnit :: ExplicitUnits a => a -> BoolSource
An element is a unit if it is invertible.
(%|) :: (ExplicitUnits a, GCDDomain a) => a -> a -> BoolSource
Decidable units is sufficient to decide divisibility in GCD domains.
(~=) :: (ExplicitUnits a, GCDDomain a) => a -> a -> BoolSource
Test for associatedness, i.e. a ~ b iff a | b /\ b | a.