Home Online Manual
Top
Back: iostruct
Forward: controlExample
FastBack:
FastForward:
Up: control_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.11.2.13 findTorsion

Procedure from library control.lib (see control_lib).

Usage:
findTorsion(R, I); R an ideal/matrix/module, I an ideal

Return:
module

Purpose:
computes the Groebner basis of the submodule of R, annihilated by I

Note:
especially helpful, when I is the annihilator of the t(R) - the torsion submodule of R. In this case, the result is the explicit presentation of t(R) as the submodule of R

Example:
 
LIB "control.lib";
// Flexible Rod
ring A = 0,(D1, D2), (c,dp);
module R= [D1, -D1*D2, -1], [2*D1*D2, -D1-D1*D2^2, 0];
module RR = transpose(R);
list L = control(RR);
// here, we have the annihilator:
ideal LAnn = D1; // = L[10]
module Tr  = findTorsion(RR,LAnn);
print(RR);  // the module itself
==> D1,     -D1*D2,     -1,
==> 2*D1*D2,-D1*D2^2-D1,0  
print(Tr); // generators of the torsion submodule
==> 0,
==> 1