Which CAS use multiple representations for mathematical objects?

Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
4 replies · 1K views
TL;DR
How do various computer algebra systems compare with respect to keeping multiple representations of the same mathematical object?
How do various computer algebra systems (CAS) compare with respect to keeping multiple representations of the same mathematical object?

For example, a polynomial could be represented by a list of coefficients, or a list of roots, or a list of factors with some factors non-linear. One design for a CAS would be to allow different ways to construct a mathematical object but only use a single data structure for it. For example, a CAS might allow polynomials to be constructed by a function that took factors as the input, but the only data kept for the polynomial might be the list of coefficients. An alternative method would be to keep multiple representations of the same mathematical object in the data for that object. Then algorithms on mathematical objects would need procedures to decide which representations to use.
 
Physics news on Phys.org
I'm not sure what you're looking for exactly but did find this article about syntax trees for holding math expressions in a nominal CAS:

https://www.math.wpi.edu/IQP/BVCalcHist/calc5.html
 
I think you would only ever store a polynomial as a list of coefficients; factoring it is the same as finding roots, and for degree >= 5 that is analytically impossible.

I think the trick comes in knowing that [itex]p \in \mathbb{R}[x][/itex] and [itex](\mathbb{C} \to \mathbb{R} : t \mapsto p(t))[/itex] are in some sense the same object.
 
Last edited:
Stephen Tashi said:
I'm curious whether this is true for polynomials in several variables.

I don't think it is. But the fact that it holds in one variable is a reason not to represent a polynomial as either a list of roots or a list of factors.