Singular Manual: createQuotientGroup

| #### D.15.17.6 createQuotientGroup Procedure from library `multigrading.lib` (see multigrading_lib). Usage: createGroup(L); L is an integer matrix Purpose: create the group of the form (I+L)/L, where I is the square identity matrix of size nrows(L) x nrows(L) Note: L specifies relations between free generators of Z^nrows(L) Return: group Example:
    LIB "multigrading.lib";
    intmat I[3][3] =
    1, 0, 0,
    0, 1, 0,
    0, 0, 1;
    intmat L[3][2] =
    1, 1,
    1, 3,
    1, 5;
    // The group Z^3 / L can be constructed as follows:
    // shortcut:
    def G = createQuotientGroup(L);
    printGroup(G);
    ==> Generators:
    ==>      1     0     0
    ==>      0     1     0
    ==>      0     0     1
    ==> Relations:
    ==>      1     1
    ==>      1     3
    ==>      1     5
    // the general way:
    def GG = createGroup(I, L); // (I+L)/L
    printGroup(GG);
    ==> Generators:
    ==>      1     0     0
    ==>      0     1     0
    ==>      0     0     1
    ==> Relations:
    ==>      1     1
    ==>      1     3
    ==>      1     5

User manual for Singular version 4-1-0, 2016, generated by texi2html.