Home Online Manual
Top
Back: ncdetection
Forward: isInvolution
FastBack: freegb_lib
FastForward: gkdim_lib
Up: involut_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document
7.7.9.0. involution
Procedure from library involut.lib (see involut_lib).

Usage:
involution(m, theta); m is a poly/vector/ideal/matrix/module, theta is a map

Return:
object of the same type as m

Purpose:
applies the involution, presented by theta to the object m

Theory:
for an involution theta and two polynomials a,b from the algebra,
theta(ab) = theta(b) theta(a); theta is linear with respect to the ground field

Note:
This is generalized "theta(m)" for data types unsupported by "map".

Example:
 
LIB "involut.lib";
ring R = 0,(x,d),dp;
def r = nc_algebra(1,1); setring r; // Weyl-Algebra
map F = r,x,-d;
F(F);  // should be maxideal(1) for an involution
==> _[1]=x
==> _[2]=d
poly f =  x*d^2+d;
poly If = involution(f,F);
f-If;
==> 0
poly g = x^2*d+2*x*d+3*x+7*d;
poly tg = -d*x^2-2*d*x+3*x-7*d;
poly Ig = involution(g,F);
tg-Ig;
==> 0
ideal I = f,g;
ideal II = involution(I,F);
II;
==> II[1]=xd2+d
==> II[2]=-x2d-2xd+x-7d-2
matrix(I) - involution(II,F);
==> _[1,1]=0
==> _[1,2]=0
module M  = [f,g,0],[g,0,x^2*d];
module IM = involution(M,F);
print(IM);
==> xd2+d,          -x2d-2xd+x-7d-2,
==> -x2d-2xd+x-7d-2,0,              
==> 0,              -x2d-2x         
print(matrix(M) - involution(IM,F));
==> 0,0,
==> 0,0,
==> 0,0