Top
Back: freemodule
Forward: frwalk
FastBack: Functions and system variables
FastForward: Control structures
Up: Functions
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

5.1.48 fres

Syntax:
fres ( ideal_expression/module_expression , int_expression , [ string_expression ])
Type:
resolution
Purpose:
computes a (not necessarily minimal) free resolution of the input ideal/module, using Schreyer's algorithm, see reference.
If the second argument is n > 0, then the resolution is computed up to step n. If it is 0, fres computes the whole resolution.
The optional third argument can be set to
  • "complete" (default) to compute the whole syzygy module in each step,
  • "frame" to compute only the so-called frame,
  • "extended frame" to compute only the first two terms of each generator w.r.t. the induced monomial ordering, or
  • "single module" to return only the frame of each module except the last one and to return the last module in its entirety. This option can be used to reduce the amount of memory needed for the computation.
Note:
The input ideal/module must be a standard basis.
Reference:
B. Erocal, O. Motsak, F.-O. Schreyer, A. Steenpass: Refined Algorithms to Compute Syzygies. J. Symb. Comput. 74 (2016), 308-327. http://arxiv.org/abs/1502.01654
Example:
 
  ring r = 0, (w,x,y,z), dp;
  ideal I = w2-xz, wx-yz, x2-wy, xy-z2, y2-wz;
  attrib(I, "isSB", 1);
  resolution s = fres(I, 0);
  s;
==>  1      5      6      2      
==> r <--  r <--  r <--  r
==> 
==> 0      1      2      3      
==> resolution not minimized yet
==> 
  print(betti(s, 0), "betti");
==>            0     1     2     3
==> ------------------------------
==>     0:     1     -     -     -
==>     1:     -     5     5     1
==>     2:     -     -     1     1
==> ------------------------------
==> total:     1     5     6     2
==> 
  list l = s;
  print(l[1]);
==> w2-xz,
==> wx-yz,
==> x2-wy,
==> xy-z2,
==> y2-wz
  print(l[2]);
==> -x,y, 0, -z,0, -y2+wz,
==> w, -x,-y,0, z, z2,    
==> -z,w, 0, -y,0, 0,     
==> 0, 0, w, x, -y,-yz,   
==> 0, 0, -z,-w,x, w2     
  print(l[3]);
==> 0, -y2+wz,
==> y, z2,    
==> -x,-wy,   
==> w, yz,    
==> -z,-w2,   
==> 1, x      
See Free resolution; minres; res; sres; syz.


Top Back: freemodule Forward: frwalk FastBack: Functions and system variables FastForward: Control structures Up: Functions Top: Singular Manual Contents: Table of Contents Index: Index About: About this document
            User manual for Singular version 4.3.1, 2022, generated by texi2html.