# Revision history [back]

since you assume(k>°), which is meaningless if k is not real, you implicitly assume that it is real:

sage: x, c, k = var('x, c, k')
....: assume(k > 0)
....:
sage: k.is_real()
True


the following failure of Maxima's solver is unrelated to this assumption. This weakness of Maxima's solver has been known for a long time.

This equation can nevertheless be solved with a little help from the user:

sage: (x**k==k/c).log().log_expand().solve(x)
[x == e^(-log(c)/k + log(k)/k)]


And further tidied:

sage: (x**k==k/c).log().log_expand().solve(x)[0].canonicalize_radical()
x == k^(1/k)/c^(1/k)


since you assume(k>°)assume(k>0), which is meaningless if k is not real, you implicitly assume that it is real:

sage: x, c, k = var('x, c, k')
....: assume(k > 0)
....:
sage: k.is_real()
True


the following failure of Maxima's solver is unrelated to this assumption. This weakness of Maxima's solver has been known for a long time.

This equation can nevertheless be solved with a little help from the user:

sage: (x**k==k/c).log().log_expand().solve(x)
[x == e^(-log(c)/k + log(k)/k)]


And further tidied:

sage: (x**k==k/c).log().log_expand().solve(x)[0].canonicalize_radical()
x == k^(1/k)/c^(1/k)