[sage-devel] Re: fraction field hashes (ticket 1075)

2007-11-08 Thread Joel B. Mohler
On Thursday 08 November 2007 02:43, Martin Albrecht wrote: > > Hashing string is definitely one of the easiest ways to get a lot of > > semantics that we want ... i.e. agreement with '=='.  In all other > > respects, it seems like one of the most awful hash algorithms one could > > imagine.  Howev

[sage-devel] Re: fraction field hashes (ticket 1075)

2007-11-07 Thread Martin Albrecht
On Wednesday 07 November 2007, Joel B. Mohler wrote: > On Wednesday 07 November 2007 10:42, Martin Albrecht wrote: > > > Sorry to reply to myself when I should have done my research > > > beforehand. The issue is that multivariate polynomials over ZZ override > > > hash and hash the tuple of tuple

[sage-devel] Re: fraction field hashes (ticket 1075)

2007-11-07 Thread Joel B. Mohler
On Wednesday 07 November 2007 10:42, Martin Albrecht wrote: > > Sorry to reply to myself when I should have done my research beforehand. > > The issue is that multivariate polynomials over ZZ override hash and hash > > the tuple of tuples of exponents (roughly speaking).  This is in stark > > cont

[sage-devel] Re: fraction field hashes (ticket 1075)

2007-11-07 Thread Martin Albrecht
> Sorry to reply to myself when I should have done my research beforehand. > The issue is that multivariate polynomials over ZZ override hash and hash > the tuple of tuples of exponents (roughly speaking). This is in stark > contrast to the default implementation that hashes the string > represe

[sage-devel] Re: fraction field hashes (ticket 1075)

2007-11-07 Thread Joel B. Mohler
On Wednesday 07 November 2007 08:33, Joel B. Mohler wrote: > I'd like some confirmation for the patch at > http://www.sagetrac.org/sage_trac/ticket/1075 > The purpose of the patch is to fix the lack of substitution in the > following code snippet (it also has other ramifications in similar > conte

[sage-devel] Re: fraction field hashes (ticket 1075)

2007-11-07 Thread John Cremona
Joel's posting led me to read the old thread (March '07, before I joined the sage lists) which was very interesting. python wants hashes to be defined so that x==y implies hash(x)==hash(y), while Sage wants to be clever mathematically so that "x==y" is possible for a lot of complicated reasons.