oldk1331 wrote:
> 
> I'm not sure about FRAC:
> 
> The equality '=' is defined under canonicalUnitNormal,
> not Canonical.  Which Category should hash require?

Well, the conditions are 'S has GcdDomain' (for the
larger block) and 'S has canonicalUnitNormal'.  The
two conditions imply that representation of fractions
is canonical.  More precisely, Canonical says
'data structure' which means that also numerator
and denominator should have canonical representation.
As you can see, in interface part of fraction we have:

       if S has Canonical and S has GcdDomain and S has canonicalUnitNormal
           then Canonical

For equality and hash we do not need 'S has Canonical' because
equality (or hash) in S is supposed to handle any issues
related to representation.

> Also, for domains like EXPR INT, is it possible to
> implement hash?

I think it is possible, but the implementation is not
entirely obvious and possibly inefficient.  If you ask
if simple and efficient implementation of hash is possible
then probably no.

-- 
                              Waldek Hebisch

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to