#14608: Symbolic functions break the __hash__ contract
-----------------------------+----------------------------------------------
       Reporter:  vbraun     |         Owner:  burcin   
           Type:  defect     |        Status:  new      
       Priority:  major      |     Milestone:  sage-5.10
      Component:  symbolics  |    Resolution:           
       Keywords:             |   Work issues:           
Report Upstream:  N/A        |     Reviewers:           
        Authors:             |     Merged in:           
   Dependencies:             |      Stopgaps:           
-----------------------------+----------------------------------------------

Comment (by vdelecroix):

 Within Sage it is impossible to satisfy "equal objects must have the same
 hash if they are hashable" because equality is too laxist.
 {{{
 sage: RIF(2) == 2
 True
 sage: hash(RIF(2))
 6400019251
 sage: hash(2)
 2
 }}}
 Or
 {{{
 sage: bool(pi == RR(pi))
 True
 sage: hash(pi)
 2650685528
 sage: hash(RR(pi))
 1826823505
 }}}
 You can not hope to solve this problem with one ticket (because the
 Symbolic ring contains all Sage objects) !

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/14608#comment:1>
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?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to