Home Online Manual
Top
Back: createQuotientGroup
Forward: printGroup
FastBack:
FastForward:
Up: multigrading_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.15.11.7 createTorsionFreeGroup

Procedure from library multigrading.lib (see multigrading_lib).

Usage:
createTorsionFreeGroup(S); S is an integer matrix

Purpose:
create the free subgroup generated by S within the
free Abelian group of rank nrows(S)

Return:
group

Example:
 
LIB "multigrading.lib";
// ----------- extreme case ------------ //
intmat S[1][3] =
1,  -1, 10;
// Torsion:
intmat L[1][1] =
0;
// The free subgroup generated by elements of S within Z^1
// can be constructed as follows:
// shortcut:
def G = createTorsionFreeGroup(S);
printGroup(G);
==> Generators: 
==>      1    -1    10
==> Relations: 
==>      0
// the general way:
def GG = createGroup(S, L); // (S+L)/L
printGroup(GG);
==> Generators: 
==>      1    -1    10
==> Relations: 
==>      0