D.3.1.16 gauss_row
..................
Procedure from library matrix.lib (see matrix_lib).

Usage:
gauss_row(A [,e]); A matrix, e any type

Return:
- a matrix B, if called with one argument; B is the complete row-
reduced lower-triangular normal form of A if A is constant,
(resp. as far as this is possible if A is a polynomial matrix;
no division by polynomials).

 - a list L of two matrices, if called with two arguments;
L satisfies L[1] = L[2] * A with L[1] the row-reduced form of A
and L[2] the transformation matrix.

Note:
* This procedure just applies gauss_col to the transposed matrix.
The transformation matrix is obtained by applying lift.
This should be faster than the procedure rowred.

 * It should only be used with exact coefficient field (there is no
pivoting and rounding error treatment).

 * Parameters are allowed. Hence, if the entries of A are parameters,
B is the row-reduced form of A over the rational function field.

Example:
LIB "matrix.lib";
ring r=(0,a,b),(A,B,C),dp;
matrix m[6][8]=
0, 0,  b*B, -A,-4C,2A,0, 0,
2C,-4C,-A,B, 0,  B, 3B,AB,
0,a*A,  0, 0, B,  0, 0, 0,
0, 0,  0, 0, 2,  0, 0, 2A,
0, 0,  0, 0, 0,  0, 2b, A,
0, 0,  0, 0, 0,  0, 0, 2a;"";
==> 
print(gauss_row(m));"";
==> 0,  A,   0,       0,     0,0,0,0,
==> 0,  0,   0,       0,     1,0,0,0,
==> 2*C,-4*C,-A,      B,     0,B,0,0,
==> 0,  0,   (1/2b)*B,-1/2*A,0,A,0,0,
==> 0,  0,   0,       0,     0,0,1,0,
==> 0,  0,   0,       0,     0,0,0,1 
==> 
ring S=0,x,dp;
matrix A[4][5] =  3, 1,1,-1,2,
13, 8,6,-7,1,
14,10,6,-7,1,
7, 4,3,-3,3;
list L=gauss_row(A,1);
print(L[1]);
==> 1/2,-7/3,-19/6,5/6,
==> 1,  0,   0,    0,  
==> 0,  1,   0,    0,  
==> 0,  0,   1,    0,  
==> 0,  0,   0,    1   
print(L[2]);
==> 0,   -6,  -5,  1,   
==> -1/2,2/3, -1/6,-1/6,
==> 1/2, -5/3,-5/6,1/6, 
==> 0,   13/3,11/3,-1/3 
See also:
rowred.


<font size="-1">
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; User manual for <a href="http://www.singular.uni-kl.de/"><i>Singular</i></a> version 2-0-4, October 2002,
generated by <a href="http://www.gnu.org/software/texinfo/"><i>texi2html</i></a>.
</font>

</body>
</html>
