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

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