Ask Your Question

Revision history [back]

The trick here is not to consider m_1, ... , m_n as symbols (elements of the symbolic ring), but as indeterminates of some polynomial ring, which is a genuine ring on which algebra works much better.

For example, with n=10, you can do:

sage: R = PolynomialRing(QQ,10,'m_')
sage: R
Multivariate Polynomial Ring in m_0, m_1, m_2, m_3, m_4, m_5, m_6, m_7, m_8, m_9 over Rational Field
sage: R.inject_variables()
Defining m_0, m_1, m_2, m_3, m_4, m_5, m_6, m_7, m_8, m_9

Could you try with this, and tell if it works (or provide precise code on where it blocks) ?

The A common trick here in such cases is not to consider m_1, ... , m_n as symbols (elements of the symbolic ring), but as indeterminates of some polynomial ring, which is a genuine ring on which algebra works much better.

For example, with n=10, you can do:

sage: R = PolynomialRing(QQ,10,'m_')
sage: R
Multivariate Polynomial Ring in m_0, m_1, m_2, m_3, m_4, m_5, m_6, m_7, m_8, m_9 over Rational Field
sage: R.inject_variables()
Defining m_0, m_1, m_2, m_3, m_4, m_5, m_6, m_7, m_8, m_9

Could you try with this, and tell if it works (or provide precise code on where it blocks) ?