#17558: pickled function loses its args
----------------------------+------------------------
       Reporter:  wonder    |        Owner:
           Type:  defect    |       Status:  new
       Priority:  major     |    Milestone:  sage-6.4
      Component:  pickling  |   Resolution:
       Keywords:            |    Merged in:
        Authors:            |    Reviewers:
Report Upstream:  N/A       |  Work issues:
         Branch:            |       Commit:
   Dependencies:            |     Stopgaps:
----------------------------+------------------------

Comment (by nbruin):

 Replying to [comment:1 wonder]:
 > Possibly related to #17503 (pickled symbolic function breaks maxima
 interface)
 Indeed, I suspect it's related in the sense that pickling of symbolic
 expressions seems to rely entirely one Pynac serialization and doesn't
 take into account the properties of the python objects involved. In
 particular, the difference between a callable and a normal symbolic
 expression seems to lie entirely in the parent:
 {{{
 sage: var('u_0 u_1 x y')
 (u_0, u_1, x, y)
 sage: f2u = (1 - u_0).function(u_0, u_1)
 sage: parent(f2u)
 Callable function ring with arguments (u_0, u_1)
 sage: parent(f2u(u_0,u_1))
 Symbolic Ring
 sage: f2u(u_0,u_1).__reduce_ex__(2) == f2u.__reduce_ex__(2) #this confirms
 that they pickle to the same.
 True
 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/17558#comment:2>
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.

Reply via email to