Changeset 36861ed in git for Singular/LIB/standard.lib


Ignore:
Timestamp:
Aug 23, 1999, 4:17:43 PM (25 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'spielwiese', '5b153614cbc72bfa198d75b1e9e33dab2645d9fe')
Children:
b246466423ee9ef5d330e1d138b3953a2067fac1
Parents:
c860e90753c9024c2f5903c409b379238aaa2e55
Message:
* hannes: res recognizes option(prot)


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

Legend:

Unmodified
Added
Removed
  • Singular/LIB/standard.lib

    rc860e9 r36861ed  
    1 // $Id: standard.lib,v 1.41 1999-08-19 13:49:39 obachman Exp $
     1// $Id: standard.lib,v 1.42 1999-08-23 14:17:35 Singular Exp $
    22//////////////////////////////////////////////////////////////////////////////
    33
    4 version="$Id: standard.lib,v 1.41 1999-08-19 13:49:39 obachman Exp $";
     4version="$Id: standard.lib,v 1.42 1999-08-23 14:17:35 Singular Exp $";
    55info="
    66LIBRARY: standard.lib   PROCEDURES WHICH ARE ALWAYS LOADED AT START-UP
     
    441441@code{nres} (classical method using syzygies) , see @ref{nres}.
    442442
    443 @item @strong{homogenous ideals and k == 0:} 
     443@item @strong{homogenous ideals and k == 0:}
    444444@code{lres} (La'Scala's method), see @ref{lres}.
    445445
    446 @item @strong{not minimized resolution,  and, homogenous input with k != 0 or local rings:} 
     446@item @strong{not minimized resolution,  and, homogenous input with k != 0 or local rings:}
    447447@code{sres} (Schreyer's method), see @ref{sres}.
    448448
    449 @item @strong{all other inputs:} 
     449@item @strong{all other inputs:}
    450450@code{mres} (classical method), see @ref{mres}.
    451451@end table
     
    466466@c ref
    467467"
    468 {         
     468{
    469469   def P=basering;
    470470   if (size(#) < 2)
     
    472472     ERROR("res: need at least two arguments: ideal/module, int");
    473473   }
    474    
     474
    475475   def m=#[1]; //the ideal or module
    476476   int i=#[2]; //the length of the resolution
    477477   if (i< 0) { i=0;}
    478      
     478
    479479   string varstr_P = varstr(P);
    480480
    481    
     481   int p_opt;
     482   string s_opt = option();
     483   // set p_opt, if option(prot) is set
     484   if (find(s_opt, "prot"))
     485   {
     486     p_opt = 1;
     487   }
     488
    482489   if(size(ideal(basering)) > 0)
    483490   {
    484491     // the quick hack for qrings - seems to fit most needs
    485492     // (lres is not implemented for qrings, sres is not so efficient)
     493     if (p_opt) { "using nres";}
    486494     return(nres(m,i));
    487495   }
     
    493501      {
    494502        //LaScala for the homogeneous case and i == 0
     503        if (p_opt) { "using lres";}
    495504        re=lres(m,i);
    496505        if(size(#)>2)
     
    503512        if(size(#)>2)
    504513        {
     514          if (p_opt) { "using mres";}
    505515          re=mres(m,i);
    506516        }
    507517        else
    508518        {
     519          if (p_opt) { "using sres";}
    509520          re=sres(std(m),i);
    510521        }
     
    520531      execute(ri);
    521532      def m=imap(P,m);
     533      if (p_opt) { "using mres in another ring";}
    522534      list re=mres(m,i);
    523535      setring P;
     
    535547      def m=imap(P,m);
    536548      m=std(m);
     549      if (p_opt) { "using sres in another ring";}
    537550      list re=sres(m,i);
    538551      setring P;
     
    546559   execute(ri);
    547560   def m=imap(P,m);
     561    if (p_opt) { "using mres in another ring";}
    548562   list re=mres(m,i);
    549563   setring P;
Note: See TracChangeset for help on using the changeset viewer.