Post a reply
Username:
Note:If not registered, provide any username. For more comfort, register here.
Subject:
Message body:
Enter your message here, it may contain no more than 60000 characters. 

Smilies
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
Font size:
Font colour
#000000 #000040 #000080 #0000BF #0000FF
#004000 #004040 #004080 #0040BF #0040FF
#008000 #008040 #008080 #0080BF #0080FF
#00BF00 #00BF40 #00BF80 #00BFBF #00BFFF
#00FF00 #00FF40 #00FF80 #00FFBF #00FFFF
#400000 #400040 #400080 #4000BF #4000FF
#404000 #404040 #404080 #4040BF #4040FF
#408000 #408040 #408080 #4080BF #4080FF
#40BF00 #40BF40 #40BF80 #40BFBF #40BFFF
#40FF00 #40FF40 #40FF80 #40FFBF #40FFFF
#800000 #800040 #800080 #8000BF #8000FF
#804000 #804040 #804080 #8040BF #8040FF
#808000 #808040 #808080 #8080BF #8080FF
#80BF00 #80BF40 #80BF80 #80BFBF #80BFFF
#80FF00 #80FF40 #80FF80 #80FFBF #80FFFF
#BF0000 #BF0040 #BF0080 #BF00BF #BF00FF
#BF4000 #BF4040 #BF4080 #BF40BF #BF40FF
#BF8000 #BF8040 #BF8080 #BF80BF #BF80FF
#BFBF00 #BFBF40 #BFBF80 #BFBFBF #BFBFFF
#BFFF00 #BFFF40 #BFFF80 #BFFFBF #BFFFFF
#FF0000 #FF0040 #FF0080 #FF00BF #FF00FF
#FF4000 #FF4040 #FF4080 #FF40BF #FF40FF
#FF8000 #FF8040 #FF8080 #FF80BF #FF80FF
#FFBF00 #FFBF40 #FFBF80 #FFBFBF #FFBFFF
#FFFF00 #FFFF40 #FFFF80 #FFFFBF #FFFFFF
Options:
BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON
Disable BBCode
Disable smilies
Do not automatically parse URLs
Confirmation of post
To prevent automated posts the board requires you to enter a confirmation code. The code is displayed in the image you should see below. If you are visually impaired or cannot otherwise read this code please contact the %sBoard Administrator%s.
Confirmation code:
Enter the code exactly as it appears. All letters are case insensitive, there is no zero.
   

Topic review - tracking normal to find out where/why it is hanging
Author Message
  Post subject:  Re: tracking normal to find out where/why it is hanging  Reply with quote
The example given above does not lead to an error.
But the development continues: now the new primdec.lib requires also
the new version of ring.lib for changeordTo.
Post Posted: Wed Dec 31, 2014 1:23 pm
  Post subject:  Re: tracking normal to find out where/why it is hanging  Reply with quote
Is there now a bug in primdec.lib with something such as changeordTo?
Try the example for given integralBasis to see if you get the same error I did.
Post Posted: Tue Dec 30, 2014 9:08 pm
  Post subject:  Re: tracking normal to find out where/why it is hanging  Reply with quote
True, the problem was that the simplification was using larger and larger maps
which led to huge computation times.
A re-ordering of the variables to consider for simplifications helps
(independend of characateristic).
Get a new primdec.lib from
[url]
https://github.com/Singular/Sources/blo ... rimdec.lib
[/url]
Post Posted: Thu Dec 11, 2014 5:59 pm
  Post subject:  Re: tracking normal to find out where/why it is hanging  Reply with quote
Well I tried ctrl-c,
then ctrl-c ctrl-c gives me only the choices
(a)bort current command, (q)uit, (r)estart Singular or (c)ontinue?

Then I tried this in Singular instead of ESingular to finally get the print backtrace(b) option.

But this seems to be characteristic independent.

ring r=0,(y,x),dp;
ideal i=y31+y12x17-2y6x27+x37;
list nor=normal(i);nor;

seems to hang at the same command

iwork=phi(iwork)
Post Posted: Tue Dec 09, 2014 5:00 pm
  Post subject:  Re: tracking normal to find out where/why it is hanging  Reply with quote
To find out where it is hanging: press ctrl-c and you will be asked
Code:
// ** Interrupt at cmd:`$INVALID$` in line:'        iwork=phi(iwork);'
abort after this command(a), abort immediately(r), print backtrace(b), continue(c) or quit Singular(q) ?

Answering with b presents the backtrace.
The problem here is that the routine simplifyIdeal from primdec.lib
does not work in char 2.
To fix it, substitute simplifyIdeal by
Code:
static proc simplifyIdeal(ideal i)
{
  ASSUME(1, hasFieldCoefficient(basering) );
  ASSUME(1, not isQuotientRing(basering) ) ;
  ASSUME(1, hasGlobalOrdering(basering) ) ;

  def r=basering;

  int j,k;
  map phi;
  poly p;

  ideal iwork=i;
  ideal imap1=maxideal(1);
  ideal imap2=maxideal(1);

  if (char(r)!=2)
  {
  for(j=1;j<=nvars(basering);j++)
  {
    for(k=1;k<=ncols(i);k++)
    {
      if(deg(iwork[k]/var(j))==0)
      {
        p=-1/leadcoef(iwork[k]/var(j))*iwork[k];
        imap1[j]=p+2*var(j);
        phi=r,imap1;
        iwork=phi(iwork);
        iwork=subst(iwork,var(j),0);
        iwork[k]=var(j);
        imap1=maxideal(1);
        imap2[j]=-p;
        break;
      }
    }
  }
  }
  return(iwork,imap2);
}
Post Posted: Tue Dec 09, 2014 11:45 am
  Post subject:  tracking normal to find out where/why it is hanging  Reply with quote
LIB "normal.lib";
ring r=2,(y,x),wp(37,31);
ideal i=y31+y12x17+x37;
list nor=normal(i);nor;

has been running for maybe 200 hours (3.7 GB),
on this problem that can almost be done by hand.
It takes my QthPower algorithm maybe 9 seconds in M2.
How can I rerun this and trace what is taking so much time?
[I assume it is a kernel computation, though it could be a GB computation.]
Post Posted: Mon Dec 08, 2014 9:36 pm


It is currently Fri May 13, 2022 11:04 am
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group