#12215: Memleak in UniqueRepresentation, @cached_method
-------------------------+--------------------------------------------------
   Reporter:  vbraun     |          Owner:  rlm                                 
      
       Type:  defect     |         Status:  needs_work                          
      
   Priority:  major      |      Milestone:  sage-4.8                            
      
  Component:  memleak    |       Keywords:  UniqueRepresentation cached_method 
caching
Work_issues:  fix it...  |       Upstream:  N/A                                 
      
   Reviewer:             |         Author:  Simon King                          
      
     Merged:             |   Dependencies:  #11115 #11900                       
      
-------------------------+--------------------------------------------------

Comment(by SimonKing):

 I inserted some print statement into the `register_isomorphism` method of
 symmetric functions. I found that with ''or'' without the patch, the
 isomorphisms are registered both during initialisation of the
 `JackPolynomialsP` ''and'' before raising an element to a power for the
 first time:
 {{{
 sage: P = JackPolynomialsP(QQ,1)
 registering Symmetric Function Algebra over Rational Field, Monomial
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Elementary symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Monomial
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Schur symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Power
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Schur symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Schur
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Homogeneous symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Elementary
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Power symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Schur
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Elementary symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Homogeneous
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Elementary symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Monomial
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Homogeneous symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Power
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Homogeneous symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Power
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Elementary symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Homogeneous
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Power symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Elementary
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Monomial symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Elementary
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Schur symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Schur
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Monomial symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Elementary
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Homogeneous symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Monomial
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Power symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Homogeneous
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Monomial symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Schur
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Power symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Homogeneous
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Schur symmetric functions as basis
 registering Symmetric Function Algebra over Rational Field, Power
 symmetric functions as basis  TO  Symmetric Function Algebra over Rational
 Field, Monomial symmetric functions as basis
 sage: p = P([2,1])
 sage: p^2
 registering Symmetric Function Algebra over Integer Ring, Monomial
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Elementary symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Monomial
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Schur symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Power symmetric
 functions as basis  TO  Symmetric Function Algebra over Integer Ring,
 Schur symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Schur symmetric
 functions as basis  TO  Symmetric Function Algebra over Integer Ring,
 Homogeneous symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Elementary
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Power symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Schur symmetric
 functions as basis  TO  Symmetric Function Algebra over Integer Ring,
 Elementary symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Homogeneous
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Elementary symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Monomial
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Homogeneous symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Power symmetric
 functions as basis  TO  Symmetric Function Algebra over Integer Ring,
 Homogeneous symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Power symmetric
 functions as basis  TO  Symmetric Function Algebra over Integer Ring,
 Elementary symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Homogeneous
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Power symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Elementary
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Monomial symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Elementary
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Schur symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Schur symmetric
 functions as basis  TO  Symmetric Function Algebra over Integer Ring,
 Monomial symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Elementary
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Homogeneous symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Monomial
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Power symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Homogeneous
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Monomial symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Schur symmetric
 functions as basis  TO  Symmetric Function Algebra over Integer Ring,
 Power symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Homogeneous
 symmetric functions as basis  TO  Symmetric Function Algebra over Integer
 Ring, Schur symmetric functions as basis
 registering Symmetric Function Algebra over Integer Ring, Power symmetric
 functions as basis  TO  Symmetric Function Algebra over Integer Ring,
 Monomial symmetric functions as basis
 JackP[2, 2, 1, 1] + JackP[2, 2, 2] + JackP[3, 1, 1, 1] + 2*JackP[3, 2, 1]
 + JackP[3, 3] + JackP[4, 1, 1] + JackP[4, 2]
 sage: p^2
 JackP[2, 2, 1, 1] + JackP[2, 2, 2] + JackP[3, 1, 1, 1] + 2*JackP[3, 2, 1]
 + JackP[3, 3] + JackP[4, 1, 1] + JackP[4, 2]
 }}}

 This gives rise to some questions:

  * Why are the symmetric functions registering the isomorphisms ''twice'',
 even without my patch?
  * Why is there no error without my patch? There should be, since double-
 registration of a coercion is illegal!

 I guess, the best solution would be to address the first question:
 Registering the same thing twice is a waste or resources anyway.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12215#comment:47>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to