Skip to main content
edited body
Source Link

My overall goal is to use a division free algorithm to compute the nullspace of a matrix containing multivariate polynomials. For doing so, I believe, there is the method DivisionFreeRowReduction which can be also used for RowReduce. However, it seems to not actually do division free row reduction. Here are two examples:

M = {{x, x + y}, {y, 2*y}};
RowReduce[M, Method -> "DivisionFreeRowReduction"]

yields the identity matrix whereas one might expect something like $$ \begin{pmatrix} x & x+y \\ y & 2y\end{pmatrix} \to \begin{pmatrix} x & x+y \\ xy & 2xy\end{pmatrix} \to \begin{pmatrix} x & x+y \\ 0 & xy-2xy^2\end{pmatrix}.$$

The same is even true over the integres:

M2 = {{2, 3}, {34, 4}};
RowReduce[M2, Method -> "DivisionFreeRowReduction"]

yields the identity matrix, so it seems to divide.

What is going on? Why does the division free row reduction divide? How can you compute a nullspace using division free methods?

My overall goal is to use a division free algorithm to compute the nullspace of a matrix containing multivariate polynomials. For doing so, I believe, there is the method DivisionFreeRowReduction which can be also used for RowReduce. However, it seems to not actually do division free row reduction. Here are two examples:

M = {{x, x + y}, {y, 2*y}};
RowReduce[M, Method -> "DivisionFreeRowReduction"]

yields the identity matrix whereas one might expect something like $$ \begin{pmatrix} x & x+y \\ y & 2y\end{pmatrix} \to \begin{pmatrix} x & x+y \\ xy & 2xy\end{pmatrix} \to \begin{pmatrix} x & x+y \\ 0 & xy-2xy^2\end{pmatrix}.$$

The same is even true over the integres:

M2 = {{2, 3}, {3, 4}};
RowReduce[M2, Method -> "DivisionFreeRowReduction"]

yields the identity matrix, so it seems to divide.

What is going on? Why does the division free row reduction divide? How can you compute a nullspace using division free methods?

My overall goal is to use a division free algorithm to compute the nullspace of a matrix containing multivariate polynomials. For doing so, I believe, there is the method DivisionFreeRowReduction which can be also used for RowReduce. However, it seems to not actually do division free row reduction. Here are two examples:

M = {{x, x + y}, {y, 2*y}};
RowReduce[M, Method -> "DivisionFreeRowReduction"]

yields the identity matrix whereas one might expect something like $$ \begin{pmatrix} x & x+y \\ y & 2y\end{pmatrix} \to \begin{pmatrix} x & x+y \\ xy & 2xy\end{pmatrix} \to \begin{pmatrix} x & x+y \\ 0 & xy-2xy^2\end{pmatrix}.$$

The same is even true over the integres:

M2 = {{2, 3}, {4, 4}};
RowReduce[M2, Method -> "DivisionFreeRowReduction"]

yields the identity matrix, so it seems to divide.

What is going on? Why does the division free row reduction divide? How can you compute a nullspace using division free methods?

Source Link

DivisionFreeRowReduction Method for RowReduce

My overall goal is to use a division free algorithm to compute the nullspace of a matrix containing multivariate polynomials. For doing so, I believe, there is the method DivisionFreeRowReduction which can be also used for RowReduce. However, it seems to not actually do division free row reduction. Here are two examples:

M = {{x, x + y}, {y, 2*y}};
RowReduce[M, Method -> "DivisionFreeRowReduction"]

yields the identity matrix whereas one might expect something like $$ \begin{pmatrix} x & x+y \\ y & 2y\end{pmatrix} \to \begin{pmatrix} x & x+y \\ xy & 2xy\end{pmatrix} \to \begin{pmatrix} x & x+y \\ 0 & xy-2xy^2\end{pmatrix}.$$

The same is even true over the integres:

M2 = {{2, 3}, {3, 4}};
RowReduce[M2, Method -> "DivisionFreeRowReduction"]

yields the identity matrix, so it seems to divide.

What is going on? Why does the division free row reduction divide? How can you compute a nullspace using division free methods?