Opened 8 years ago

Closed 8 years ago

#672 closed bug (fixed)

memory leak in "quotient"

Reported by: ren Owned by: somebody
Priority: critical Milestone: 4-1-0 and higher
Component: dontKnow Version: 4-0-1
Keywords: Cc:

Description

running the following lines of code

ring r=integer,(t,x(1..4)),ws(1,-1,-11,-3,-19);
ideal I = 3,
x(1)^2-t*x(1)*x(2),
t*x(2)*x(3)*x(4);
ideal M = t*x(1)*x(2)*x(3)*x(4);

for (int i=0; i<100; i++)
{
  memory(0);
  ideal IquotM = quotient(I,M);
  kill IquotM;
}

yields

                     SINGULAR                                 /  Development
 A Computer Algebra System for Polynomial Computations       /   version 4.0.0
                                                           0<
 by: W. Decker, G.-M. Greuel, G. Pfister, H. Schoenemann     \   Dec 2013
FB Mathematik der Universitaet, D-67653 Kaiserslautern        \
// ** executing /home/ren/Sources/Singular/LIB/.singularrc
> ring r=integer,(t,x(1..4)),ws(1,-1,-11,-3,-19);
> ideal I = 3,
. x(1)^2-t*x(1)*x(2),
. t*x(2)*x(3)*x(4);
> ideal M = t*x(1)*x(2)*x(3)*x(4);
> 
. for (int i=0; i<100; i++)
. {
.   memory(0);
.   ideal IquotM = quotient(I,M);
.   kill IquotM;
. }
218576
236072
236328
236584
236840
237096
237352
...

Change History (3)

comment:1 Changed 8 years ago by hannes

a simpler example (showing: not a problem of the ordering, not of quotient):

ring r=integer,(t,x(1..4)),ds;
ideal I = 3t,
x(1)^2-t*x(1)*x(2),
t*x(2)*x(3)*x(4);
for (int i=0; i<100; i++)
{
  memory(0);
  ideal IquotM = std(I);
  kill IquotM;
}

comment:2 Changed 8 years ago by hannes

even simpler:

ring r=integer,(x,y),ds;
ideal I = 3,
x^2-x*y;
for (int i=0; i<100; i++)
{
  memory(0);
  ideal IquotM = std(I);
  kill IquotM;
}

comment:3 Changed 8 years ago by hannes

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.