Message Boards Message Boards

0
|
1811 Views
|
7 Replies
|
1 Total Likes
View groups...
Share
Share this post:

Run SmithDecomposition on a matrix including variables

Posted 1 year ago

I try to do the following but failed:

In[699]:= {{-1, 0, 0, -(1/4) + 2 x}, {-1, 1, 1, 1/4 + x - z}, {0, -1, 
   0, 1/4 + y + z}, {0, 0, 0, 1}} // SmithDecomposition

During evaluation of In[699]:= SmithDecomposition::latm: Matrix contains an entry that is not rational.

Out[699]= SmithDecomposition[{{-1, 0, 0, -(1/4) + 2 x}, {-1, 1, 1, 
   1/4 + x - z}, {0, -1, 0, 1/4 + y + z}, {0, 0, 0, 1}}]

How can I run SmithDecomposition command by limiting the above variables in rational field?

Regards,
Zhao

POSTED BY: Hongyi Zhao
7 Replies
Posted 1 year ago

Are you saying that my problem itself is not covered by this method?

POSTED BY: Hongyi Zhao

Correct. There is no Smith decompostion defined for your matrix.

POSTED BY: Daniel Lichtblau

The Smith decomposition is defined over Euclidean domains such as the integers, or univariate polynomials over a field. Q[x,z] is not a Euclidean domain.

POSTED BY: Daniel Lichtblau
Posted 1 year ago

I looked at the examples provided in its documentation, but for my multivariable problem, there is still no solution/idea/clue.

POSTED BY: Hongyi Zhao
Posted 1 year ago

As its title indicted: Compute the Smith decomposition of a matrix of univariate polynomials, it only supports univariate polynomials, and my case involves a system of multivariate first-order polynomial equations.

POSTED BY: Hongyi Zhao

I believe you'd first have to define the Smith decomposition for that ring.

POSTED BY: Daniel Lichtblau

There is ResourceFunction["PolynomialSmithDecomposition"] that might do what you want. Check the reference page for details.

POSTED BY: Daniel Lichtblau
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract