Changeset 3a2b8e in git


Ignore:
Timestamp:
Jul 8, 2010, 1:23:22 PM (14 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
9e0e2b17065d5df1e5fd0e0059aa8561bde06570
Parents:
ba2be44979686110791931e4de45f3c9a46b1383
Message:
pfister: non-global orderings

git-svn-id: file:///usr/local/Singular/svn/trunk@12957 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/primdec.lib

    rba2be4 r3a2b8e  
    18881888}
    18891889///////////////////////////////////////////////////////////////////////////////
     1890static proc cleanPrimaryS(list l)
     1891{
     1892   int i;
     1893   list lh;
     1894   for(i=1;i<=size(l);i++)
     1895   {
     1896      l[i][2]=std(l[i][2]);
     1897      if(deg(l[i][2][1])>0)
     1898      {
     1899         lh[size(lh)+1]=l[i];
     1900      }
     1901   }
     1902   return(lh);
     1903}
     1904
     1905///////////////////////////////////////////////////////////////////////////////
     1906static proc cleanPrimeS(list l)
     1907{
     1908   int i;
     1909   list lh;
     1910   for(i=1;i<=size(l);i++)
     1911   {
     1912      l[i]=std(l[i]);
     1913      if(deg(l[i][1])>0)
     1914      {
     1915         lh[size(lh)+1]=l[i];
     1916      }
     1917   }
     1918   return(lh);
     1919}
     1920
     1921///////////////////////////////////////////////////////////////////////////////
    18901922
    18911923
     
    23332365"
    23342366{
    2335   if(attrib(basering,"global")!=1)
    2336   {
    2337       ERROR(
    2338       "Not implemented for this ordering, please change to global ordering."
    2339       );
    2340   }
    23412367  intvec op ;
    23422368  def  P = basering;
     2369  if(attrib(basering,"global")!=1)
     2370  {
     2371     def PG=changeord("dp");
     2372     setring PG;
     2373     ideal i=imap(P,i);
     2374     list L=equidim(i,#);
     2375     setring P;
     2376     list L=imap(PG,L);
     2377     L=cleanPrimeS(L);
     2378     return(L);
     2379  }
    23432380  list eq;
    23442381  intvec w;
     
    24392476"
    24402477{
     2478  def  P = basering;
    24412479  if(attrib(basering,"global")!=1)
    24422480  {
    2443       ERROR(
    2444       "Not implemented for this ordering, please change to global ordering."
    2445       );
    2446   }
    2447   def  P = basering;
     2481     def PG=changeord("dp");
     2482     setring PG;
     2483     ideal i=imap(P,i);
     2484     ideal L=equidimMax(i);
     2485     setring P;
     2486     ideal L=imap(PG,L);
     2487     L=std(L);
     2488     return(L);
     2489  }
    24482490  ideal eq;
    24492491  intvec w;
     
    38403882"
    38413883{
    3842    if(attrib(basering,"global")!=1)
    3843    {
    3844       ERROR(
    3845       "Not implemented for this ordering, please change to global ordering."
    3846       );
    3847    }
    38483884   if((char(basering)<100)&&(char(basering)!=0))
    38493885   {
    38503886      "WARNING: The characteristic is too small, the result may be wrong";
    38513887   }
     3888   if(attrib(basering,"global")!=1)
     3889   {
     3890     def P=basering;
     3891     def PG=changeord("dp");
     3892     setring PG;
     3893     ideal i=imap(P,i);
     3894     ideal L=radicalEHV(i);
     3895     setring P;
     3896     ideal L=imap(PG,L);
     3897     L=std(L);
     3898     return(L);
     3899   }
     3900
    38523901   ideal J,I,I0,radI0,L,radI1,I2,radI2;
    38533902   int l,n;
     
    51155164   if(attrib(basering,"global")!=1)
    51165165   {
    5117       ERROR(
    5118       "Not implemented for this ordering, please change to global ordering."
    5119       );
     5166     def P=basering;
     5167     def PG=changeord("dp");
     5168     setring PG;
     5169     ideal i=imap(P,i);
     5170     list L=primdecGTZ(i);
     5171     setring P;
     5172     list L=imap(PG,L);
     5173     L=cleanPrimaryS(L);
     5174     return(L);
    51205175   }
    51215176   if(minpoly!=0)
     
    52845339   if(attrib(basering,"global")!=1)
    52855340   {
    5286       ERROR(
    5287       "Not implemented for this ordering, please change to global ordering."
    5288       );
     5341     def P=basering;
     5342     def PG=changeord("dp");
     5343     setring PG;
     5344     ideal i=imap(P,i);
     5345     list L=primdecSY(i,#);
     5346     setring P;
     5347     list L=imap(PG,L);
     5348     L=cleanPrimaryS(L);
     5349     return(L);
    52895350   }
     5351
    52905352   i=simplify(i,2);
    52915353   if ((i[1]==0)||(i[1]==1))
     
    53655427    }
    53665428  }
    5367 
    53685429  if(attrib(basering,"global")!=1)
    53695430  {
    5370     ERROR(
    5371       "Not implemented for this ordering, please change to global ordering."
    5372     );
    5373   }
     5431     def P=basering;
     5432     def PG=changeord("dp");
     5433     setring PG;
     5434     ideal i=imap(P,i);
     5435     list L=minAssGTZ(i,#);
     5436     setring P;
     5437     list L=imap(PG,L);
     5438     L=cleanPrimeS(L);
     5439     return(L);
     5440  }
     5441
    53745442  if(minpoly!=0)
    53755443  {
     
    54025470   if(attrib(basering,"global")!=1)
    54035471   {
    5404       ERROR(
    5405       "Not implemented for this ordering, please change to global ordering."
    5406       );
     5472     def P=basering;
     5473     def PG=changeord("dp");
     5474     setring PG;
     5475     ideal i=imap(P,i);
     5476     list L=minAssChar(i,#);
     5477     setring P;
     5478     list L=imap(PG,L);
     5479     L=cleanPrimeS(L);
     5480     return(L);
    54075481   }
     5482
    54085483   if (size(#)==1)
    54095484   { return(min_ass_prim_charsets(i,#[1])); }
     
    54295504"
    54305505{
    5431   if(attrib(basering,"global")!=1)
    5432   {
    5433      ERROR(
    5434      "Not implemented for this ordering, please change to global ordering."
    5435      );
    5436   }
     5506   if(attrib(basering,"global")!=1)
     5507   {
     5508     def P=basering;
     5509     def PG=changeord("dp");
     5510     setring PG;
     5511     ideal i=imap(P,i);
     5512     ideal L=equiRadical(i);
     5513     setring P;
     5514     ideal L=imap(PG,L);
     5515     L=std(L);
     5516     return(L);
     5517   }
     5518
    54375519  return(radical(i, 1));
    54385520}
     
    54635545"
    54645546{
    5465   dbprint(printlevel - voice, "Radical, version 2006.05.08");
    5466   if(attrib(basering,"global")!=1)
    5467   {
    5468     ERROR(
    5469      "Not implemented for this ordering, please change to global ordering."
    5470     );
    5471   }
     5547   dbprint(printlevel - voice, "Radical, version 2006.05.08");
     5548   if(attrib(basering,"global")!=1)
     5549   {
     5550     def P=basering;
     5551     def PG=changeord("dp");
     5552     setring PG;
     5553     ideal i=imap(P,i);
     5554     ideal L=radical(i,#);
     5555     setring P;
     5556     ideal L=imap(PG,L);
     5557     L=std(L);
     5558     return(L);
     5559   }
     5560
    54725561  if(size(i) == 0){return(ideal(0));}
    54735562  int j;
     
    62366325  if(attrib(basering,"global")!=1)
    62376326  {
    6238       ERROR(
    6239       "Not implemented for this ordering, please change to global ordering."
    6240       );
    6241   }
     6327     def P=basering;
     6328     def PG=changeord("dp");
     6329     setring PG;
     6330     ideal i=imap(P,i);
     6331     list L=prepareAss(i);
     6332     setring P;
     6333     list L=imap(PG,L);
     6334     L=cleanPrimeS(L);
     6335     return(L);
     6336  }
     6337
    62426338  ideal j=std(i);
    62436339  int cod=nvars(basering)-dim(j);
     
    62826378"
    62836379{
    6284   if(attrib(basering,"global")!=1)
    6285   {
    6286       ERROR(
    6287       "Not implemented for this ordering, please change to global ordering."
    6288       );
    6289   }
     6380   if(attrib(basering,"global")!=1)
     6381   {
     6382     def P=basering;
     6383     def PG=changeord("dp");
     6384     setring PG;
     6385     ideal i=imap(P,i);
     6386     ideal L=equidimMaxEHV(i);
     6387     setring P;
     6388     ideal L=imap(PG,L);
     6389     L=std(L);
     6390     return(L);
     6391   }
     6392
    62906393  ideal j=groebner(i);
    62916394  int cod=nvars(basering)-dim(j);
     
    63506453"
    63516454{
     6455  def R=basering;
    63526456  if(attrib(basering,"global")!=1)
    63536457  {
    6354     ERROR(
    6355     "Not implemented for this ordering, please change to global ordering."
    6356     );
    6357   }
    6358   def R=basering;
     6458     def PG=changeord("dp");
     6459     setring PG;
     6460     ideal i=imap(R,I);
     6461     list L=zerodec(i);
     6462     setring R;
     6463     list L=imap(PG,L);
     6464     L=cleanPrimeS(L);
     6465     return(L);
     6466  }
     6467
    63596468  poly q;
    63606469  int j,time;
Note: See TracChangeset for help on using the changeset viewer.