Skip to main content
added 628 characters in body
Source Link

It used to be the default behavior that Mathematica would solve polynomials of degree 4 exactly. In the current version I have (12.2.2.0) it sometimes gives numerical answers. Is there a way to change the default behavior?

Example:

Solve[1 + 320*R + 51200*R^2 - 327680*R^3 + 1048576*R^4 == 0, R]

gives the a mess with numerical answers that I can't display, even though by tweaking if I do

Solve[S^4 + 320*R * S^3 + 51200*R^2 * S^2 - 327680*R^3 S + 1048576*R^4 == 0, R]

I get back

{{R -> 1/64 ((5 + 5 I) S - 3 (-1)^(1/4) Sqrt[6] S)}, {R -> 1/64 ((5 + 5 I) S + 3 (-1)^(1/4) Sqrt[6] S)}, {R -> 1/64 ((5 - 5 I) S - 3 (-1)^(3/4) Sqrt[6] S)}, {R -> 1/64 ((5 - 5 I) S + 3 (-1)^(3/4) Sqrt[6] S)}}

(which setting S=1 is what I wanted to get in the first place).

Edit: To be clear, here are some specific things I would like to be able to do:

  1. Permanently disable mathematica from displaying an exact number as a numerical complex number poorly rendered inside a box:

I don't know who imagined this would be desirable as a default.

  1. Have settings such as SetOptions[Solve, Quartics -> True] (suggested in the comments) as default settings. (More generally, I would prefer FullSimplify to leave things as radical expressions rather than convert them to the form above (or to a form Root).

another possibly related problem: Even working with what are supposed to be "exact" quantities, Mathematica repeatedly spits out error messages of the form "Unable to decide whether numeric quantity: [messy expression involving algebraic numbers] is equal to zero. This never happened in previous versions of mathematica.

It used to be the default behavior that Mathematica would solve polynomials of degree 4 exactly. In the current version I have (12.2.2.0) it sometimes gives numerical answers. Is there a way to change the default behavior?

Example:

Solve[1 + 320*R + 51200*R^2 - 327680*R^3 + 1048576*R^4 == 0, R]

gives the a mess with numerical answers that I can't display, even though by tweaking if I do

Solve[S^4 + 320*R * S^3 + 51200*R^2 * S^2 - 327680*R^3 S + 1048576*R^4 == 0, R]

I get back

{{R -> 1/64 ((5 + 5 I) S - 3 (-1)^(1/4) Sqrt[6] S)}, {R -> 1/64 ((5 + 5 I) S + 3 (-1)^(1/4) Sqrt[6] S)}, {R -> 1/64 ((5 - 5 I) S - 3 (-1)^(3/4) Sqrt[6] S)}, {R -> 1/64 ((5 - 5 I) S + 3 (-1)^(3/4) Sqrt[6] S)}}

(which setting S=1 is what I wanted to get in the first place).

It used to be the default behavior that Mathematica would solve polynomials of degree 4 exactly. In the current version I have (12.2.2.0) it sometimes gives numerical answers. Is there a way to change the default behavior?

Example:

Solve[1 + 320*R + 51200*R^2 - 327680*R^3 + 1048576*R^4 == 0, R]

gives the a mess with numerical answers that I can't display, even though by tweaking if I do

Solve[S^4 + 320*R * S^3 + 51200*R^2 * S^2 - 327680*R^3 S + 1048576*R^4 == 0, R]

I get back

{{R -> 1/64 ((5 + 5 I) S - 3 (-1)^(1/4) Sqrt[6] S)}, {R -> 1/64 ((5 + 5 I) S + 3 (-1)^(1/4) Sqrt[6] S)}, {R -> 1/64 ((5 - 5 I) S - 3 (-1)^(3/4) Sqrt[6] S)}, {R -> 1/64 ((5 - 5 I) S + 3 (-1)^(3/4) Sqrt[6] S)}}

(which setting S=1 is what I wanted to get in the first place).

Edit: To be clear, here are some specific things I would like to be able to do:

  1. Permanently disable mathematica from displaying an exact number as a numerical complex number poorly rendered inside a box:

I don't know who imagined this would be desirable as a default.

  1. Have settings such as SetOptions[Solve, Quartics -> True] (suggested in the comments) as default settings. (More generally, I would prefer FullSimplify to leave things as radical expressions rather than convert them to the form above (or to a form Root).

another possibly related problem: Even working with what are supposed to be "exact" quantities, Mathematica repeatedly spits out error messages of the form "Unable to decide whether numeric quantity: [messy expression involving algebraic numbers] is equal to zero. This never happened in previous versions of mathematica.

Source Link

Forcing mathematica to solve polynomials exactly

It used to be the default behavior that Mathematica would solve polynomials of degree 4 exactly. In the current version I have (12.2.2.0) it sometimes gives numerical answers. Is there a way to change the default behavior?

Example:

Solve[1 + 320*R + 51200*R^2 - 327680*R^3 + 1048576*R^4 == 0, R]

gives the a mess with numerical answers that I can't display, even though by tweaking if I do

Solve[S^4 + 320*R * S^3 + 51200*R^2 * S^2 - 327680*R^3 S + 1048576*R^4 == 0, R]

I get back

{{R -> 1/64 ((5 + 5 I) S - 3 (-1)^(1/4) Sqrt[6] S)}, {R -> 1/64 ((5 + 5 I) S + 3 (-1)^(1/4) Sqrt[6] S)}, {R -> 1/64 ((5 - 5 I) S - 3 (-1)^(3/4) Sqrt[6] S)}, {R -> 1/64 ((5 - 5 I) S + 3 (-1)^(3/4) Sqrt[6] S)}}

(which setting S=1 is what I wanted to get in the first place).