Re: [sage-devel] Re: How to proceed to reduce Sage's memory leaking?

2012-11-03 Thread Francois Bissey
On 04/11/12 13:06, Volker Braun wrote: > You make it sound like there is just not enough doctesting coverage. The > Sage doctests generally do not generate a lot of parents in one go. > Maybe its just that the coverage of this use case needs to be improved? > E.g. create a list of thousands of pare

Re: [sage-devel] Re: How to proceed to reduce Sage's memory leaking?

2012-11-03 Thread Volker Braun
You make it sound like there is just not enough doctesting coverage. The Sage doctests generally do not generate a lot of parents in one go. Maybe its just that the coverage of this use case needs to be improved? E.g. create a list of thousands of parents, delete random subset, garbage collect,

Re: [sage-devel] Re: How to proceed to reduce Sage's memory leaking?

2012-11-03 Thread Jeroen Demeyer
On 2012-11-04 00:18, Volker Braun wrote: > I'd say talk to Jeroen to make collectable parents a priority for one > release. For example, lets have 5.5 as a the release where we add the > collectable parents. Push out a beta1 with these patches, then we'll > have a month during Jeroen's holiday wher

[sage-devel] Re: references on equation solver and polyhedron building

2012-11-03 Thread Volker Braun
Polyhedron uses the double description algorithm. Its exponential in the worst case, but often much better. Solve uses matrix inversion for linear systems, I guess. On Saturday, November 3, 2012 6:36:21 PM UTC, tvn wrote: > > Hi, I use 'solve' and Polyhedron in Sage for my research and would

[sage-devel] Re: How to proceed to reduce Sage's memory leaking?

2012-11-03 Thread Volker Braun
I'd say talk to Jeroen to make collectable parents a priority for one release. For example, lets have 5.5 as a the release where we add the collectable parents. Push out a beta1 with these patches, then we'll have a month during Jeroen's holiday where we can check any other tickets. No other ti

[sage-devel] Re: How to proceed to reduce Sage's memory leaking?

2012-11-03 Thread Travis Scrimshaw
Here are my thoughts on the matter, but I'm not an expert on the innerworkings of sage, so please forgive/tell me if this is already done/impossible. I propose limiting the size of the cache of parents and keep track of the references of parents. Thus parents with the fewest references should b

Re: [sage-devel] How to proceed to reduce Sage's memory leaking?

2012-11-03 Thread Jeroen Demeyer
Let me add to this that the bugs revealed by these tickets are often quite complex. These are hard to debug, both for Nils Bruin and Simon King working on the ticket, and for me as release manager. For example, I remember in the past two seemingly unrelated tickets which together caused a bug, bu

[sage-devel] How to proceed to reduce Sage's memory leaking?

2012-11-03 Thread Nils Bruin
Presently, Sage has a significant memory leak issue: Uniqueness of parents is currently guaranteed by keeping them in memory permanently.This prevents many computational strategies that are otherwise perfectly legitimate, but require the construction of, for instance, many finite fields and/or poly

[sage-devel] references on equation solver and polyhedron building

2012-11-03 Thread tvn
Hi, I use 'solve' and Polyhedron in Sage for my research and would like to know some details about these these. Is standard Guassian elimination used in 'solve' or some other more optimized algorithms ? What algorithm (and complexity) is used to construct the polyhedron from a set of vertice

[sage-devel] Re: Groups and ParentWithGens vs. Parent

2012-11-03 Thread Simon King
Hi Volker, On 2012-11-02, Volker Braun wrote: > --=_Part_681_27110033.1351894239886 > Content-Type: text/plain; charset=ISO-8859-1 > > Is there any Parent that has generators in Sage? Yes, all have. That's to say, sage.structure.parent.Parent provides the infrastructure for generators. Jus

[sage-devel] Re: coercion and subclasses

2012-11-03 Thread Jason Grout
On 11/3/12 11:01 AM, Volker Braun wrote: Isn't this the real issue: def is_VectorSpaceMorphism(x): return isinstance(x, VectorSpaceMorphism) With the category stuff the correct check is whether VectorSpaceMorphism in x.__class__.__mro__. Is there a better way to express this? Whats the ...

[sage-devel] Re: coercion and subclasses

2012-11-03 Thread Volker Braun
Isn't this the real issue: def is_VectorSpaceMorphism(x): return isinstance(x, VectorSpaceMorphism) With the category stuff the correct check is whether VectorSpaceMorphism in x.__class__.__mro__. Is there a better way to express this? Whats the ..._with_category class if I want an isinstan

[sage-devel] Re: coercion and subclasses

2012-11-03 Thread Jason Grout
On 11/3/12 9:56 AM, Jason Grout wrote: sage: phi = (ZZ^2).hom(matrix(ZZ,2,[1..4])) sage: h = (RR^2).hom(matrix(RR, 2, [1..4])) sage: type(phi.parent()) sage.modules.free_module_homspace.FreeModuleHomspace_with_category sage: type(h.parent()) sage.modules.vector_space_homspace.VectorSpaceHomspace_

[sage-devel] Re: coercion and subclasses

2012-11-03 Thread Jason Grout
On 11/3/12 9:33 AM, Volker Braun wrote: On Saturday, November 3, 2012 1:53:24 PM UTC, jason wrote: sage: h = linear_transformation(RR^2, RR^2, matrix(RR, [[0, 1], [2, 3]])) sage: h*3 #works fine This does not involve coercion. h.__mul__(3) figures out that 3 is scalar multiplicatio

[sage-devel] Re: coercion and subclasses

2012-11-03 Thread Volker Braun
On Saturday, November 3, 2012 1:53:24 PM UTC, jason wrote: > sage: h = linear_transformation(RR^2, RR^2, matrix(RR, [[0, 1], [2, 3]])) > sage: h*3 #works fine > This does not involve coercion. h.__mul__(3) figures out that 3 is scalar multiplication and handles it. sage: 3*h #doesn't work >

[sage-devel] coercion and subclasses

2012-11-03 Thread Jason Grout
Jim Heffron pointed out this problem with vector space morphisms: sage: h = linear_transformation(RR^2, RR^2, matrix(RR, [[0, 1], [2, 3]])) sage: h*3 #works fine Vector space morphism represented by the matrix: [0.000 3.00] [ 6.00 9.00] Domain: Ve