I have an expression for which I want ot find values of n that will make it an integer. Here is the expression:

(n^(3/2) - n)^(1/3)
n^(1/2) - n^(1/3)

I want to find all positive values of n for which the above expression will be an Integer. Can I do that with Mathematica?


  • 1
    $\begingroup$ You can use "Reduce: "Reduce[{b == (n^(3/2) - n)^(1/3), n > 0, b [Element] Integers}]". This gives an answer using a root object. This is a shorthand for the roots of the enclose polynomial. If you want to transform it to radicals, you give to output to: "ToRadicals" $\endgroup$ – Daniel Huber Nov 8 '20 at 20:00

Using InverseFunction

f := Evaluate@InverseFunction[(#^(3/2) - #)^(1/3) &]

a = N[f /@ Range[3]]

{2.1479, 5.73535, 11.3776}

The above values will produce integers, e.g.

(#^(3/2) - #)^(1/3) & /@ a

{1., 2., 3.}

  • $\begingroup$ Instead of f := Evaluate@InverseFunction[... you could simply write f = InverseFunction[.... $\endgroup$ – Roman Nov 8 '20 at 21:05
  • $\begingroup$ @Roman Ah, yes. With Set rather than SetDelayed. $\endgroup$ – Chris Degnen Nov 8 '20 at 21:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.