#### 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

User manual for Singular version 4.4.1, 2025, generated by texi2html.