Home Online Manual
Top
Back: inverse
Forward: inverse_L
FastBack:
FastForward:
Up: linalg_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.3.2.2 inverse_B

Procedure from library linalg.lib (see linalg_lib).

Usage:
inverse_B(A); A = square matrix

Return:
list Inv with
- Inv[1] = matrix I and
- Inv[2] = poly p
such that I*A = unitmat(n)*p;

Note:
p=1 if 1/det(A) is computable and p=det(A) if not;
the computation uses busadj.

Example:
 
LIB "linalg.lib";
ring r=0,(x,y),lp;
matrix A[3][3]=x,y,1,1,x2,y,x,6,0;
print(A);
==> x,y, 1,
==> 1,x2,y,
==> x,6, 0 
list Inv=inverse_B(A);
print(Inv[1]);
==> 6y,  -6,    x2-y2,
==> -xy, x,     xy-1, 
==> x3-6,-xy+6x,-x3+y 
print(Inv[2]);
==> x3-xy2+6xy-6
print(Inv[1]*A);
==> x3-xy2+6xy-6,0,           0,          
==> 0,           x3-xy2+6xy-6,0,          
==> 0,           0,           x3-xy2+6xy-6
See also: inverse; inverse_L.