Ask Your Question
1

Eigenvalues of matrix with entries in polynomial ring

asked 2012-03-16 14:05:50 -0500

Anne Schilling gravatar image

updated 2012-03-16 15:36:47 -0500

kcrisman gravatar image

Hi!

I just wrote some code on the sage-combinat queue which computes a matrix with entries in a polynomial ring R = PolynomialRing(QQ, 'x', n)

sage: P = Poset(([1,2,3,4], [[1,3],[1,4],[2,3]]), linear_extension = True)
sage: L = P.linear_extensions()
sage: M = L.markov_chain_transition_matrix(labeling = 'source')
sage: M
[-x0 - x1 - x2            x3       x0 + x3             0             0]
[      x1 + x2 -x0 - x1 - x3             0            x1             0]
[            0            x1      -x0 - x3             0            x1]
[            0            x0             0 -x0 - x1 - x2       x0 + x3]
[           x0             0             0       x0 + x2 -x0 - x1 - x3]
sage: M.eigenvalues()
---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call last)

/Applications/sage-5.0.beta7/devel/sage-combinat/sage/combinat/posets/<ipython console> in <module>()

/Applications/sage-5.0.beta7/local/lib/python2.7/site-packages/sage/matrix/matrix2.so in sage.matrix.matrix2.Matrix.eigenvalues (sage/matrix/matrix2.c:26415)()

/Applications/sage-5.0.beta7/local/lib/python2.7/site-packages/sage/matrix/matrix2.so in sage.matrix.matrix2.Matrix.fcp (sage/matrix/matrix2.c:11089)()

/Applications/sage-5.0.beta7/local/lib/python2.7/site-packages/sage/rings/polynomial/polynomial_element.so in sage.rings.polynomial.polynomial_element.Polynomial.factor (sage/rings/polynomial/polynomial_element.c:22655)()

NotImplementedError:

Is it possible to compute this some other way or is this just not yet implemented (which would surprise me!).

Thanks,

Anne

edit retag flag offensive close delete

Comments

Just for future reference, this site uses markdown for markup, so indenting everything four spaces makes it look like code (or highlighting and using the "code" button).

kcrisman ( 2012-03-16 15:37:55 -0500 )edit

2 answers

Sort by ยป oldest newest most voted
2

answered 2012-03-16 18:34:02 -0500

DSM gravatar image

Could you change the ring to SR as a workaround?

sage: R = PolynomialRing(QQ, 'x', 2)
sage: x = R.gens()
sage: M = matrix([[x[0],x[1]],[x[1],x[0]]])
sage: M.eigenvalues()
---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call last)
[...]
sage: M.change_ring(SR)
[x0 x1]
[x1 x0]
sage: M.change_ring(SR).eigenvalues()
[x0 - x1, x0 + x1]
edit flag offensive delete publish link more

Comments

Thank you! That works! Am I allowed to use this in sage source code?

Anne Schilling ( 2012-03-18 07:25:35 -0500 )edit

If by that you mean for stuff getting committed to mainline, I'm not sure. Seems a little hacky, and it feels like there should be a way to do it while staying purely in some polynomial ring.

DSM ( 2012-03-18 12:42:31 -0500 )edit
0

answered 2012-03-16 17:19:00 -0500

Anne Schilling gravatar image

Here is an easier example with the question:

sage: R = PolynomialRing(QQ, 'x', 2)
sage: x = R.gens()
sage: M = matrix([[x[0],x[1]],[x[1],x[0]]])
sage: M.eigenvalues()
---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call last)

/Applications/sage-5.0.beta7/devel/sage-combinat/sage/combinat/posets/<ipython console> in <module>()

/Applications/sage-5.0.beta7/local/lib/python2.7/site-packages/sage/matrix   /matrix2.so in sage.matrix.matrix2.Matrix.eigenvalues (sage/matrix/matrix2.c:26415)()

/Applications/sage-5.0.beta7/local/lib/python2.7/site-packages/sage/matrix/matrix2.so in sage.matrix.matrix2.Matrix.fcp (sage/matrix/matrix2.c:11089)()

/Applications/sage-5.0.beta7/local/lib/python2.7/site-packages/sage/rings/polynomial/polynomial_element.so in      sage.rings.polynomial.polynomial_element.Polynomial.factor (sage/rings/polynomial/polynomial_element.c:22655)()

NotImplementedError:
edit flag offensive delete publish link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

[hide preview]

Stats

Asked: 2012-03-16 14:05:50 -0500

Seen: 125 times

Last updated: Mar 16 '12