After working with Maple and Maxima for 15+ years, I'm working through the learning curve to add Mathematica to the arsenal. As part of the process, I'm porting very simple problems I assign to students from Maple and Maxima worksheets/notebooks to Mathematica (using Wolfroam 14.2).
This has largely been transparent, but this morning I ran into a 'solve' problem that puzzles me, since superficially its trivial.
First, I define a function (a variation of the logistic equation from classic population biology):
h[N_] = r*N*(1 - (N/K)^\[Alpha])
All I want students to do next is solve the equation wrt N. In other words, under what conditions for N does h[N]==0. This is trivial, since by inspection the solutions are N=0, and N=K.
Tried the following as an obvious startiing point, but it fails completely.
Solve[h[N]==0,N]
So, after much fussing about, realized that Mathematica needs to know simething about \Alpha. Specifically, that is positive and real. So, after a bit of reading, ended up trying things like
Reduce[N (1 - (N/K)^\[Alpha]) r == 0 && \[Alpha] >
0 && \[Alpha] \[Element] Reals && N \[Element] Reals, N]
and
Solve[N (1 - (N/K)^\[Alpha]) r == 0, N,
Assumptions -> {\[Alpha] > 0, \[Alpha] \[Element] Reals},
Domain -> Reals]
But these and all other attempts fail. Errors to the effect that 'this system cannot be solved with methods available to Reduce.' And so on. I tried multiple attempts with AIbots - like chatGPT using the Wolfram plugin -- but in the end, even they 'gave up', and said the solution would require 'manual intervention'.
So, other than the obvious question (how, in fact do I solve this equation, subject to the constraint that \Alpha>0 and is real, in Mathematica, such that N=0 and N=K are returned, why is Mathematica having trouble with this at all? Maple does it in a single Solve command, and Maxima does, after asking if \Alpha is integer or not? I'm simply curious as to why Mathematica is struggling with this simple expression, since the 'equations down the road' are far more compicated.
Many thanks in advance...