I've been trying to understand why FullSimplify
is giving a condition that is implied by the assumptions (otherwise the set is empty). However, I couldn't understand why:
Clear["Global`*"]
l[v_] := v;
q[\[Beta]_, v_] := (\[Beta] - n*c) /(1 + (l[v] + n^2)*c);
Assuming[a > 0 && \[Beta] > 0 && c > 0 && v > 0 && n > 0 &&
c < (\[Beta]*n - 1)/(l[v] + n^2*(a + 1)),
FullSimplify@Reduce[D[q[\[Beta], v], v] < 0]]
It yields:
c n < \[Beta]
The inequality is reversed if I reverse the inequality in the derivative, when I'd expect (reply to comment below explains why):
False
Any ideas about what could possibly be the problem?
FullSimplify@
part) that we're still seeing results that are not restricted by the specified assumptions. For example, we still get a $n < 0$ case in the results. I would also be curious to see what the proper way to impose the constraints in this situation is. As it is, it seems to be doing something likeSimplify[Sign[\!\( \*SubscriptBox[\(\[PartialD]\), \(v\)]\(q[\[Beta], v]\)\)], a > 0 && \[Beta] > 0 && c > 0 && v > 0 && n > 0]
$\endgroup$Reduce
andFullSimplify
is a way to incorporate them. OmittingFullSimplify
will cause the assumptions to be ignored (mathematica.stackexchange.com/questions/179820/…). It works, but in my case it didn't. I just figured out the reason. The maximum number of non-linear variables is set to 4 by default. Thus I had to increase it (mathematica.stackexchange.com/questions/245199/…) $\endgroup$