On Thu, Nov 3, 2011 at 9:14 PM, Daniel Fischer
<daniel.is.fischer@googlemail.com> wrote:
> Examples:
>
> - The Gaussian integers Z[i] (units are 1,-1,i,-i; what would be the
> associated element of 5+7i ?)
> - Formal power series K[[x]] over a field (units are every series with
> nonzero constant coefficients),
This one has a fairly canonical representative for the classes of
associated series: X^n, where n is the index of the first nonzero
coefficient.
While this may seem "canonical" to a human eye, I would argue that it is rather ad-hoc.
(for example a change of variable x -> (x+1) will change the notion of "canonical"?)
> - and probably just about any other interesting structure satisfying the
> definition.
>
> A function "a -> a" in a type class suggests to me a canonical mapping.
> Thus, I would
> advocate against putting associate/unit into such a Euclidean domain
> type class.
True, but I think we'd need such functions to have well-defined "canonical"
factorisations for example.
But if there is no canonical factorization, why do we want to force it?
A normalized factorization in an algebra system is something between
a design choice and an implementation detail, from my viewpoint.
> (Independently of this, I also find the name "unit" a bit confusing for
> something
> which would be better called "an associated unit";
Except here, where 'associated' means 'equal up to multiplication with a
unit'.
Actually, this seems to be consistent to me :)
(since two "associated units" differ by a multiplication with a unit)
Balazs