#19016: A more naive sage.structure.element.__hash__
-------------------------+-------------------------------------------------
Reporter: | Owner:
ncohen | Status: needs_work
Type: | Milestone: sage-duplicate/invalid/wontfix
defect | Resolution:
Priority: | Merged in:
blocker | Reviewers:
Component: misc | Work issues:
Keywords: | Commit:
Authors: | 754dc5794a1a7004c8844cf7cfb64220957c36a5
Nathann Cohen | Stopgaps:
Report Upstream: N/A |
Branch: |
u/ncohen/19016 |
Dependencies: |
-------------------------+-------------------------------------------------
Comment (by vdelecroix):
Replying to [comment:29 nbruin]:
> Replying to [comment:26 vdelecroix]:
> > I agree that they are related. But `__hash__` is problematic in other
situations and two of them are mentioned in #18246. Solving the FP group
problem will not solve everything as far as I understand it.
>
> Indeed, absolutely. And #18246 is now marked fixed. Another example is
(of course) SR -- another ring where equality and normal form are
impossible to resolve in general
> {{{
> sage: f=sin(x)^2
> sage: g=1-cos(x)^2
> sage: bool(f == g)
> True
> sage: hash(f) == hash(g)
> False
> }}}
> so, hopefully, with #18246 , the last command will lead to an error?
Sadly not
{{{
sage: f=sin(x)^2
sage: isinstance(f, sage.structure.element.Element)
True
}}}
`Element` does implement the `return hash(str(self))` behavior. So this
will incidentally be fixed with this ticket...
--
Ticket URL: <http://trac.sagemath.org/ticket/19016#comment:30>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" 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 http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.