# Revision history [back]

I don't have knowledge of the coding decisions in SAGE but I've got some math background that make the SAGE answer "better" than the real answer you expect. It has to do with the fact that the nth roots of unity form a group and some of the answers are generators for the group (primitive elements). That is, knowing a generator gets you all the answers. That's a bit technical, so look at the simpler problem x^4=1. There 4 answers: 1, -1, i, -i. The root i is primitive: i, i^2, i^3, i^4 gives i, -1, -i, 1; all the roots were found knowing i. This doesn't work with 1 since 1, 1^2, 1^3, 1^4 is always 1. SAGE has given you the primitive element needed to create all the answers.

I don't have knowledge of the coding decisions in SAGE but I've got some math background that make helps me to understand why the SAGE answer "better" than the real answer you expect. It expected. In math terms it has to do with the fact that the nth roots of unity form a group and some of the answers are generators for the group (primitive elements). That is, knowing a generator gets you all the answers. That's Okay, that's a bit technical, so look at the this simpler problem x^4=1. There 4 answers: 1, -1, i, -i. The root i is primitive: i, i^2, i^3, i^4 gives i, -1, -i, 1; all the roots were found knowing i. This doesn't work with 1 since 1, 1^2, 1^3, 1^4 is always 1. SAGE has given you the primitive element needed to create all the answers. Your answer -cuberoot(3) won't generate the other 2 answers as real number times real number is always a real number. The answer SAGE has given will.